COP4610: Operating Systems & Concurrent Programming up ↑

Syllabus

Spring 2015

SPECIAL SCHEDULING NOTE

This version of this course is only offered in distance mode, and is intended primarily for experienced distance-learning students. There is also an on-campus face-to-face version of the course. While on-campus students are permitted to register for the distance-learning verison, they need to understand that the assignments and examinations, as well as the mode of instruction, differ from the on-campus version. All students in the distance-mode version will be expected to already be familiar with the mechanics of taking a distance learning course at FSU, using the Blackboard system, and to have the self discipline and study skills necessary to succeed in a course that does not have classroom meetings.

Regular participation via the campus.fsu.edu ( Blackboard) course interface is required. Official course announcements, lecture materials, assignments, and help archives will all be on-line, accessible via the Blackboard course web site. All registered students should have course web site listed on their Blackboard portal page. Be sure to test this and resolve any difficulties no later than the first week of classes.

All exams must be proctored and taken during the exam window. It is the student's responsibility to arrange for proctored exams in compliance with the FSU standards. (See Course Policies below for details.) All exams must be taken by appointment at your pre-approved proctored testing site within the online exam window. (See Grading & Exam Schedule below.)

Note that students may be required to identify themselves with official FSU ID to sit an exam.

INSTRUCTORS

Instructor: Ted Baker
Office: (working from home in Tallahassee)
Telephone: phone image
Email: baker e-mail image
Mail & Delivery: 3470 Lakeshore Drive
Tallahassee, FL 32312
Mentor: Dannielle Anderson
Email: anderson e-mail image

COURSE OBJECTIVES

Upon successful completion of the course the student should be able to:

  1. Define, explain, and correctly apply introductory concepts and terminology of operating systems.
  2. Use portable Unix/POSIX shell commands, and write portable shell scripts.
  3. Write a program using the C-language Unix/POSIX standard portable application program interface to the operating system.
  4. Design and implement a correct concurrent program requiring synchronization, with processes and/or threads.
  5. Explain and apply certain key OS implementation techniques and components, including:
    1. system calls
    2. kernel modules
    3. process management
    4. synchronization primitives
    5. interprocess communication
    6. memory management
    7. I/O systems
    8. file systems

COURSE RESOURCES (subject to expansion and/or revision)

  1. Text [SGG]: Operating System Concepts, 9th Edition, by Silberschatz, Galvin, and Gagne, published by John Wiley & Sons, 2013 [ISBN: 978-1-118-12938-8], and the authors' student resource web site ( http://codex.cs.yale.edu/avi/os-book/OS9), including lecture slides.
  2. Instructor's Course Information Site: http://www.cs.fsu.edu/~baker/opsys, including a study guide and supplemental course notes, and links to information about assignments.
  3. Course Communication Site: the Blackboard site for this course, at http://campus.fsu.edu.
  4. The Single UNIX Specification, Version 4: http://www.unix.org/version4/, and the Linux man pages.

COURSE OUTLINE

Topic Reference
1. Introduction Chapter 1 of SGG
2. OS Overview Chapter 2 of SGG
3. Processes Chapter 3 of SGG
4. Threads Chapter 4 of SGG
5. CPU Scheduling Chapter 5 of SGG
6. Process Synchronization Chapter 6 of SGG
7. Deadlocks Chapter 7 of SGG
8. Physical Memory Chapter 8 of SGG
9. Virtual Memory Chapter 9 of SGG
10. File System Interface Chapter 10 of SGG
11. File System Implementation Chapter 11 of SGG
12. Mass Storage Structure Chapter 12 of SGG
13. I/O Systems Chapter 13 of SGG
15. Security Chapter 15 of SGG

GRADING & EXAMINATIONS

Grades will be assigned based on the components and weightings shown in Table 1. The proposed examination schedule, subject to approval by the FSU DL Testing Center, is shown in Table 2. The conversion between numeric scores and letter grades is shown in Table 3.

