eXpOS: A Simple Pedagogical Operating System for Undergraduate Instruction

08/08/2020
by   K. Murali Krishnan, et al.
0

An operating system project suitable for undergraduate computing/electrical sciences students is presented. The project can be used as a course project in a one semester course, or as a self-study project for motivated students. The course is organized such that a student with a basic background in programming and computer organization can follow the implementation road map available online, and build the OS from scratch on her personal machine/laptop, with minimal instructional supervision. The student is provided with a simulated abstract machine, an application interface specification, specification and design of the OS, and a step by step project implementation road map. The functionalities of the OS include multitasking, virtual memory, semaphores, shared memory, an elementary file system, interrupt driven disk and console I/O, and a limited multi-user support. The final stage of the project involves porting the OS to a two-core machine. An independent one semester compiler design project, where the student builds a compiler for a tiny object oriented programming language that generates target code that can be loaded and executed by the OS is also briefly discussed.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset