Microkernel - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Microkernel

Description:

Originally, L4 is the name of a second-generation ... Now, there are numerous implementations of the L4 API on several ... tu-dresden.de/Studium ... – PowerPoint PPT presentation

Number of Views:126
Avg rating:3.0/5.0
Slides: 19
Provided by: Luc164
Category:

less

Transcript and Presenter's Notes

Title: Microkernel


1
Microkernel
  • L4

2
Whats L4 ?
  • Originally, L4 is the name of a second-generation
    microkernel designed and implemented by Jochen
    Liedtke, running on i486 and Pentium CPUs.
  • Now, there are numerous implementations of the L4
    API on several hardware architectures.

3
Implementations of the L4 µ-Kernel interface
4
Design paradigm (1/2)
  • Jochen Liedtke A microkernel does no real
    work.
  • Kernel provides only inevitable mechanisms.
  • No policies enforced by the kernel.
  • What is inevitable ?

5
Design paradigm (2/2)
  • L4 microkernel only provides the four basic
    mechanisms
  • a thread model
  • a mechanism for synchronous thread communication
  • Scheduling
  • an address space abstraction

6
L4 architecture
7
L4 architecture (with L4Linux)
8
L4 thread
  • Identified by thread id
  • Consists of
  • Instruction pointer
  • Stack
  • Registers, flags,
  • Etc.
  • L4 only manages (preserves) IP, SP and registers.
  • Entry point, stack allocation is managed by
    user-level applications

9
L4 address spaces (1/2)
  • Protection domain
  • Container for code and data
  • Constructed of memory pages
  • Three operations
  • map
  • Share page with other address space.
  • grant
  • Give page to other address space.
  • unmap
  • Remove page from other address space

10
L4 address spaces (2/2)
  • Recursive address Spaces

11
L4 IPC (1/6)
  • Synchronous
  • sender and receiver have to meet and agree to
    communicate
  • Secure
  • they do not need to trust each other
  • Unbuffered
  • no in-kernel message caching
  • Blocking
  • a partner can wait for another
  • Direct
  • the partner is directly addressed

12
L4 IPC (2/6)
  • Passing Short Messages
  • A high percentage of IPC messages are very short.
    Transfer those messages in registers.
  • Copying Large Data Messages
  • L4 allows for single-copy transfers by
    temporarily sharing the target region with the
    sender.
  • Lazy Scheduling

13
L4 IPC (3/6)
  • Operations
  • Send only
  • Receive only (close wait)
  • (from a specified thread)
  • Wait (open wait)
  • (for any thread)
  • Call
  • (send to specific thread, receive from that
    thread)
  • Reply and wait
  • (send to specific thread, wait for any)
  • call and reply-and-wait are optimizations for
    typical client-server architecture
  • Message types
  • Register message
  • (Short IPC)
  • Bulk data
  • (direct string)
  • Memory buffer references
  • (indirect string)
  • Mappings
  • (flexpages)

14
L4 IPC (4/6)
  • Direct string

15
L4 IPC (5/6)
  • Indirect string

16
L4 IPC (6/6)
  • Others
  • IDL compiler
  • generate IPC-related code from IDL specification
  • DICE (IDL compiler for DROPS)

17
Designing a microkernel
  • What is the main goal for this kernel ?
  • Performance? Robustness? Simplicity?
  • What is the main application will run on this
    kernel ?
  • Multimedia? Communication? Editor? or General?
  • What special instructions dose hardware support ?
  • Branch instructions
  • Multimedia related instructions
  • What is inevitable in microkernel ?
  • (refer to page 4)
  • How to improve IPC performance ?
  • Reduce overhead
  • Ex. security, encoding, etc.
  • Make the common case fast
  • Short IPC using registers
  • How to test the system ?
  • Benchmark, simulator, etc.

18
Reference
  • L4hq.org
  • http//l4hq.org/docs/
  • lecture in Dresden
  • http//os.inf.tu-dresden.de/Studium/MkK/
  • http//os.inf.tu-dresden.de/Studium/KMB/
  • http//i30www.ira.uka.de/teaching/courses/lecture.
    php?courseid99
  • http//www.cs.cornell.edu/home/ulfar/ukernel/ukern
    el.htmlcurrent-l4.
Write a Comment
User Comments (0)
About PowerShow.com