forked from HawxChen/-LibraryOS-Exokernel_Implementation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
HawxNote.txt
40 lines (31 loc) · 1.19 KB
/
HawxNote.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Problem:
Note "Prob:" tag.
1. Why does lib/string.h have no prototype for memcpy?
Platform dependent?!
2. Load ELF
filesz memsz.
load into address space: filesz
Execute at address space: memsz
How did the text work live in (extension)range memsz?
alloc variables?
3. What's about UVPT for?
UVPT is for what usage.
Note UVPT use the the lec4. skill backpointer to itself.
4. Assume for this function that no two segments will touch
the same virtual page.
xv6 assume it, too.
But if not, how did it map?
5. what's about the 'size' parameter for?
env_create (uint8_t * binary, size_t size, enum EnvType type))
load_icode (struct Env *e, uint8_t * binary, size_t size))
6. why can't I use gdb to browse some variables
7. why did it not have fs/gs?
8. If a page fault is caused by a page-level protection,
the access flag in the page-directory is set when the fault occurs.
9.Differences about Call Gate/ Trap Gate/ Int Gat /Task Gate
IDT must not contain Call Gate
INT Gate will clear IF bit at eflag bit, but Trap Gate won't.
10. lib/entry.S
// See if we were started with arguments on the stack
cmpl $USTACKTOP, %esp
jne args_exist