Lesson 2d (L3) Flashcards

1
Q

why was mach slow

A

it wanted to be portable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

microkernel is what

A

services such as file system, memory manager, cpu scheduler are set above the kernel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

what does the micro-kernel provide for the OS processes to communicate

A

IPC

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What causes performance loss

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

In traditional microkernel are system services in their own address space

A

yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

what are the services L3 provides

A

Address space, threads, IPC, UID

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

In l3 are system services in their own address pace

A

No, they are in their own protection domain

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is l3 argument about efficency

A

It is about the implementation not the structure of a microkernel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Historic strikes against micro kernels

A
  1. border crossing cost, 2. address space switches, thread switches and IPC for PPC 4. Memory effects (locality loss code cache)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are PPC

A

protected procedure calls

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Does intel x86 have a address space tlb?

A

no

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How is the intel tlb dvided

A

kernel address space and user address space

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

what does the address tlb contain in addition to tag and index

A

the PID of the process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How did l3 implement protection when cpu does not provide address tlb

A

segment registers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

what are segment registers used for in l3

A

base and bound memory regions for os services. Protected memory areas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How many cycles does a border crossing tak in l3

A

123

17
Q

How does l3 compare to a hand coded implementation of a border crossing

A

about the same equivalent

18
Q

how man cycles does mach take for border crossing on same hardware

A

900

19
Q

why did spin and exokernel decry micro-kernels

A

they used mach’s border crossing cycle count for comparison

20
Q

why are border crossing slower in mach

A

they designed for portability

21
Q

do you always have to flush tlb on context switch

A

Not if it is a address space tagged TLB (MIPS has this)

22
Q

when do segment work well for the l3 kernel

A

When the protection domain that they represent is small

23
Q

what has to happen on a large protection domain during a context switch

A

The tlb needs to be flushed if the tlb is not as tagged

24
Q

what is an as tagged tlb

A

address psace tagged. A pid is added to the tlb and that is verified during address translation

25
Q

what has a higher cost in terms of performance tlb flush or loss of locality

A

locality. Since the cache will be cold

26
Q

what are the explicit cost of context switch

A

tlb flush

27
Q

implicit cost of context switch

A

loss of locality

28
Q

most important question about address space switching

A

large or small protection domain

29
Q

how did l3 debunk address space switching cost myth

A

showed address switch cost are minimal if designed well and that cache misses cost more

30
Q

how was the myth about thread switching debunked

A

by showing that by construction the switching time could match exokernel, spin and monolithic

31
Q

memory effect debunked

A

pack things in such a way that the protection domain stays small and the cache stays warm

32
Q

Why was mach border crossing so slow

A

the focus on portability lead to code bloat, larger mem footprint -> less locality -> cache misses

33
Q

What is the l3 thesis in regards to OS construction

A

using the right set of micro-kernel abstractions and processor-specific implementation of the kernel.