Table 1: Course Grade Components
Item Percent
Quizzes 10
Programming Projects 40
Midterm Exam #1 20
Midterm Exam #2 20
Final Exam 10
NOTES:
  1. The exam windows run Mon - Sat only. These windows cannot be widened or otherwise changed. It is very important to check with your testing center to verify that the exam can be taken in the window. Changing testing centers may be necessary, but requires planning in advance.
  2. FSU Testing requires that you register your test site within the first two weeks of classes. Be sure to take care of that promptly.
  3. Deadlines for deliverables are firm. The deadline for each assignment will be listed in the course calendar. The instructor or grader will have discretion as to whether to allow a window for late submissions, on an assignment-by-assignment basis. If late submissions are allowed, scores will be reduced by 5% for each day late.
  4. Only one submission of each assignment will be graded. Do not expect the grader to pick the "best" version. If multiple versions of an assignment are submitted before the deadline, the last version submitted will be retained and graded. However, if you submit more than one version, and the last version comes in after the deadine, you can no longer rely that it will be the one graded. The grader may start testing your assignment at any time after the deadline, and will test whatever version was last turned in up to that time. If you turn in another version after that, it will not be graded. For example, suppose you turn in Version A of your solution, perhaps before the deadline, then discover that it has defects, try to fix the defects, and turn in Version B after the deadline. It is possible that either version A or version B will be graded.
  5. You must earn an average grade of at least C- (70) on both exams and programming assignments, separately, in order to earn a final course grade of C- or better. In addition, you must submit a working version of every assignment in order to be eligible for the grade of A or A-.

For further information on grading policy and exams, see the Study Guide.

Table 2: Exam Schedule
Exam On-Line Window (Dates Inclusive)
Midterm Exam #1 Mon 2/16 - Sat 2/21
Midterm Exam #2 Mon 4/13 - Sat 4/18
Final Exam Mon Apr 27 - Sat May 2
Table 3: Letter Grades
Percent Grade
93 - 100 A
90 - 92 A-
88 - 89 B+
83 - 87 B
80 - 82 B-
78 - 79 C+
73 - 77 C
70 - 72 C-
68 - 69 D+
63 - 67 D
60 - 62 D-
0 - 59 F

COURSE POLICIES

First Day Attendance Policy: Official university policy is that any student not attending the first class meeting will be automatically dropped from the class. For distance students, this policy is interpreted as and completing a single-question true/false quiz on the first day of classes for the semester, in BlackBoard.

Regular Attendance Policy: The university requires attendance in all classes. Attendance in distance classes shall mean regular access to the course web site via campus.fsu.edu and regular participation in the class discussion forums. Here, "regular" shall mean a substantial amount of time on a weekly basis. Note that individual access statistics are maintained by Blackboard.

Proctored Exam Policy: All exams must be proctored and taken at an approved testing site during the exam window. It is the student's responsibility to arrange for proctored exams in compliance with the FSU standards. Go to the FSU distance learnling student responsibilities page ( http://distance.fsu.edu/student-responsibilities) for complete information on setting up a proctored exam site. Please note also that students taking exams on main campus in Tallahassee are now required to sign up for a time slot at the site.

Exam Makeup Policy: An exam missed without an acceptable excuse will be recorded as a grade of zero (0). The following are the only acceptable excuses:

All excuses must be submitted in writing, must be signed by the excusing authority, and must include complete contact information for the authority, including telephone numbers and address.

Missed exams with acceptable excuse will be made up or assigned the average grade of all other exams, at the option of the course instructor.

Missed, and acceptably excused, final exams will result in the course grade of 'I' and must be made up in the first two weeks of the following semester.

Grade of 'I' Policy: The grade of 'I' will be assigned only under the following exceptional circumstances:

