diff options
| author | Robert Morris <rtm@csail.mit.edu> | 2019-07-22 14:54:40 -0400 |
|---|---|---|
| committer | Robert Morris <rtm@csail.mit.edu> | 2019-07-22 14:54:40 -0400 |
| commit | 6b379e4707d693bb383f51647f66ec5471d26979 (patch) | |
| tree | 95d319b7b3f0747dce88ce1583483cca7c13784e /kernel/memlayout.h | |
| parent | 5eab649255edc210c1e05ae62d2cb6fd0f328d8c (diff) | |
| download | xv6-labs-2022-6b379e4707d693bb383f51647f66ec5471d26979.tar.xz xv6-labs-2022-6b379e4707d693bb383f51647f66ec5471d26979.zip | |
-MD and TRAPFRAME
Diffstat (limited to 'kernel/memlayout.h')
| -rw-r--r-- | kernel/memlayout.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/kernel/memlayout.h b/kernel/memlayout.h index ef5c1e1..c15e398 100644 --- a/kernel/memlayout.h +++ b/kernel/memlayout.h @@ -53,4 +53,15 @@ // map the trampoline page to the highest address, // in both user and kernel space. #define TRAMPOLINE (MAXVA - PGSIZE) -#define KSTACK(p) (TRAMPOLINE - (p+1)* 2*PGSIZE) +#define KSTACK(p) (TRAMPOLINE - ((p)+1)* 2*PGSIZE) + +// User memory layout. +// Address zero first: +// text +// original data and bss +// fixed-size stack +// expandable heap +// ... +// TRAPFRAME (p->tf, used by the trampoline) +// TRAMPOLINE (the same page as in the kernel) +#define TRAPFRAME (TRAMPOLINE - PGSIZE) |
