00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __LSEOS_MAIN_H__
00011 #define __LSEOS_MAIN_H__ 1
00012 #include <core.h>
00013
00014 #define MAP_TO_PT2(Vaddr, Paddr, Flags) \
00015 ((pt_entry_t *)vpt2)\
00016 [(pt_entry_t)((((Vaddr) & PG_FRAME) & PT_MASK) >> 12)] =\
00017 (Paddr) | ((Flags) & ~PG_FRAME);
00018
00019 #define UNMAP_FROM_PT2(Vaddr) \
00020 ((pt_entry_t *)vpt2)\
00021 [(pt_entry_t)((((Vaddr) & PG_FRAME) & PT_MASK) >> 12)] =\
00022 0;
00023
00024
00025 #ifdef __KERNEL__
00026
00027 void idle_main(void);
00028 void _start(t_kinfo *kinfo);
00029 void progopts_bool_assign(char *value, u_int32_t mask);
00030 void var_assign(char *name, char *value);
00031 void launch(int argc, char **argv);
00032 void tcb_dump(t_printf_fn printf_fn, char *s, struct s_tcb_full *tcb);
00033 void tcb_destroy(struct s_tcb_full *tcb);
00034 void as_destroy(struct s_as_full *as);
00035 void cswitch(void);
00036 #endif
00037 #endif