* added compilers lcc and bcc (linux86)
[mascara-docs.git] / i86 / mtx / docs / 01-plan.txt
blob475f98ea54c9d3f191417876cce2c5af5a17960a
1 460 Course Plan
4                 CPTS 460 COURSE PLAN
5                      Spring, 2012
7 TITLE : Operating Systems and Computer Architecture
9 TEXT  : Operating Systems, Design and Implementation,
10         Andrew S. Tanenbaum, Prentice-Hall, 2nd Edition, 1997.
12 NOTES : This website.
14 INSTRUCTOR: K. C. Wang, Professor of EECS, Sloan 321; kwang@eecs.wsu.edu
16                     TOPICS COVERED:
18 1. Introduction to Operating Systems:
19     Unix/Linux, MTX. computer system and operations, system development
20     software, PC emulators, link C and assembly programs.
22 2. Booting: Develop booters for Linux and MTX.
24 3. Processes:
25     Concept and implementation of processes; process states,
26     context switching, process scheduling.
28 4. Process management in Unix:
29       fork, wait, exit, exec, signals, pipes.
30    Processes in Minix:
31       Tasks, servers and user processes in Minix;
33 5. Process Synchronization:
34     The process model; mutual exclusion and critical regions,
35     Implementation of low-level mutual exclusion primitives.
36     Synchronization primitives; events, event queues, semaphores.
38 6. Process Communication:
39     High-level process synchronization constructs; messages.
41 7. Process Control:
42     Scheduling algorithms. Dead lock and starvation problems.
44 8. Memory Management:
45     Memory management schemes
46     Virtual memory and demand-paging
48 9. I/O drivers:
49     Serial and parallel ports, interrupt handlers.
50     Interraction between interrupt handler and process.
51     Design and implementation of I/O drivers;
52     I/O routines approach, I/O task approach.
53     I/O tasks in Minix;
55 10. File Systems:
56     Review of EXT2 file system.
57     NFS and RFS based on UDP and TCP/IP
60 LAB and Computer Systems:
61     Linux in Sloan 327
64                    ASSIGNMENTS and REQUIREMENTS
66 1.  2 Exams:                  40%
68 2.  Programming assignments : 60%
69 -------------------------------------------------------------
71 **************************************************************
72 *                                                            *
73 *                  Grading POLICY :                          *
74 *                                                            *
75 **************************************************************
77 1. All Assignments are INDEPENDENT WORK !!  Absosulely no COPYING!!
79 2. Oral Quizz will be given during demo of your work.
83                   SYSTEM SOFTWARE:
85 1. Website: http://www.eecs.wsu.edu/~cs460/samples Directory:
86             Sample Lab Assignments Solutions
88 2. Computers:
89    Your laptops running Linux or equivalent.
90    Linux machines in Sloan 327:
91    Network: Use  ssh  to access other EECS Unix machines.
92                  scp  to copy files from/to your Unix account.
94 ===================== DO THESE in week 1 ===============================
95 3. Development Software:
96    www.eecs.wsu.edu/~cs460/samples/BCC/ contains
98        Dev86binTGZ.bin : 16-bit development package
100    Download to your Linux / directory. Rename it as a .tgz file.
102    Run      zcat FILENAME.tgz | tar xvf -     to install
104    Read man pages of bcc, as86 and ld86 to see how to use them.
106 4. VMware and Demo. MTX:
108    www.eecs.wsu.edu/~cs460/samples/BCC/ also contains
110    VMware-Player.3.1.3-324285.i386           (VMware for Linux)
111    mtxCD.iso                                 (MTX INstall CD).
113    1. Download VMware-Player and install it under your Linux by
114                sh  VMware-Player-3.1.3-324285.i386
115    2. Create a VMware Virtual Machine (VM) with 8G IDE disk.
116    3. Download mtxCD.iso.  Burn it into a CD or DVD.
117    4. Boot up from the CD/DVD to install MTX on either a REAL PC or a VM.
118       (Follow instructions upon booting up).
119 ========================================================================