(
Latest Revision --
February 25, 2003
)
Course Description
for Operating Systems II: CS 4750
"An elephant is a mouse with an operating system."
TERM: Spring 2003
CLASS INFO FROM SCHEDULE:21965 #CS 4750 001 Operating Systems II Lec 3.0 Tu-Th 11:15-12:42 P-113 2
INSTRUCTOR: John Sarraille, Professor of Computer Science
OFFICE: P-286, Professional Schools Building, Cal State
Stanislaus
OFFICE HOURS: Tu-Th 08:30-09:30, Th 12:50-15:50, or by appointment
(Office hours commence on Feb 13 and end on May 22.)
E-MAIL:
john@ishi.csustan.edu
HOMEPAGE:
http://www.cs.csustan.edu/~john/jsHomepage.html
PREREQUISITE:
It is important that you be adequately prepared for taking this
course,
CS 4750.
Check with me if you have not passed:
- Operating Systems I (CS 3750), or the equivalent
COURSE OBJECTIVES:
- Gain familiarity with the structure and design of unix kernels.
- Learn about modern trends, research, and development in operating
systems theory.
- In a hands-on fashion, learn about administration of a network of unix
systems.
- Get practice working with unix system software.
- Share information among students and faculty.
REQUIRED TEXTS:
-
Unix Internals: the new frontiers, 1/e
; written by Uresh Vahalia
; published by Prentice Hall, 1995
; ISBN 0-13-101908-2.
-
UNIX System Administration Handbook, 3/e
; written by Evi Nemeth, Garth Snyder, Scott Seebass, and Trent H. Hein
; published by Prentice Hall, 2000
; ISBN 0-13-020601-6
RECOMMENDED READING:
-
UNIX in a Nutshell: System V Edition, 3rd Edition
; written by Arnold Robbins
; published by O'Reilly and Associates, 1999
; ISBN 1-56592-427-4
-
UNIX System V: A Practical Guide, 3/E
; written by Mark G. Sobell
; published by Addison-Wesley, 1994
; ISBN 0-8053-7566-X
-
Advanced Unix Programming, 2/E
; written by Marc J. Rochkind
; published by Prentice Hall PTR (but not yet)
; ISBN (none yet)
-
Operating System Concepts, 6th Edition, 2001
; written by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne
; published by Wiley, 2001
; ISBN 0-471-41743-2
-
Operating Systems Principles
; written by Lubomir F. Bic and Alan C. Shaw
; published by Prentice Hall, 2002
; ISBN 0-13-026611-6
-
Modern Operating Systems, 2/E
; written by Andrew S. Tanenbaum
; published by Prentice Hall, 2001
; ISBN 0-13-031358-0
-
Distributed Systems: Principles and Paradigms
; written by Andrew S. Tanenbaum and Maarten van Steen
; published by Prentice Hall, 2001
; ISBN 0-13-088893-1
-
Real-Time Systems
; written by Jane W. S. Liu
; published by Prentice Hall, 2000
; ISBN 0-13-099651-3
-
The Design and Implementation of the 4.4 BSD Operating System
; written by Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, and John S. Quarterman
; published by Addison-Wesley, 1996
; ISBN 0-201-54979-4
-
Understanding the Linux Kernel, 2nd Edition
; written by Daniel P. Bovet and Marco Cesati
; published by O'Reilly and Associates, 2002
; ISBN 0-596-00213-0
-
Essential System Administration, 3rd Edition
; written by Aeleen Frisch
; published by O'Reilly and Associates, 2002
; ISBN 0-596-00343-9
-
LINUX System Administration Handbook
; written by Mark Komarinski and Cary Collett
; published by Prentice Hall, 2002
; ISBN 0136805965
COURSE COVERAGE:
We will install and configure the Solaris operating system on a set of
workstations and create a networked operating environment almost identical
to the one we have on the Sun Ultra computers in the CS lab.
We will cover the following chapters in Vahalia
- Ch #01 Introduction
- Ch #02 The Process and the Kernel
- Ch #03 Threads and Lightweight Processes
- Ch #04 Signals and Session Management
- Ch #05 Process Scheduling
- Ch #06 Interprocess Communications
- Ch #07 Synchronization and Multiprocessing
- Ch #08 File System Interface and Framework
- Ch #09 File System Implementations
and the following chapters in Nemeth:
- Ch #01 Where to Start
- Ch #28 Daemons
- Ch #06 Adding New Users
- Ch #03 Rootly Powers
- Ch #04 Controlling Processes
- Ch #05 The Filesystem
- Ch #10 Backups
- Ch #19 Electronic Mail
- Ch #11 Syslog and Log Files
- Ch #02 Booting and Shutting Down
- Ch #23 Printing
- Ch #26 Cooperating with Windows
- Ch #17 The Network File System
- Ch #16 The Domain Name System
- Ch #18 Sharing System Files
- Ch #21 Security
- Ch #27 Policy and Politics
This is a lot of material! You will have to read at the rate of about 63
pages per week for 13 weeks.
QUIZZES, PROJECT & GRADING:
There will be two course components: quizzes and project. We
will have a quiz about every two weeks, covering the course
reading assignments.
Your project will be a term-long assignment to install and configure system
software on Solaris workstations. You will do project work in teams of
three persons.
Each team must keep a detailed and complete on-line
journal/lab-book that describes
- who does/installs what,
- what your operating procedures are,
- what you are doing to monitor the correctness of your work
while you are working,
- what you are doing to verify the correctness of your
completed actions/installations,
- what problems and failures you are detecting and what is
allowing/helping you to notice them,
- how you are solving the problems that come up, and
- all other significant developments in the project.
Each team must turn in a copy of their journal to me (by e-mail)
each Monday for my review.
At the end of the semester the team will turn in a written report
- summarizing the content of the journals,
- explaining the outcomes of the project, and
- stating conclusions:
- What are your reactions, opinions, and feelings
concerning the project and the class?
- What do you feel you learned and/or failed to learn from
doing the project work, and
- What other interesting outcomes and knowledge relating
to the project can you share with us?
The report must contain input from all team members. The team
must present the report orally at the end of the term. The team
must also turn in a hardcopy of the report. I will base the
project grade on the quality of the journal, the report, and what
you appear to have accomplished and learned by doing the project.
I will have weekly conversations with the teams in order to monitor the
progress of the projects. During the conversations we will work out
details of what must be done. Typically your course project will not be
"one big thing." It will be a series of varied system administration
tasks. On any of the sun ultra's, look here:
/usr/local/install.tmp
to see information describing the basics of your project work.
(Alternatively you may use
this link: http://spica.csustan.edu/sunInstallInfo/
to view the SUN installation information.)
There will be no final exam. Instead you will do the oral presentations of
your project reports during our designated final exam time.
Under normal circumstances your project and quiz average will
each be given a weight of 50% in determining your grade.
The exception to that rule is that to pass the course you
must get a passing grade in your project and a
passing average on your quizzes.
BASIC INFORMATION ABOUT CLASS SESSIONS:
We will use some of our class time for lecture and discussion and some for
interaction in the lab. I expect you to perform most of your project work
outside of class time. Class time is mainly for answering questions and
solving problems.
PARTICIPATION:
I expect everyone to attend all the classes, to participate, and to be well
informed as to what is going on. I will keep track of your attendance.
I want to be accessible and helpful to you during this course. I want you
to get as much as possible out of the course. Remember, however, that we
are a team and you are a key player.
Read everything I assign, and read with care. Read difficult material more
than once! Attend all classes. Pay close attention. Take notes. Review
your notes before each class. Get started on assignments and project work
early. Do a little each day, and bring your questions and problems
concerning your project and readings to class each day.
Finish work on schedule. Do what you can to keep class discussion
interesting and to the point. Reply to questions. Ask questions and make
remarks if you feel you have something to add, or if you feel something
needs to be explained better.
RESPONSIBILITY FOR YOUR OWN WORK:
Quizzes: You must write your quizzes with no discussion or help from
anyone. The one exception is that you are allowed to come forward and ask
me to clarify the meaning of a quiz question, if you wish. It will be up
to me to decide how to answer, or whether to answer at all. I will tell
the class any new information that arises from such an exchange.
Projects: I expect you to share equally in the work of your project,
and to live up to the commitments that you make to your partner.
Penalties: If there is compelling evidence of dishonesty or shirking
of responsibility, I will withhold credit.
NETWORK AVAILABILITY OF COURSE MATERIALS:
Course documents, assignments, supplements, and so on will be
made available via the world wide web. To access the on-line
CS 4750 materials, you can open the URL
http://www.cs.csustan.edu/~john/Classes/CS4750/
from any web browser on any computer connected to the campus
network or the Internet.
Also, there is a miscellaneous collection of information that
you may want to use from time to time. It is located here:
http://www.cs.csustan.edu/~john/Classes/General_Info/
I'll let you know about other web-based resources from time to time.
COMPUTER EQUIPMENT:
Each of you is supposed to have an account that gives you access to all the
Computer Science Department Sun Ultra computers. The computers have a
network file system, so you get the same home directory, regardless of
which Sun Ultra you log on to.
If you don't seem to have access to the Ultra's, then let me know right
away. Fill in and send an
account request form
or send me an e-mail containing the information requested by the
form. I'll see to it that you get an account and the information
you need to access it.
Generally, CS Department workstations are available for access and use on a
24-hour basis. However campus computer labs do not remain open at all
hours. Therefore sometimes network and modem connections are the only
means available for connecting to a workstation. For more information
about network and modem connections, see the sections below entitled "MODEM
CONNECTIONS" and "INTERNET CONNECTIONS". Also see the course document
entitled
loginDirections.html.
The CS Lab in P-288 will be open basically mid-morning until about 5:00
p.m.. During these times, you can be physically present in the lab while
using a department computer. This can be very beneficial because you then
have the opportunity to work and communicate with fellow students and
members of the staff and faculty.
Due to budgetary constraints beyond our control, the hours during which
P-288 is open are subject to change on short notice. Please check the
postings of the lab hours at the entrance to the lab or in the "message of
the day" that is printed on your screen when you log on to your Sun Ultra
account.
Incidentally, the CS Department often seeks volunteers and work-study
students to help keep the lab open longer hours. For further information,
ask our system administrator, Julie Gorman:
P-288C
, 667-3273,
julie@eos.csustan.edu.
.
While you are in the CS Lab, you will be able to access Sun Ultra
workstations by logging in directly at the console, or by using ssh or
telnet from some other kind of computer in the lab, such as a Macintosh or
a "Wintel".
MODEM CONNECTIONS:
Some phone numbers for making modem connections are: from Turlock 669-9834;
toll-free from Modesto 523-2173; toll-free from Merced 723-2810; and
toll-free from Stockton 467-5399. There has been recent discussion of
discontinuing the availability of some of these connections. Check with
the computer center's (OIT's) help desk to get the latest information. The
help desk is in L-130, and the telephone number is 667-3687.
INTERNET CONNECTIONS:
You may want to purchase Internet connectivity. This is not a
requirement and not necessary for success, but it can be a great
time-saver and a convenience once you have gotten past the hurdle of
setting everything up.
There are several Internet service providers (ISP's) that serve
this area. Chances are that members of the class can make good
recommendations. We can devote some time to this topic on the
first day of class.
One can find many ISP's by using the site:
http://thelist.internet.com.
ISP's also advertise in the yellow pages and in newspapers.
If you get an Internet connection, make sure you have remote
login and file transfer capability. Depending on what
kind of computer you have, you may need to get some special
add-on software for doing doing remote login and file transfer.
For more information about this, read the
remote login and file transfer help sheet.
For additional information, ask me or the CS Lab Administrator,
Julie Gorman.