Operating System I – Fall 2017

CSCI 3271

Clément Aubert

November 28, 2017

Quick Facts: Class meet Tue. & Thu., 1 – 2:15pm in AH E151, the instructor can be reached at caubert@augusta.edu, his office (AH E-128) hours are Mon. & Thu. 2:30 – 4:30pm, and you can download this syllabus for offline consulting.

Homeworks: Homework #1, Homework #2 (Makefile, C source code), Homework #3, Homework #4, Homework #5 (thread_pb1.c, signal_pb1.c), Homework #6 (mutex_pb1.c), Homework #7.

Snippets: fork, pipe, thread.

Documents: Process Synchronization, Memory Managment & Memory Virtual Memory – A survey


Presentation

Course Description

This course is a study of computer operating systems and related computer architecture topics. We will answer questions such as “What is an operating system?”, “What does an operating system do?”, “How does it do it?”, or “What are the tradeoffs of particular operating system design decisions and implementation?”. Topics include basic networking, process management, scheduling, synchronization, deadlock, memory management, virtual memory, disk management, file systems, I/O, and protection.

Learning Outcomes

Upon successful completion of this class, the student will:

Format and Procedures

Lectures are devoted to general explanations of the concepts and ideas underlying the topic at stake. All practical work, coding, programming, testing, etc. will be carried at home: no laptop or similar electronic device is allowed during the lectures. This policy will help you to improve your grades, increase memorization and to be more respectful of your classmates. Homework assignments will assist the students in making sure they understand classes expectations and the content of the lecture, as well as to practice their coding and problem-solving skills.

Teaching Philosophy

It is our mutual interest for you to succeed: I love to share knowledge and to expand it by helping students, and students want to gain a useful and agreeable experience that will prove valuable in their future endeavors. To this end, here is:

What I’m expecting from you

  • Check the announcements periodically on the class website.
  • Read this entire syllabus carefully.
  • Participate actively in all class discussions.
  • Do the homework wisely: read your notes before starting the homework assignment, make sure you understand it completely before considering it done.
  • Come prepared and on time to classes, exams and quizzes.

What you should expect from me:

  • Clear and accessible lectures.
  • Fair and impartial grading.
  • Availability, during office hours, by appointment, and by email.
  • Dedication to your success!

Course Requirements

This class is an on-campus class. You are responsible for all course material, whether or not you attend lectures or do the assigned reading or coursework. Class attendance is not mandatory, but highly recommended. Additional resources will be used on a regular basis. The progression of the students will be regularly tested and assessed through quizzes and tests, as well as impromptu questions in class. Active participation during the lectures is appreciated and encouraged.

Practical Information

Time and Place

Tuesday and Thursday, 1 – 2:15pm in Algood Hall, E-151.

Instructor

Name Dr. Clément Aubert
Office Algood Hall E-128
Phone 706-737-1566
Email
Office Hours Monday & Thursday 2:30 – 4:30pm and by appointment
Institute School of Computer and Cyber Sciences vice Hull College of Business

Feel free to drop by when I’m in my office, but be aware that I may be busy, too: if you have multiple questions or if your question requires more than 5 minutes to be exposed and answered, please arrange an appointment with me.

Tutoring

Mitchell Williams is the tutor for Computer Science. You can find him in the Academic Success Center on the first floor of University Hall,

For more tutoring resources, consult the tutoring center.

Grades

Students will be evaluated using three different types of evaluation:

  1. Seven homework assignments will be given during the course of the semester: they are not expected to be handed back, and won’t be graded, but seven quizzes with questions taken from those assignments will be given. Those quizzes happen every other Thursday (see the planned schedule), are closed book and timed (5 – 20 min.).

  2. There will be two in-class exams, held during the regular class periods on Thursday 09/28 and Thursday 11/09.

  3. The final exam will take place during the exam period, i.e., Thursday 12/14, 2 – 4pm.

Your grade will be computed as follows:

Quizzes (×7) 20%
In-class Tests (×2) 40%
Final Exam 40%

using the following course grade scale:

90 – 100 A
80 – 89 B
70 – 79 C
65 – 70 D
Below 65 F

It is the student’s responsibility to initiate a withdrawal before midterm (i.e., Wed, Oct 11th), but I reserve the right to withdraw a student that missed 10% of class time and half of the quizzes and tests. A student not withdrawn from a course who stops attending class (or who never attends class) is subject to receiving a grade of WF or F.

Any student missing the final exam without an documented excuse (brought to me or to the dean of Student Life) or who has not taken action to withdraw will receive a grade of F. In case of an documented emergency at the time of the final, the student may be allowed to receive a grade of I.

All coursework is individual coursework, no make up quizzes or tests will be allowed.

Planned Course Schedule

Week Date Topic Chapter Note
1 08/14 Syllabus N/A -
2 08/21 Introduction to Operating System & Set-up 1 – 2.2 Homework #1 released
3 08/28 Continued - -
4 09/04 System Calls 2.3 – 2.4 09/04 is Labor Day, Homework #2 released, Thu. 09/07 quiz #1
5 09/11 OS design, Implementation and Structure 2.5 – 2.11 -
6 09/18 Process, Schedulers, and Inteprocess Communication 3.1 – 3.4 Homework #3 released, Thu. 09/21 quiz #2
7 09/25 Networking Basic & Review session 3.6 – 3.7 Thu. 09/28 Exam #1
8 10/02 Threads, Multithreading, Thread Librairies 4 Homework #4 released, Thu. 10/05 quiz #3
9 10/09 Process Synchronization 5 10/11 is midterm, 10/12 – 10/13 is Student Fall Pause
10 10/16 Continued - Homework #5 released, Thu. 10/19 quiz #4
11 10/23 CPU Schelduling 6 -
12 10/30 Continued - Homework #6 released, Thu. 11/02 quiz #5
13 11/06 Review Session - Thu. 11/09 Exam #2
14 11/13 Memory Managment 7 Homework #7 released, Thu. 11/15 quiz #6
15 11/20 Virtual Memory 8 11/22 – 11/24 is Thanksgiving
16 11/27 File System 9 – 12 Thu. 11/30 quiz #7
17 12/04 Wrapping up & Review Session - Wed. 12/06 is end of class
18 12/11 - - Thu. 12/14, 2 – 4pm, is final

This schedule is subject to change and enhancements, but provide an indication of the pace, assignments, and major deadlines that you will need to plan for the semester.

Additional Material and Resources

Textbook

Operating System Concepts Essentials, (2nd Edition) by Siberschatz and Galvin, Wiley, 2013, ISBN: 978-1-118-80492-6

Book can be purchased through JagStore, select

Online Resources

Homework Assignments

Check the schedule for more information.

Snippets of Code

Document Shared in Class

Miscellaneous