Lecture 13: Wednesday, 17 July 2024

Announcements

  1. E2 available

  2. P1 final submission due tonight

  3. Midpoint presentation due next week

  4. Planning to release P2 by end of this week


Review

  1. In L12 we covered:

    1. How to finish translating a userspace program into a kernel module

    2. Memory allocation

    3. Logging to the kernel ring buffer

    4. Details on module loading


Lecture overview

  1. What is a character device?

  2. Why do we want to use character devices

  3. How does the user interact with character devices?

  4. How does a kernel module implement a character device?

    1. Demo: random number generator

Slides

Character Devices


msg = (silence)
whoami = None
singularity v0.5 https://github.com/underground-software/singularity