Operating Systems
-
Required teaching materials:
- Textbook: Operating Systems,
Internals and Design Principles, 4th Edition
Author: William Stallings
ISBN: 0-13-887407-7
Published by Prentice-Hall
-
Bookpool web page to purchase this book
- Software: RedHat Linux 7.3 (or later) from
Linux Central
This comes with no support. If you want a supported
copy of Linux, purchase an official copy from
RedHat Corporation
- Recommended book (optional)
Exam 3, due 7/31/2002
Homework assignments
Check this page often!
Web page to look up your grades at any time
Discussion Group for this class
Unix links
- Other course materials:
A free Unix (Linux, or one of the three BSD's)
Cheap
Bytes (a cheap source for Unix CDs)
- Linux Home Page
- MkLinux Home Page (Apple's
Linux for the Macintosh Power PC)
- The three BSD's (the first two use the revolutionary
UVM virtual memory algorithm):
- OpenBSD (the
world's most secure operating system). Runs on the following
architectures: x86 (of course), sparc, amiga, hp30, Macintosh 68K,
mvme, 68K, and Macintosh PowerPC
- NetBSD (a highly
portable operating system). Runs on everything (well, almost
everything). It was the first unix-like OS to be ported to
the Macintosh 68K.
- FreeBSD
(the world's fastest operating system and basis for Apple OSX).
Runs on: x86, Alpha, and Macintosh PowerPC.
Note: all three BSD's may be downloaded and installed from the
net. CD's are also available for them (check the web sites) or
cheapbytes.
- General techy news
(somewhat Linux oriented)
- BSD news
- Latest Unix software
- The Partition Resizer
Home Page
A GUI program that runs under DOS for resizing Windows 95, 98, Me
and other partitions without losing data
This course will study and compare several modern operating
systems. There will five web-based exams and several Unix-based
term projects:
- The first assignment covers obtaining and installing RedHat Linux on
a student's machine. This involves:
- Partitioning the hard drive. This can be done without
destroying the Windows software already present.
Parted can resize (i.e., shrink) Windows partitions.
See
Parted Home Page and
Bootdisk form of Parted (see the README file
in this directory).
- Creating a swap partition.
- Deciding on the software configuration to get.
- Configuring the network: ppp and dsl connections.
- Configuring X windows. Choosing a desktop.
- Chapter 1-2.
-
Overview and the history of operating systems
-
Monolithic verses small-kernel operating systems
-
Concurrency and protected memory.
- Chapter 2, section 4
- Characteristics of modern operating systems
- Chapter 3.
- Process states.
- Managing processes.
- Chapter 4.
-
Processes and threads
- Symmetric multiprocessing
- Microkernels
- Windows NT and Solaris process management.
- Chapter 5.
- Controlling concurrency
- Dekker's and Peterson's Algorithms
-
Semaphores, monitors, and message-passing
-
Interprocess communication in Unix.
- Chapter 6.
- Deadlock and starvation.
- The Banker's Algorithm
- Chapter 7.
- Memory management.
- Paging.
- Chapter 8.
-
Hardware Interface
- Operating system software.
- Virtual memory
- Unix and Solaris memory management.
- Chapter 9-10.
- Scheduling: uniprocessor
- Multiprocessor scheduling
- chapter 11.
- Chapter 12
- File management. Filesystems
- Chapter 13
- Chapter 15.
Links:
- FreeBSD Virtual Memory Algorithms
-
Operating
systems Home Page
- Macintosh OSX announcement
- Multics Web sites:
- Multics Home Page
-
Another Multics site
- The
SR programming language (a
concurrent programming language used in some exercises
- The
AtheOS (a free operating system with a built-in GUI)
- ReactOS: A free clone of
Windows NT
- Rome Operating
System
an operating system designed for real time
programming and rapid transmission of data
-
the Sky OS
Another free Operating System with a built-in GUI
-
the Menuet Operating System
a free Operating System with a built-in GUI
that is written entirely in assembly language
(so it's small --- it fits on a single floppy disk)
-
The OS News Home Page
- The MPD
Concurrent Programming Language
Justin R. Smith