Skip to content

CS 631-01 Systems Foundations — Meeting Summary

Date: May 05, 2026
Time: 08:13 AM Pacific Time (US and Canada)
Meeting ID: 870 0988 0761

Quick Recap

The session focused on: - Setting up Python virtual environments required for running Octux commands via the autograder. - Understanding core OS kernel concepts in Octux, including: - Virtual memory and page tables - System call flow from user mode to kernel mode - The roles of eCall instructions and trap handlers - An example walkthrough of the getPID system call - Strategies for navigating large codebases (e.g., an OS kernel). Participants were encouraged to explore the Octux code using Visual Studio Code and Cloud Code for improved code browsing and context.

Next Steps

Greg

  • Release Project 6 this week; it will likely include internal kernel modifications and possibly additional user programs.
  • On Thursday:
  • Dive deeper into virtual memory concepts and terminology.
  • Begin adding instrumentation and helper code to visualize and understand kernel behavior.

Collaboration

  • All participants should contact Greg or Shreyas if they experience issues setting up the Python virtual environment for Project 5.

Summary

Python Virtual Environment Setup Guide

  • A Python virtual environment is required to resolve dependency issues for Project 5 and the Octux run script.
  • Demonstrated workflow:
  • Create a virtual environment using Python’s venv module.
  • Activate the environment.
  • Install required packages within the environment.
  • Note: If pip does not work outside the virtual environment, the likely cause is a Python version or path conflict.

Virtual Environment and Python Setup Support

  • Participants should reach out to Greg or Shreyas for assistance with environment or dependency issues.
  • Visual Studio Code with the Cloud Code extension was recommended for navigating the Octux codebase:
  • Provides better code context and search compared to browser-based tools.
  • Improves discoverability of related files and symbols.
  • Some technical issues occurred during the demo and were resolved by restarting the setup process.

Operating Systems Internal Mechanisms

  • The discussion covered key OS internals:
  • System calls, process management, and virtual memory.
  • The transition from user mode to kernel mode using eCall and trap handlers.
  • How page tables implement virtual memory and process isolation.
  • Scheduling, context switching, and kernel management of physical memory.
  • Memory-mapped I/O fundamentals.
  • A step-by-step walkthrough of the getPID system call illustrated mode switching and control flow.
  • Planned follow-up:
  • Deeper exploration of virtual memory.
  • Adding instrumentation to observe kernel behavior in the next session.