Operating Systems, Fall 2009
Stephen J. Hartley, office 3rd floor Robinson,
phone 856-256-4500 ext. 3895
E-mail: hartley@elvis.rowan.edu
Home page: http://elvis.rowan.edu/~hartley/index.html
AOL Instant Messenger: PrfHartley
CS 04.390, Operating Systems.
During the fall 2009 semester, my formal office hours are
If you need to make an appointment, or if you have a question, you can reach me by telephone at extension 3895 and by electronic mail at hartley@elvis.rowan.edu. My AOL Instant Messenger name is PrfHartley and you are welcome to try contacting me that way with questions instead of through e-mail or telephone. If you cannot connect, send e-mail to hartley@elvis.rowan.edu to remind me to start the AIM program (I use Linux pidgin or an equivalent).
I will be on campus, either in my office or at meetings, most Wednesdays and Fridays, but the times are variable and unpredictable. If you want to meet on a Wednesday or Friday, try to set up an appointment in advance.
Andrew S. Tanenbaum, Modern Operating Systems, 3rd edition, Pearson Prentice Hall, 2008, ISBN 0-13-600663-9.
Two (2) or more flash (jump, keychain, thumb, USB) drives at least 128 megabytes in size each. You will be turning in all exams and projects on one of your USB drives. The other one is for keeping a backup copy of whatever you turn in. Write your name on a label and glue it to the outside of each of your flash drives.
Class Web pages start here:
http://elvis.rowan.edu/~hartley/Courses/OperatingSystems/2009/Fall/index.html
Class Announcements Web page:
http://elvis.rowan.edu/~hartley/Courses/OperatingSystems/2009/Fall/announcements.html
You need to check this page regularly! Announcements, corrections to assignments, adjustments to the syllabus, etc., will be made there.
C- or better in CS 06.205 Computer Organization,
C- or better in CS 04.222 Data Structures and Algorithms.
From the Rowan Undergraduate Catalog: (CS 04.390, 3 s.h.) This course concentrates on the design and functions of the operating systems of multiuser computers. Its topics include time sharing methods of memory allocation and protection, files, CPU scheduling, input-output management, interrupt handling, deadlocking and recovery, and design principles. The course discusses one or more operating systems for small computers, such as UNIX.
In Tanenbaum's view, ``The most fundamental system program is the operating system, whose job is to control all the computer's resources and provide a base upon which the application programs can be written. ... [T]he function of the operating system is to present the user with the equivalent of an extended machine or virtual machine that is easier to program than the underlying hardware ... [and] to keep track of who is using which resource, to grant resource requests, to account for usage, and to mediate conflicting requests from different programs and users.''
We will be studying algorithms and abstractions, algorithms to manage the computer's resources and abstractions that make the computer easier to use. Multiple processes are an abstraction of the CPU, virtual address spaces are an abstraction of physical memory, and files are an abstraction of the disk.
My primary goal is for you to learn how an operating system works in general and to develop an appreciation for everything that this magical, mysterious, complex piece of software does for us computer users.
By reading the textbook, participating in class, doing projects outside of class, and presenting projects in class, you will gain familiarity with the fundamental principles, techniques, terminology, and algorithms of operating systems and their design and implementation.
Your progress in attaining these goals will be measured by five in-class closed-book exams, a comprehensive final exam, several projects done outside of class and presented in class, one office visit, and a written ``last'' assignment (URL below).
The office visit occurs in my office on the 3rd floor of Robinson building. It lasts 5--15 minutes and is not painful. Schedule an appointment if formal office hours are not convenient.
You must also fill out and hand in the questionnaire (found in the class Web pages) at the time of your office visit.
You may answer the questions on a separate sheet of paper and turn that in at the time of your visit, or you may print out the questionnaire and answer the questions on it, using the back if needed.
Your office visit will earn you points according to the following timetable.
The course grade will be determined as follows:
| Item | Percentage of final letter grade | |
|---|---|---|
| Office visit | 10 | |
| Five in-class closed-book exams | 60 | |
| Written ``last assignment'' | 10 | |
| Comprehensive final exam | 20 |
Your lowest exam score, such as a zero for one you miss, will be dropped, leaving four of five exam scores used to compute your semester average in addition to the other items listed above (final exam, last assignment, office visit). No makeup exams will be given!
Final letter grades for the semester will be based on the usual 10-point scale where avg is your semester average calculated using the above scheme.
93 1/3 ≤ avg < 100 A 90 ≤ avg < 93 1/3 A- 86 2/3 ≤ avg < 90 B+ 83 1/3 ≤ avg < 86 2/3 B 80 ≤ avg < 83 1/3 B- 76 2/3 ≤ avg < 80 C+ 73 1/3 ≤ avg < 76 2/3 C 70 ≤ avg < 73 1/3 C- 66 2/3 ≤ avg < 70 D+ 63 1/3 ≤ avg < 66 2/3 D 60 ≤ avg < 63 1/3 D- avg < 60 F
An ``incomplete'' grade will be assigned only under extremely unusual exceptional circumstances, as determined by departmental policy and the instructor.
The Computer Science Department does not allow any of its courses to be taken Pass/No Credit.
See http://elvis.rowan.edu/~hartley/Courses/lastHW.html for more information on the written ``last'' assignment.
Regular attendance in class is required.
``Wash your hands. Swine is not fine.''
For more information, see the following Rowan document
(URL valid as of August 23, 2009):
http://www.rowan.edu/open/provost/policies/documents/AttendancePolicy-FacultyandStudentsResponsibilities-webrevS2009.pdf
Please inform the instructor in advance, preferably by e-mail, if you must be absent from a class.
Attendance has both a physical component and a mental component. One is not good without the other. Because of the participatory and discussion nature of this class, you are allowed 6.0 (six point zero) absences during the semester, either excused or unexcused. More than that for whatever reason, either excused or unexcused, will result in no credit for the class, that is, a final letter grade of F, W, or WF.
If you arrive late to class, you will be charged a half day of attendance. If I determine that you are unprepared for class discussion, you will be charged a half day of attendance. If you leave class early without informing me before class starts, you will be charged a half day of attendance.
If you are scheduled to present a project in class and you are not sufficiently prepared as determined by me, you will be charged a full day of attendance.
All in-class exams and the comprehensive final exam must be attended to earn any points. No makeup exams will be given!
Projects are done outside of class and presented in class. They might be group/team or individual. They are graded pass/fail where ``fail'' means a loss of a full day of attendance as described above. No late projects will be accepted!
You might be asked to turn in a project on a flash (thumb, USB) drive on the specified presentation day, so be prepared for that. No USB drives will be accepted without a readable external label containing your name!
The five in-class exams and the comprehensive final exam are written in nature. Question types will be definition, short answer, and problem solving involving numerical computation. No makeups will be given.
The in-class exams and final exam are graded on the basis of 100 points total each. Because your lowest exam score is dropped, you can miss or totally mess up an exam without trashing your final letter grade for the semester.
Drop/add ends 11pm, Tuesday, September 8, 2009. Until then, you can easily drop and add courses (assuming there is room) to adjust your course schedule. A dropped course will not show up on your transcript.
During the first half of the semester (through October 20, 2009), a student may withdraw from a class by filling out the appropriate form and obtaining the instructor's signature. A grade of ``W'' is received on your transcript.
The Department of Computer Science policy on withdrawing after that date is that it will be approved only in extenuating circumstances beyond the control of the student, such as serious illness. In addition, after October 20, 2009, the department chair must also sign the withdrawal form. A grade of ``WP'' or ``WF,'' as determined by the instructor, is received on your transcript.
No withdrawal forms will be signed after November 23, 2009, except for extremely unusual exceptional circumstances, as determined by the instructor. In addition, after November 23, 2009, the department chair and dean must also both sign the withdrawal form. A grade of ``WP'' or ``WF'' is received, as determined by the instructor.
Rowan has policies about acceptable use of its computers and networks by faculty, staff, and students. By registering for and taking this course, you are agreeing explicitly to abide by them.
Your academic success is important. If you have a documented disability that may have an impact upon your work in this class, please contact me. Students must provide documentation of their disability to the Academic Success Center in order to receive official University services and accommodations. The Academic Success Center can be reached at 856-256-4234. The Center is located on the 3rd floor of Savitz Hall. The staff is available to answer questions regarding accommodations or assist you in your pursuit of accommodations. We look forward to working with you to meet your learning goals.
For more information, see the following Rowan document
(URL valid as of August 23, 2009):
http://www.rowan.edu/open/provost/policies/documents/AcademicIntegrityPolicy_RAIVForm_AIVProcessOverviewFlowChart.pdf
Anything you turn in with your name on it must be your own work, that is, written or programmed by you and not copied from anyone or anywhere else. You must do anything you turn in with your name on it individually. For outside-class projects (that is, not exams), you may consult with other students and the course instructor to clarify points of confusion and share ideas. However, everything you turn in with your name on it must be your own work. Copying from others is expressly forbidden. Allowing others to copy from you is expressly forbidden.
Plagiarism and academic honesty guidelines: Each student does his/her own project or exam. For outside-of-class projects, you may ask other students and/or me about clarifying the project or for ideas about how to approach doing something in the project. You will do all the computer work yourself (including typing and mousing) and not allow another student to copy your work and not yourself turn in work copied from someone else. You will not ``dictate'' mousing and typing to another student nor be ``dictated'' to yourself.
Penalties for violation of this will range from a grade of zero on the assignment to a grade of F for the course, effective immediately, and a letter to the Office of the Dean. By registering in this course, each one of you is explicitly agreeing to abide by and adhere to the above statements on academic integrity.
If you use materials that you've obtained on the Internet, from a book, etc., you must include an appropriate reference. To use such materials without proper attribution is a form of plagiarism.
See page 73 of the Student Information Guide, available at http://www.rowan.edu/studentaffairs/infoguide/, for the University's policies on using Turnitin.com. Other University policies are available on the Provost's Web page http://www.rowan.edu/provost/policies/.
Be on time. If you are late, we will all clap and give you a cheer, ``Glad you finally made it to class!'' You will be charged a half day of attendance.
Do not eat in class. If you do, you will be charged a half day of attendance and you will walk to the trash can to throw your food away. Coffee, tea, and water are okay; any slurping, though, and you will walk to the trash can to throw your drink away.
Do your best to remain in the room during class. If you must leave early, let me know before class starts; otherwise, you will be charged a half day of attendance.
Turn off or put into vibrate mode cell phones, PDAs, and pagers. You will receive a warning the first time your cell phone, PDA, or pager goes off in class or lab. If it happens again, you will be fined $20 (twenty dollars), which will be contributed to the Rowan University Foundation. If it happens yet again, you will be fined $20 and asked to leave for the rest of that class meeting.
Cell phones must be stored away in pockets, purses, or knapsacks; if on the desk, they must be face down. Wherever your cell is, your hands and fingers are not on it, i.e., no texting in class.
Laptops are okay for note taking, but not for music, instant messaging, game playing, or surfing the Web. Turn off the sound of laptops. If I catch you using a laptop for other than note taking, or if I call on you to answer a question and you are so engrossed in your laptop that you do not answer, you will be charged a half day of attendance.
The same policy about laptops applies when class meets in a room where each student has a computer, for example Robinson 312/325.
This schedule is approximate only and will be filled in as we go along. Please see the announcements page for when each exam is scheduled and each project is due and for what each will cover.
Section 1:
| Topic | Week # | Date | Deliverables |
|---|---|---|---|
| Administrative Matters: syllabus | 1 | Sep 1 | |
| Introduction and Overview | Sep 3 | ||
| 2 | Sep 8 | ||
| Chapter 1, What is an Operating System? | Sep 10 | ||
| Section 2.1, Processes | 3 | Sep 15 | |
| Sep 17 | |||
| 4 | Sep 22 | ||
| Sep 24 | Exam 1 | ||
| Section 2.2, Threads | 5 | Sep 29 | |
| Section 2.4, Scheduling | Oct 1 | ||
| 6 | Oct 6 | ||
| Oct 8 | Exam 2 | ||
| 7 | Oct 13 | ||
| Section 3.1, No Memory Abstraction | Oct 15 | ||
| Section 3.2, Address Spaces | 8 | Oct 20 | |
| Oct 22 | Exam 3 | ||
| Section 3.3, Virtual Memory | 9 | Oct 27 | |
| Oct 29 | |||
| Election Day no class | 10 | Nov 3 | |
| Nov 5 | |||
| 11 | Nov 10 | ||
| Nov 12 | Exam 4 | ||
| 12 | Nov 17 | ||
| Nov 19 | |||
| Chapter 4, File Systems | 13 | Nov 24 | |
| Thanksgiving no class | Nov 26 | ||
| 14 | Dec 1 | ||
| Dec 3 | Exam 5 | ||
| Chapter 5, Input/Output | 15 | Dec 8 | |
| Dec 10 | Last Assignment due | ||
| Comprehensive Final Exam: 2:45--4:45pm, Thursday, December 17, in Education 3102 |
It is very useful to have contact information for some of the other people in the class if you miss a class or can't figure something out.
Take out a piece of paper and write down on it the names, phone numbers, and e-mail addresses of two nearby class members.
Name ______________________________________ Phone ___________________ E-Mail _______________
Name ______________________________________ Phone ___________________ E-Mail _______________
home page:
http://elvis.rowan.edu/~hartley/index.html
e-mail:
hartley@elvis.rowan.edu