COP4600 - Operating Systems

Fall 2014

Class description: Operating systems structure. Process management. Process scheduling. Memory Management. Virtual memory. I/O system. Performance Evaluation.
Instructor: Dr. Lotzi Bölöni
Graders: Salman Khokhar - slmnkhokhar@gmail.com
Arup K Ghosh - akghosh@cs.ucf.edu
Office: HEC - 319
Phone: (407) 243-8256 (on last resort)
E-mail: lboloni@eecs.ucf.edu (preferred means of communication)
Web Site: http://www.eecs.ucf.edu/~lboloni/Teaching/COP4600_Fall2014/index.html
The assignments and the other announcements will be posted on the course web site
Classroom: CB2 0204 (Classroom Building 2)
Class Hours: Monday, Wednesday 4:30PM - 5:45PM
Office Hours: Monday, Wednesday 6:00PM - 7:30PM
Pre-requisites: Some programming experience, general familiarity with computer organization and operating systems (as a user).
Textbook: Operating Systems Concepts Essentials, 2013 edition by Abraham Silberschatz, Peter B. Galvin and Greg Gagne
Grading: Homeworks: 25%, Quizzes: 5%
Midterm 1: 20%, Midterm 2: 20%, Final: 30%. Grading formula:
        HW = (HW1 + HW2 + HW3 + ...+ HWn) / n
        Q = (Q1 + ... + Qn) / n
        Overall = 0.25 * HW + 0.05 * Q + 0.2 * M1 + 0.2 * M2 + 0.3 * F
        
HW2, M2 etc are exactly the number you got, so if you got 112, that is what you put in.
Standard 90/80/70/60 scale will be used for final grades (curved if necessary).
All the exams are open book, open notes.
Sample exams Exams given in Fall 2013
[sample] Midterm 1
[sample] Midterm 2
[sample] Final
Note: the material covered in different exams depends due to different calendar positions of the exam and other factors. Furthermore, while the exams are representative of the style of the problems, you should not expect that the new exams are just variations with different data.
Integrity: All the quizzes, homeworks, and exams are individual work.
The division, college, and University are committed to honesty and integrity in all academic matters. We do not tolerate academic misconduct by students in any form, including cheating, plagiarism and commercial use of academic materials. Please consult the Golden Rule Handbook for the procedures which will be applied.
Verification of engagement: As of Fall 2014, all faculty members are required to document students' academic activity at the beginning of each course. In order to document that you began this course, please complete the following academic activity by the end of the first week of classes, or as soon as possible after adding the course, but no later than August 27. Failure to do so will result in a delay in the disbursement of your financial aid.
To satisfy this requirement, you must finish the first quiz posted online. Log in to Webcourses, choose COP 4600, and submit your answers online.


Syllabus

Date
Topic
Lecture Notes, Readings, Homeworks
Aug. 18
Class organization
Introduction: a history of operating systems
[slides] Introduction to operating systems
Aug. 20
-introduction (cont'd)

Aug. 25
Operating system structures
[slides] Operating system structures

Aug. 27
-OS structures (cont'd)

Sept. 1
Labor day

Sept. 3
Processes
[slides] Processes
[homework] Homework 1 - due Sept 15
[sample] How to tokenize a string for a shell.
[reading] Linux processes
[reading] Very gentle intro to the Linux command line
[reading] How to compile a C/C++ program from the command line

Sept. 8 Threads
[slides] Threads

Sept. 10
-threads (cont'd)

Sept. 15
Process synchronization
[slides] Process synchronization
Sept. 17


Sept. 22


Sept. 24
Processor scheduling
[slides] Processor scheduling
[reading] Josh Aas: Understanding the Linux 2.6.8.1 CPU Scheduler

Sept. 29
-process synchronization (cont'd)
Oct. 1
Midterm exam 1: Introduction and processes

Oct. 6


Oct. 8


Oct. 13
Main memory
[slides] Main memory
Oct. 15
-main memory (cont'd)
Oct. 20
Virtual memory
[slides] Virtual memory
[slides] Additional slides about page replacement algorithms
[homework] Homework 2 - Due November 10
[code] Starting code for HW2.

Oct. 22
-Virtual memory (cont'd)

Oct. 27
File systems
[slides] File systems
Oct. 29
Midterm exam 2 - Memory

Nov. 3
-file systems (cont'd)

Nov. 5
File system implementation
[slides] File system implementation

Nov. 10


Nov. 12


Nov. 17
Mass storage systems [slides] Mass storage systems

Nov. 19
Protection
[slides] Protection
Nov. 24
Case study: Microsoft Windows 7 / Windows 8
[slides] Case study: Windows
Nov. 26
Case study: Linux
[slides] Case study: Linux
Dec. 1
Case study: Android OS



Final exam Monday, December 08, 2014, 4:00 PM - 6:50 PM