460 Course Plan
CPTS 460 COURSE PLAN
Fall, 2023
TITLE : Operating Systems and Computer Architecture
TEXT (REQUIRED): Embedded and Real-time Operating Systems,
K.C. Wang, Springer International AG, 2017
TEXT (MAIN Reference): Design and Implementation of the MTX Operating System,
K.C. Wang, Springer International AG, 2015
ASSIGNMENTS: This website and samples/ directory.
INSTRUCTOR : K. C. Wang, Professor of EECS, Sloan 321;
kwang@eecs.wsu.edu
Office Hours: Tu, Th 9-10 AM via ZOOM only
Goal of Course: Design and implement a REAL embedded operating system that actually works.
TOPICS COVERED:
1. Introduction to Operating Systems:
Unix/Linux, MTX. computer system and operations, system development
software, PC emulators, link C and assembly programs.
2. Booting OS
3. ARM Archicture, ARM programming and embedded systems
4. Processes:
Concept and implementation of processes; process states,
context switching, process scheduling.
5. Process management:
fork, wait, exit, exec, signals, pipes in Unix/Linux and Wanix.
Processes in (microKernel based) OS:
Micro vs. Monnolithic Kernels, tasks, servers and user processes in Minix;
6. Process Synchronization:
The process model; mutual exclusion and critical regions,
Implementation of low-level mutual exclusion primitives.
Synchronization primitives; events, event queues, semaphores.
7. Process Communication:
High-level process synchronization constructs; messages.
8. Process Control:
Scheduling algorithms. Dead lock and starvation problems.
9. Memory Management:
Memory management schemes
Paging and Virtual memory
10. I/O device drivers:
Interrupts and interrupt processing
Interraction between interrupt handler and process.
Design and implementation of I/O drivers;
11. File Systems:
Review of EXT2 file system.
NFS and RFS based on UDP and TCP/IP
11. Real-time OS
ASSIGNMENTS and REQUIREMENTS
1. 2 Exams: 60%
2. Programming Assignments : 40%
-------------------------------------------------------------
**************************************************************
* *
* Grading POLICY : *
* *
**************************************************************
1. All Assignments are INDEPENDENT WORK !! Absosulely no COPYING!!
2. Oral Quiz will be given during demo of your work.
SYSTEM SOFTWARE:
1. Website: http://www.eecs.wsu.edu/~cs460/samples Directory:
Sample Lab Assignments Solutions
2. Computers:
Your laptops running Ubuntu Linux version 22.04
===================== DO THESE in week 1 ===============================
3. Development Software: (Ubuntu users)
READ Chapter 2.5: Tool Chain
Install ARM Cross Compiling packages:
sudo apt-get install gcc-arm-none-eabi
sudo apt-get install qemu-system-arm
========================================================================