What is the name of the entry point for kernel mode test cases?
kernelMain
What is our max block size?
4096 B
What is our page size?
4096 B
What is the name of the entry point for user mode test cases?
/sbin/init
What is the exact name of the emulator we are using?
qemu-system-i386
What is the maximum number of cores our system supports?
16
What is the name of the block the system first reads when it boots up?
superblock
What is the size of the shared space?
2^28
How many syscalls did we implement?
21
What is the name of serial device?
8250 UART
What register is the interrupt bit in? (NOT THE METHOD)
EFLAGS
What are the name of the instruction to talk to IDE?
inb/outb
How does sharing of virtual memory work in Linux?
Synchronizes via files
What are three ways in our system to switch into kernel mode?
timer interrupt, syscall, page fault / exception
Where did we use lock-free (CAS) programming in the kernel?
Weak Pointers
Copy on write
?
What does LAPIC stand for :D?
Local advanced programmable interrupt controller
Name two file systems that does not include "ext"?
ntfs, zfs, fat, btrfs
How many of the first page table entries did the kernel use/reserve for its virtual memory?
32
What is the worst thing that can happen if you don't set the user supervisor bit?
the user can access nothing
Name two places where our kernel used or could've used binary trees.
VME Insert / MMAP
Sleep
volatile int x = 0;
void kernelMain() {
for (int i = 0; i < 100; i++) {
x = x + 1;
}
}
What is the difference between the maximum and minimum value of X after the function completes?
198
Which filesystem does linux use?
How can we find out our thread's identity from virtual memory?
Save an entry in the page directory
Which of the following can you not do in user mode:
A. Read from a file
B. Write to standard in
C. Open a file
D. Close a file
All of them :D
When did Dr.Gheith move to Austin?
1990