Rev 754 | Rev 756 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 754 | Rev 755 | ||
---|---|---|---|
Line 46... | Line 46... | ||
46 | 46 | ||
47 | #define UTEXT_ADDRESS UTEXT_ADDRESS_ARCH |
47 | #define UTEXT_ADDRESS UTEXT_ADDRESS_ARCH |
48 | #define USTACK_ADDRESS USTACK_ADDRESS_ARCH |
48 | #define USTACK_ADDRESS USTACK_ADDRESS_ARCH |
49 | #define UDATA_ADDRESS UDATA_ADDRESS_ARCH |
49 | #define UDATA_ADDRESS UDATA_ADDRESS_ARCH |
50 | 50 | ||
51 | #define AS_KERNEL (1<<0) /**< Kernel address space. */ |
51 | #define FLAG_AS_KERNEL (1<<0) /**< Kernel address space. */ |
52 | 52 | ||
53 | enum as_area_type { |
53 | enum as_area_type { |
54 | AS_AREA_TEXT = 1, AS_AREA_DATA, AS_AREA_STACK |
54 | AS_AREA_TEXT = 1, AS_AREA_DATA, AS_AREA_STACK |
55 | }; |
55 | }; |
56 | 56 | ||
Line 82... | Line 82... | ||
82 | link_t as_area_head; |
82 | link_t as_area_head; |
83 | pte_t *ptl0; |
83 | pte_t *ptl0; |
84 | asid_t asid; /**< Address space identifier. */ |
84 | asid_t asid; /**< Address space identifier. */ |
85 | }; |
85 | }; |
86 | 86 | ||
- | 87 | extern as_t *AS_KERNEL; |
|
- | 88 | ||
87 | extern as_t * as_create(pte_t *ptl0, int flags); |
89 | extern as_t *as_create(pte_t *ptl0, int flags); |
88 | extern as_area_t *as_area_create(as_t *as, as_area_type_t type, size_t size, __address base); |
90 | extern as_area_t *as_area_create(as_t *as, as_area_type_t type, size_t size, __address base); |
89 | extern void as_set_mapping(as_t *as, __address page, __address frame); |
91 | extern void as_set_mapping(as_t *as, __address page, __address frame); |
90 | extern int as_page_fault(__address page); |
92 | extern int as_page_fault(__address page); |
91 | extern void as_install(as_t *m); |
93 | extern void as_install(as_t *m); |
92 | 94 |