460 Course Plan
CPTS 460 COURSE PLAN
Spring, 2008
TITLE : Operating Systems and Computer Architecture
TEXT : Operating Systems, Design and Implementation,
Andrew S. Tanenbaum, Prentice-Hall, 2nd Edition, 1997.
NOTES : This website.
INSTRUCTOR:
K. C. Wang, Professor of EECS, Sloan 321; kwang@eecs.wsu.edu
Office Hours: MW 9:00-10:00 AM
TA : To Be posted
TOPICS COVERED:
1. Introduction to Operating Systems:
Unix, Minix, MTX. computer system and operations, system development
software, PC emulators, link C and assembly programs.
2. Booting: Develop booters for Linux and MTX.
3. Processes:
Concept and implementation of processes; process states,
context switching, process scheduling.
4. Process management in Unix:
fork, wait, exit, exec, signals, pipes.
Processes in Minix:
Tasks, servers and user processes in Minix;
5. Process Synchronization:
The process model; mutual exclusion and critical regions,
Implementation of low-level mutual exclusion primitives.
Synchronization primitives; events, event queues, semaphores.
6. Process Communication:
High-level process synchronization constructs; messages.
7. Process Control:
Scheduling algorithms. Dead lock and starvation problems.
8. Memory Management:
Memory management schemes
Virtual memory and demand-paging
9. I/O drivers:
Serial and parallel ports, interrupt handlers.
Interraction between interrupt handler and process.
Design and implementation of I/O drivers;
I/O routines approach, I/O task approach.
I/O tasks in Minix;
10. File Systems:
Review of EXT2 file system.
NFS and RFS based on UDP and TCP/IP
LAB and Computer Systems:
Linux in Sloan 327
ASSIGNMENTS and REQUIREMENTS
1. 2 Exams: 40%
2. Programming assignments : 60%
-------------------------------------------------------------
**************************************************************
* *
* Grading POLICY : *
* *
**************************************************************
1. All Assignments are INDEPENDENT WORK !! Absosulely no COPYING!!
2. Oral Quizz 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. Linux machines in Sloan 327:
Boot (1-8) : 1 for Wihdows, 2 for Linux, 3 for Minix
Hostnames: cs360-01 - cs360-18
login as root (no password), MUST BE responsible as superuser!!!
========================================================
DO NOT delete system files!!!
WORK in your own directories.
SAVE your personal files; user files will be deleted.
=========================================================
Network: Use ssh to access other EECS Unix machines.
scp to copy files from/to your Unix account.
3. Development Software:
www.eecs.wsu.edu/~cs460/BCC/ contains
Dev86bin-0.16.17.tgz : 16-bit development package
dosemu-1.2.2.bin.tgz : PC emulator DOSEMU
Download to your Linux / directory.
Run zcat FILENAME.tgz | tar xvf - to install
Read man pages of bcc, as86 and ld86 to see how to use them.
See README of dosemu.