Rev 2071 | Rev 2089 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2071 | Rev 2081 | ||
|---|---|---|---|
| Line 57... | Line 57... | ||
| 57 | /** |
57 | /** |
| 58 | * For each possible kernel stack, structure |
58 | * For each possible kernel stack, structure |
| 59 | * of the following type will be placed at |
59 | * of the following type will be placed at |
| 60 | * the base address of the stack. |
60 | * the base address of the stack. |
| 61 | */ |
61 | */ |
| 62 | struct the { |
62 | typedef struct { |
| 63 | count_t preemption_disabled; /**< Preemption disabled counter. */ |
63 | count_t preemption_disabled; /**< Preemption disabled counter. */ |
| 64 | thread_t *thread; /**< Current thread. */ |
64 | thread_t *thread; /**< Current thread. */ |
| 65 | task_t *task; /**< Current task. */ |
65 | task_t *task; /**< Current task. */ |
| 66 | cpu_t *cpu; /**< Executing cpu. */ |
66 | cpu_t *cpu; /**< Executing cpu. */ |
| 67 | as_t *as; /**< Current address space. */ |
67 | as_t *as; /**< Current address space. */ |
| 68 | }; |
68 | } the_t; |
| 69 | 69 | ||
| 70 | #define THE ((the_t *)(get_stack_base())) |
70 | #define THE ((the_t *)(get_stack_base())) |
| 71 | 71 | ||
| 72 | extern void the_initialize(the_t *the); |
72 | extern void the_initialize(the_t *the); |
| 73 | extern void the_copy(the_t *src, the_t *dst); |
73 | extern void the_copy(the_t *src, the_t *dst); |