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: |
GTA: Ramya Pradhan Ramya.pradhan@knights.ucf.edu UGTA: Gunavardhan Darimidi vardhan1991@gmail.com |
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_Fall2013/index.html
The assignments and the other announcements will be posted on the course web site |
Classroom: | HPA 0125 (Health and Public Affairs building) |
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, 2011 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 * FHW2, 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. |
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. |
Date
|
Topic
|
Lecture Notes, Readings, Homeworks
|
Aug 19.
|
Class organization
Introduction: a history of operating systems |
[slides] Introduction to operating systems
|
Aug. 21
|
-introduction (cont'd)
|
|
Aug. 26
|
Operating system structures
|
[slides] Operating system structures
|
Aug. 28
|
-OS structures (cont'd)
|
|
Sep. 2
|
Labor day
|
|
Sep. 4
|
Processes
|
[slides] Processes
|
Sep. 9 |
|
|
Sep. 11
|
|
|
Sep. 16
|
Threads |
[sample] the C file written in class [slides] Threads [homework] Homework 1 [sample] How to tokenize a string for a shell. [reading] Fork, exec, system [reading] Very gentle intro to the Linux command line [reading] How to compile a C/C++ program from the command line |
Sep. 18
|
-threads (cont'd)
|
|
Sep. 23
|
Processor scheduling
|
[slides] Processor scheduling
[reading] Josh Aas: Understanding the Linux 2.6.8.1 CPU Scheduler |
Sep. 25
|
Process synchronization
|
[slides] Process synchronization
|
Sep. 30
|
-process synchronization (cont'd)
|
[sample] the Java files written in the class (semaphore, synchronized keyword) |
Oct. 2
|
Midterm exam 1: Introduction and processes
|
|
Oct. 7
|
|
|
Oct. 9
|
|
|
Oct. 14
|
Main memory
|
[slides] Main memory
|
Oct. 16
|
|
-main memory (cont'd)
|
Oct. 21
|
Virtual memory
|
[slides] Virtual memory [slides] Additional slides about page replacement algorithms |
Oct. 23
|
-Virtual memory (cont'd)
|
|
Oct. 28
|
Midterm exam 2 - Memory
|
|
Oct. 30
|
File systems
|
[slides] File systems
|
Nov. 4
|
-file systems (cont'd)
|
|
Nov. 6
|
File system implementation
|
[slides] File system implementation |
Nov. 11
|
Veterans day
|
|
Nov. 13
|
|
|
Nov. 18
|
Mass storage systems |
[slides] Mass storage systems [homework] Homework 2 [code] Starting code for HW2. |
Nov. 20
|
Protection
|
[slides] Protection
|
Nov. 25
|
Case study: Microsoft Windows 7 / Windows 8
|
[slides] Case study: Windows
|
Nov. 27
|
Case study: Linux
|
[slides] Case study: Linux
|
Dec. 2
|
Case study: Android OS
|
|
|
Monday, December 09, 4:00 - 6:50pm Final exam |
|