Lecture 05: Monday, 17 June 2024

Announcements

  1. P0 initial submission: due in one week

  2. Take note of the style requirements in procedures

    1. Check your patches with the kernel tree's checkpatch.pl as described in our procedures and policies

Review

  1. L0{2,3,4} covered building a minimal Linux distribution from scratch

    1. We compiled and booted a kernel with a minimal, busybox-based userspace

    2. We mounted the /proc and sysfs kernel-backed filesystems

    3. We built and installed a C compiler (tcc) and C library (glibc)

  2. L04 concluded with a quick tour of some advanced features of C used by the kernel

    1. Our main focus was on the preprocessor

    2. The last example was the arm64 fault-handling code defining the syscall vectors


Lecture overview

  1. Execution contexts

  2. Define kernelspace and userspace

  3. Kernel representation of a process or thread

  4. What do we want out of a system call?

  5. The five steps of a system call


Slides

Available here


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