M4: Kernel Process & Memory Management

This fourth module explores internal workings of how processes are created, managed, and terminated by the kernel. We will also explore how virtual memory is handled by the kernel as well.

Pre-recorded Lectures

Note: Professor Samuels will state on Ed when the prerecorded videos are ready to be viewed each week for a module.

The pre-recorded lectures are available here: M4 Videos. You can also find the videos under the “Panopto” tab on the MPCS 51082 canvas site.

The lectures are a series of approx 15-20 minute videos. Please come back here weekly as the videos will be updated if a module spans multiple weeks. This module includes the following videos:

  • 4.1: Wait for Child Processes

  • 4.2: Execve Example & Child Processes

  • 4.3: Process Groups and Sessions

  • 4.4: Receiving Signals

  • 4.5: Signal Handling

The slides presented in these videos are accessible in the upstream repository.

Resources/Readings

  • The slides and code presented in this module are accessible in the upstream repository.

  • The Linux Programming Interface: A Linux and UNIX System Programming Handbook readings:

Synchronous Sessions (In-person Lecture)

As a reminder here are the dates and times for the synchronous session for this module:

Week 7

  • Dates/Times
    • Section 1: Monday November 6th 10:20am-12:20pm

    • Section 2: No class (Professor Samuels will post a pre-recorded video)

  • Session Outline
    • Overview of Processes

    • Concurrency in computer systems

    • Process Creation and Termination

    • Process Control

Week 8

  • Dates/Times
    • Section 1: No class (Professor Samuels will post a pre-recorded video)

    • Section 2: Thursday November 16th 5:30pm-7:30pm

  • Session Outline
    • Virtual Memory Management

    • Interprocess Communication using Signals

Assignment

Assignments are always due on Friday evenings.