(Latest Revision -- February 14, 2009)

Course Description
for Operating Systems II: CS 4750

"An elephant is a mouse with an operating system."

TERM: Spring 2009

CLASS INFO FROM SCHEDULE:
22044 CS 4750 001 Operating Systems II (LEC) 3 MW 12:20-1:18 P-113
22045 CS 4750 002 Operating Systems II (LAB) 0  F 12:20-1:18 P-114
INSTRUCTOR: John Sarraille, Professor of Computer Science

OFFICE: P-286, Professional Schools Building (aka:DBH), Cal State Stanislaus

REGULARLY SCHEDULED OFFICE HOURS: ADDITIONAL OFFICE HOURS MAY BE ARRANGED ON REQUEST

(The first day of regularly scheduled office hours is Monday, Feb 16, 2009 and the last is Tuesday May 26, 2009.
There are no regularly scheduled office hours on Wednesdays, Fridays, holidays, or during spring break.)


E-MAIL: john@ishi.csustan.edu

HOMEPAGE: http://www.cs.csustan.edu/~john/js.html

PREREQUISITE:

It is important that you be adequately prepared for taking this course, CS 4750. Check with me if you have not passed: COURSE OBJECTIVES: REQUIRED TEXT:

Nemeth: Linux System Administration Handbook, 2/e; written by Evi Nemeth, Garth Snyder, and Trent R. Hein; published by Prentice Hall, 2007; ISBN-10: 0-13-148004-9

RECOMMENDED READING:
  1. UNIX in a Nutshell: 4th Edition; written by Arnold Robbins; published by O'Reilly and Associates, 2005; ISBN-10: 0-596-10029-9
  2. Linux in a Nutshell: 5th Edition; written by Ellen Siever, Aaron Weber, Stephen Figgins, Robert Love, and Arnold Robbins; published by O'Reilly and Associates, 2005; ISBN-10: 0-596-00930-5
  3. Advanced Unix Programming, 2/E; written by Marc J. Rochkind; published by Addison-Wesley, 2004; ISBN-10: 0131411543
  4. Operating System Concepts, 8th Edition; written by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne; published by Wiley, 2008; ISBN: 978-0-470-12872-5
  5. Modern Operating Systems, 3/E; written by Andrew S. Tanenbaum; published by Prentice Hall, 2008; ISBN-10: 0136006639
  6. Distributed Systems: Principles and Paradigms, 2/E; written by Andrew S. Tanenbaum and Maarten van Steen; published by Prentice Hall, 2007; ISBN-10: 0132392275
  7. The Design and Implementation of the FreeBSD Operating System; written by Marshall Kirk McKusick and George V. Neville-Neil; published by Addison-Wesley, 2005; ISBN-10: 0201702452
  8. Understanding the Linux Kernel, 3rd Edition; written by Daniel P. Bovet and Marco Cesati; published by O'Reilly and Associates, 2005; ISBN 10: 0-596-00565-2
  9. Essential System Administration, 3rd Edition; written by Aeleen Frisch; published by O'Reilly and Associates, 2002; ISBN-10: 0-596-00343-9
  10. LINUX System Administration; written by Tom Adelstein and Bill Lubanovic; published by O'Reilly and Associates, 2007; ISBN 10: 0-596-00952-6
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 material from the following chapters in Nemeth: You will have to read at the rate of about 38 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 three weeks, covering the course reading assignments.

Your project will be a term-long assignment to install and configure system software on Solaris workstations located in a special mini-lab in rooms (P-288B and P-288A) adjoining the main CS computer lab. You will do project work in teams of two or three persons. Note: you will have physical access to these rooms only during the hours when the main CS lab (P-288) is open.

Each team must keep a detailed and complete lab-book in electronic form that describes
  1. who does/installs what,
  2. what your operating procedures are,
  3. what you are doing to monitor the correctness of your work while you are working,
  4. what you are doing to verify the correctness of your completed actions/installations,
  5. what problems and failures you are detecting and what is allowing/helping you to notice them,
  6. how you are solving the problems that come up, and
  7. all other significant developments in the project.
The normal expectation will be that the teams make steady progress on the project. Beginning with the second Monday of the term, for my review, each team must e-mail me a current copy of its lab-book and make a presentation in class, recapping the events, actions and problems encountered while working on the project during the previous week. Lab-books are due on Mondays before the start of class. Weekly presentations will be made on Mondays. I will give team members a weekly grade based on the quality of the team lab-book and presentation.

During and after weekly reports, there will be discussions aimed at understanding issues and solving problems.

At the end of the semester the team will turn in a written report: The team will also make an oral presentation, based on the written term report.

Lab-books and reports must be team efforts. All team members must monitor and contribute to the content.

I will base the project grade on the quality of the lab-book, the weekly reports, the term report & presentation, and what you appear to have accomplished and learned by doing the project.

Typically your course project will not be "one big thing." It will be a diverse series of system administration tasks. On the the project server machine, look here:

/usr/local/install.tmp

to see information describing the basics of your project work. Other elements may be added to your project assignment. Please let me know if you'd like to suggest an addition.

There will be no final exam. Instead we will have the oral presentations during the 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:

For technical reasons, students in this class are required to sign up separately for a lecture section and a lab section, and the university schedule of classes indicates that lecture and lab occur on different days or times. In actual fact, I won't run the class like that.

We will use some of our class time for team presentations, discussion and lecture. We'll use some of it for work and interaction in the lab. You'll have to perform most of your project work outside of class time.

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, to the point, and flowing well. 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: If you decide to take on this class, you are making a commitment to share equally with your partners(s) in the work of the project. Everyone expects you to live up to that promise.

Penalties: If there is compelling evidence of dishonesty or shirking 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:

You need to have an account that gives you access to all the Computer Science multi-user computers. The computers have a network file system, which means you get the same home directory and "computing environment," regardless of which computer you log on to.

If you don't seem to have access to the lab computers, then let me know right away, preferably by filling out and submitting this form.

Otherwise send me an e-mail or give me a piece of paper containing the answers to the questions on the form.

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 access is the only option. For more information about establishing network connections, see the section below entitled "INTERNET CONNECTIONS." Also see the course document entitled loginDirections.

P-288 will be open basically midmorning until about 5:00 PM. During these times, you can be physically present in the CS Department 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, in the "message of the day" that is printed on your screen when you log on to your account, or check on the web.

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, (209) 667-3273, julie@cs.csustan.edu.

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.