xv6/mmu.h File Reference
Go to the source code of this file.
|
Data Structures |
| struct | segdesc |
| struct | taskstate |
| struct | gatedesc |
Defines |
| #define | FL_CF 0x00000001 |
| #define | FL_PF 0x00000004 |
| #define | FL_AF 0x00000010 |
| #define | FL_ZF 0x00000040 |
| #define | FL_SF 0x00000080 |
| #define | FL_TF 0x00000100 |
| #define | FL_IF 0x00000200 |
| #define | FL_DF 0x00000400 |
| #define | FL_OF 0x00000800 |
| #define | FL_IOPL_MASK 0x00003000 |
| #define | FL_IOPL_0 0x00000000 |
| #define | FL_IOPL_1 0x00001000 |
| #define | FL_IOPL_2 0x00002000 |
| #define | FL_IOPL_3 0x00003000 |
| #define | FL_NT 0x00004000 |
| #define | FL_RF 0x00010000 |
| #define | FL_VM 0x00020000 |
| #define | FL_AC 0x00040000 |
| #define | FL_VIF 0x00080000 |
| #define | FL_VIP 0x00100000 |
| #define | FL_ID 0x00200000 |
| #define | SEG(type, base, lim, dpl) |
| #define | SEG16(type, base, lim, dpl) |
| #define | DPL_USER 0x3 |
| #define | STA_X 0x8 |
| #define | STA_E 0x4 |
| #define | STA_C 0x4 |
| #define | STA_W 0x2 |
| #define | STA_R 0x2 |
| #define | STA_A 0x1 |
| #define | STS_T16A 0x1 |
| #define | STS_LDT 0x2 |
| #define | STS_T16B 0x3 |
| #define | STS_CG16 0x4 |
| #define | STS_TG 0x5 |
| #define | STS_IG16 0x6 |
| #define | STS_TG16 0x7 |
| #define | STS_T32A 0x9 |
| #define | STS_T32B 0xB |
| #define | STS_CG32 0xC |
| #define | STS_IG32 0xE |
| #define | STS_TG32 0xF |
| #define | SETGATE(gate, istrap, sel, off, d) |
Define Documentation
Definition at line 22 of file mmu.h.
Definition at line 7 of file mmu.h.
Definition at line 5 of file mmu.h.
Definition at line 12 of file mmu.h.
Definition at line 25 of file mmu.h.
| #define FL_IOPL_0 0x00000000 |
Definition at line 15 of file mmu.h.
| #define FL_IOPL_1 0x00001000 |
Definition at line 16 of file mmu.h.
| #define FL_IOPL_2 0x00002000 |
Definition at line 17 of file mmu.h.
| #define FL_IOPL_3 0x00003000 |
Definition at line 18 of file mmu.h.
| #define FL_IOPL_MASK 0x00003000 |
Definition at line 14 of file mmu.h.
Definition at line 19 of file mmu.h.
Definition at line 13 of file mmu.h.
Definition at line 6 of file mmu.h.
Definition at line 20 of file mmu.h.
Definition at line 9 of file mmu.h.
Definition at line 10 of file mmu.h.
| #define FL_VIF 0x00080000 |
Definition at line 23 of file mmu.h.
| #define FL_VIP 0x00100000 |
Definition at line 24 of file mmu.h.
Definition at line 21 of file mmu.h.
Definition at line 8 of file mmu.h.
| #define SEG |
( |
type, |
|
|
base, |
|
|
lim, |
|
|
dpl |
|
) |
|
Value:
(struct segdesc) \
{ ((lim) >> 12) & 0xffff, (uint)(base) & 0xffff, \
((uint)(base) >> 16) & 0xff, type, 1, dpl, 1, \
(uint)(lim) >> 28, 0, 0, 1, 1, (uint)(base) >> 24 }
Definition at line 45 of file mmu.h.
Referenced by ksegment(), and usegment().
| #define SEG16 |
( |
type, |
|
|
base, |
|
|
lim, |
|
|
dpl |
|
) |
|
Value:
(struct segdesc) \
{ (lim) & 0xffff, (uint)(base) & 0xffff, \
((uint)(base) >> 16) & 0xff, type, 1, dpl, 1, \
(uint)(lim) >> 16, 0, 0, 1, 0, (uint)(base) >> 24 }
Definition at line 50 of file mmu.h.
Referenced by usegment().
| #define SETGATE |
( |
gate, |
|
|
istrap, |
|
|
sel, |
|
|
off, |
|
|
d |
|
) |
|
Value:
{ \
(gate).off_15_0 = (uint) (off) & 0xffff; \
(gate).cs = (sel); \
(gate).args = 0; \
(gate).rsv1 = 0; \
(gate).type = (istrap) ? STS_TG32 : STS_IG32; \
(gate).s = 0; \
(gate).dpl = (d); \
(gate).p = 1; \
(gate).off_31_16 = (uint) (off) >> 16; \
}
Definition at line 141 of file mmu.h.
Referenced by tvinit().
Definition at line 63 of file mmu.h.
Definition at line 60 of file mmu.h.
Definition at line 59 of file mmu.h.
Definition at line 62 of file mmu.h.
Definition at line 61 of file mmu.h.
Definition at line 58 of file mmu.h.
Definition at line 69 of file mmu.h.
Definition at line 75 of file mmu.h.
Definition at line 71 of file mmu.h.
Definition at line 76 of file mmu.h.
Definition at line 67 of file mmu.h.
Definition at line 66 of file mmu.h.
Definition at line 68 of file mmu.h.
Definition at line 74 of file mmu.h.
Definition at line 70 of file mmu.h.
Definition at line 72 of file mmu.h.
Definition at line 77 of file mmu.h.