Completeness of Work Policy: See the note above, regarding the requirement to pass both exams and programming assignments independently to pass the course, and the requirement to submit working versions of all programming assignments to earn a grade of A- or higher.

ACADEMIC HONOR POLICY

The Florida State University Academic Honor Policy outlines the University's expectations for the integrity of students' academic work, the procedures for resolving alleged violations of those expectations, and the rights and responsibilities of students and faculty members throughout the process. Students are responsible for reading the Academic Honor Policy and for living up to their pledge to ". . . be honest and truthful and . . . [to] strive for personal and institutional integrity at Florida State University." (Florida State University Academic Honor Policy, found at http://fda.fsu.edu/Academics/Academic-Honor-Policy.)

All students are expected to uphold the Academic Honor Policy. Please note the following items are defined and made violations by the policy:

  1. Plagiarism
  2. Cheating
  3. Unauthorized Group Work
  4. Fabrication, Falsification, and Misrepresentation
  5. Multiple Submission (for different courses)
  6. Abuse of Academic Materials
  7. Complicity in Academic Dishonesty
  8. Attempting any of the above

Violations of the academic honor policy may result in failing grades and/or dismissal from the university. All students are expected to read and understand the policy.

Checking for Plagiarism: FSU subscribes to several databases of papers and computer source code that have been previously published or turned in for credit in university courses worldwide. Student work may be checked in one or more of these databases for originality. Note that turning in work that contains uncited quoted material from any source is considered plagiarism and a violation of the FSU honor code.

Additional information on the Academic Honor Policy as it applies to this course and programming assignments is provided in the Study Guide.

AMERICANS WITH DISABILITIES ACT

Students with disabilities needing academic accommodation should:
(1) register with and provide documentation to the Student Disability Resource Center; and
(2) bring a letter to the instructor indicating the need for accommodation and what type. This should be done during the first week of class.

This syllabus and other class materials are available in alternative format upon request.

For more information about services available to FSU students with disabilities, contact the:

Student Disability Resource Center
874 Traditions Way
108 Student Services Building
Florida State University
Tallahassee, FL 32306-4167
(850) 644-9566 (voice)
(850) 644-8504 (TDD)
sdrc@admin.fsu.edu
http://www.disabilitycenter.fsu.edu/

EMERGENCY MANAGEMENT INFORMATION

Information regarding the status of FSU in an emergency situation may be obtained from the following sources:

Any specific information related to this class will be posted on the course web site or sent via email to your fsu email address.

SYLLABUS CHANGE POLICY

Except for changes that substantially affect implementation of the evaluation (grading) statement, this syllabus is a guide for the course and is subject to change with advance notice. Such notice will be in the form of a posting to the course web site on campus.fsu.edu.

COMMUNICATION

If you are experiencing difficulty or are concerned about your progress, please contact thementor or instructor right away. Problems are usually easier to solve when they are addressed early.

Participate regularly in the Blackboard discussion forums for the course.

Also check regularly for electronic mail sent to you containing information about this course. For this course, we will only trust as authentic e-mail sent from a cs.fsu.edu or fsu.edu account, and any notifications regarding the course will be sent to one of those accounts. If you ordinarily read your e-mail using another account, you should set up automatic e-mail forwarding from your cs.fsu.edu and your fsu.edu accounts to that other account, and if you need to contact the instructor or mentor, you should send the e-mail from one of your FSU accounts.

Please use the appropriate Blackboard discussion forum for for questions related to the course content and assignments, rather than sending sending e-mails directly to the instructor or mentor. Reserve e-mail for issues of specific personal nature, such as reasons missed exams and questions of about the grading of your work.

Do not communicate about assignments with other students, or anyone other than the instructor and mentor, except via the Blackboard discussion forum for that assignment. Direct communication between students about assignments is a violation of the Academic Honor Policy.

Additional information on communications and the Web sites, as well as other topics covered in this syllabus, is provided in the Study Guide.

T. P. Baker. ($Id)