Lesson 2d (L3) Flashcards
why was mach slow
it wanted to be portable
microkernel is what
services such as file system, memory manager, cpu scheduler are set above the kernel
what does the micro-kernel provide for the OS processes to communicate
IPC
What causes performance loss
a lot of boarder crossing. Since services use IPC (PPC protected procedure calls) they have border crossing when talkig to each other 100x slower than normal procedure call
In traditional microkernel are system services in their own address space
yes
what are the services L3 provides
Address space, threads, IPC, UID
In l3 are system services in their own address pace
No, they are in their own protection domain
What is l3 argument about efficency
It is about the implementation not the structure of a microkernel
Historic strikes against micro kernels
- border crossing cost, 2. address space switches, thread switches and IPC for PPC 4. Memory effects (locality loss code cache)
What are PPC
protected procedure calls
Does intel x86 have a address space tlb?
no
How is the intel tlb dvided
kernel address space and user address space
what does the address tlb contain in addition to tag and index
the PID of the process
How did l3 implement protection when cpu does not provide address tlb
segment registers
what are segment registers used for in l3
base and bound memory regions for os services. Protected memory areas
How many cycles does a border crossing tak in l3
123
How does l3 compare to a hand coded implementation of a border crossing
about the same equivalent
how man cycles does mach take for border crossing on same hardware
900
why did spin and exokernel decry micro-kernels
they used mach’s border crossing cycle count for comparison
why are border crossing slower in mach
they designed for portability
do you always have to flush tlb on context switch
Not if it is a address space tagged TLB (MIPS has this)
when do segment work well for the l3 kernel
When the protection domain that they represent is small
what has to happen on a large protection domain during a context switch
The tlb needs to be flushed if the tlb is not as tagged
what is an as tagged tlb
address psace tagged. A pid is added to the tlb and that is verified during address translation