| Assignments | Contact Info | Computer Club |

22908 CSC 3080A - 0 - Operating Systems

Spring 2012
On Line Course
Herbert J. Bernstein (yaya@dowling.edu)

Syllabus

 


This web page is http://www.bernstein-plus-sons.com/.dowling/CSC3080S12/CSC3080_Syllabus.html
Copyright © 2002, 2003, 2005, 2012 Herbert J. Bernstein and other parties. All rights reserved. ?


This is the syllabus for CSC 3080A for Spring 2012. As the course moves forward, students should return to this page frequently for updated material.

Catalog description:

CSC 3080A. Operating Systems

3 credits

Introduction to the structure of multiprogramming computer operating systems. Topics include: memory management, multiprogramming, virtual memory, paging, segmentation, job and process scheduling, concurrency, sharing, synchronization, processor management, deadlock detection and avoidance, device and file management. Prerequisite: CSC 1024N or permission of the Mathematics and Computer Science Department chair.

This Spring 2012 section is:

Operating Systems - 22908 - CSC 3080A - 0
Associated Term: Winter/Spring 2012
Registration Dates: Nov 14, 2011 to May 14, 2012
Levels: Undergraduate
Attributes: Liberal Arts
Instructors: Herbert J. Bernstein (P)

Dowling On Line Campus
Lecture Schedule Type
On Line Instructional Method
3.000 Credits
View Catalog Entry

Scheduled Meeting Times
Type Time Days Where Date Range Schedule Type Instructors
On line TBA   Internet teaching on line LINE Jan 27, 2012 - May 14, 2012 Lecture Herbert J. Bernstein (P)E-mail

Instructor:

Office Hours:

Note that, in general, Dr. Bernstein will be at the Brookhaven campus on Monday, Tuesday and Thursday afternoons and on the Oakdale campus on Wednesday afternoons. Meetings on the Oakdale campus will be in KSC 103. Meetings at the Oakdale campus are by appointment only.

For more information see http://www.bernstein-plus-sons.com/.dowling/HJB_Contact_Info.html.

Text:

Recommended Reading:

The four volume Knuth set is an essential reference for any serious computer scientist. There will be no specific assignments from Knuth, but reading it may well help in understanding the required text and the lectures and to get ready for a career in Computer Science.

The Gottfried book is an inexpensive C text and will help with the most important language used for modern operating systems.

Required Supplies:

A hard bound laboratory notebook. An inexpensive back-and-white covered composition book will suffice but it must be bound (not looseleaf).

Keeping clear written records is an important part of working in any scientific field. It is particularly important in Computer Science, where there are very complex, non-obvious decisions to make.

Students are expected to have their text books no later than the second week of class.

Required Computer Accounts:

Each student has a Dowling College email account. In addition, each student is required to sign-up for a Google gmail account, so that they will have access to Google Sites and Google Blogger (blogspot.com). There will be a common course blog at http://yayahjbcsc3080s12.blogspot.com. In addition, each student is required to maintain their own blog for the course. Once you have a gmail account, you should create a blog for the course using your gmail user name followed by CSC3080S12. You will use the blog to discuss your own progress and to maintain useful brief notes for the course.

You will also need a Google Sites account to post your assignments and to maintain notes that are not appropriate for your course blog. There will be a common course web site at https://sites.google.com/site/yayahjbcsc3080s12/. Each student is required to maintain their own course web site, to which they will post their assignments. Once you have a gmail account, you should create a Google Sites course web page using your gmail user name followed by CSC3080S12.

In addition, each student will have an account on a unix system at Dowling College, on arcib.dowling.edu. Those accounts will be useful in running compilers and practicing creation of web pages.

Attendance:

This is an online class, with no on-site meetings. The major risk in taking an on line course is in failing to make steady progress through the semester. Therefore, all students are required both to demonstrate their progress with on-line quizzes and to attend at least one online meeting every 2 weeks with the instructor to discuss the work they are doing for this class. Students are encouraged to schedule these online meetings in groups via Skype, but they may meet the requirement with individual Skype meetings or by on-site meetings during office hours.

Students who fail to maintain regular contact with the instructor prior to the midterm will get a midterm warning and be advised to withdraw from the course.

Grading Policy:

The weekly quizzes are open-web, open-book, open-notes quizzes, but that won't work in your favor if you don't do the reading.

Every student will be required to maintain a contemporaneous hardbound notebook recording all significant activities related to this course. The notebook should record the major topics discussed, questions about the subject matter of the course and the answers when they are found, and all activities related to the course project (see below).

You will be required to show your notebook to the instructor via Skype.

In general, no assignments will be accepted late and no makeups will be given for missed quizzes or examinations. Requests for exceptions to this policy will be considered only for the most pressing reasons (illness requiring hospitalization, death in the family, reserve call-up, etc.), must be submitted in writing or by email in a timely manner, and will be granted only if the instructor has sound reason to believe that the student is highly likely to master the material of the course within the current semester.

Students will be required to complete a systems-related programming project. The "default" project is to create a "shell". An open-book midterm and an open-book, open computer/calculator final will be given. In general, no assignments will be accepted late and no makeups will be given for missed quizzes or examinations. Requests for exceptions to this policy will be considered only for the most pressing reasons (illness requiring hospitalization, death in the family, reserve call-up, etc.), must be submitted in writing in a timely manner, and will be granted only if the instructor has sound reason to believe that the student is highly likely to master the material of the course within the current semester.

Course Syllabus

The syllabus and the course objectives that follows are derived in part from the IEEE/ACM "Computing Curricula 2001 Computer Science" - Final Report - (December 15, 2001) by the Joint Task Force on Computing Curricula, IEEE Computer Society, Association for Computing Machinery.

Course Objectives

Projects

Each student will be expected to display a solid grasp of systems programming by working on a suitable project. Students may propose their own project no later than the 4th week of class. If no project is proposed, the instructor will assign a project involving the design and creation of a useful shell under Linux or Windows.

Some students may not have an adequate preparation in programming to undertake the homework assignments and the course project. In general systems programming is most comfortably done in C or some other language with explicit access to pointers and with manually controlled garbage collection. However, a good knowledge of, say, java, should be enough for most students to adapt to the demands of the course. For those students who have difficulty in breaking free of the strictures and conventions of java, it may help to consult:

http://www.cs.cornell.edu/Courses/cs414/2002SP/tutorials/cforjava.htm

from the Cornell University CS414 Operating Systems course by Emin Gün Sirer. Our thanks to Gueorgui Kitchoukov for pointing out this useful resource.

Assigments

Please consult the course assigments page frequently.

Programming Examples

Review of Java

Click here for a review of java.

Secure Remote Access with GUI

Using VNC via SSH: vnc.html

Dowling Computer Club

If you're interested in joining with your fellow students in developing and maintaining a web site, or pursuing your exploration of computer hardware or software, you might want to consider joining the Dowling Computer Club. Just follow the link for further details:

Dowling College Computer Club Web Site


Updated 26 January 2012.
yaya@dowling.edu