Texas Tech University
Department of Computer Science
Instructor: Prof. Tommy Dang
Office hours: 10am - 11am TR and available to talk right after the class
Office: EC 306J
Course Name: Operating Systems
Course Number: CS 4352
Semester: Spring 2017
Class hours 11:00 am - 12:20 pm TR Jan 19, 2017 - May 16, 2017
Teaching Assistant (TA): Judas Tadeo
Office hours: 2:00-3:00pm MWF, Eng Center 202
Concepts and design of different components of operating systems.
Topics addressed include process management, scheduling and resource management, file systems, I/O, and security issues.
The objective of this course is to introduce various elements involved in the design and implementation of operating systems.
Computer use is required.
Operating systems structure.
Operating systems design and implementation.
Processes and threads.
Paging and virtual memory.
Expected Prior Knowledge and Skills:
Students should have done programming in C on a UNIX/Linux platform.
They should have taken courses on data structures and algorithms.
CS3375 Computer Architecture
CS3364 Design and Analysis of Algorithms
Learning outcomes and assessment methods:
Assessment methods of all of the above: exams, assignments, class contributions, and projects.
|Describe the historical development of operating systems
|Understand the role of hardware in supporting operating system functions
||c, i, j
|Obtain in-depth understanding of process management and threading
||c, i, j
|Understand and differentiate the different memory management techniques
||c, i, j
|Understand, compare, and contrast the different data storage techniques
||c, i, j
| Construct a program module for an operating system
||c, i, j
| Become proficient system programmers
||c, i, j
Students are expected to comply with the Texas Tech Code of Student Conduct in all aspects of this class. The Code of Student Conduct may be found from the Student Handbook and/or Office of Student Conduct.
In order to assure that all students have the opportunity to gain from time spent in class, unless otherwise approved by the instructor, students are prohibited from engaging in any other form of distraction, such as reading newspapers, working on other classes, taking cell phone calls, text messaging, and working on laptop computers. Inappropriate behavior in the classroom shall result, minimally, in a request to leave class.
Violations of conduct including academic dishonesty, foul language, and classroom citizenship are eligible to be reported to Student Judicial Services.
All submissions are graded according to the assignment guidelines, course policies, verbal instructions/explanations and materials given in class lectures.
The numeric breakdown of your final grade is computed as follows:
||four written assignments, weighing 6% each
||three projects, weighing from 8% to 10% each
A = 85 - 100%
B = 70 - 84%
C = 55 - 69%
D = 40 - 54%
F = 0 - 39%
|Week 1: 1/19
||- Course overview
|Week 2: 1/24 and 1/26
||- Syllabus highlights and history of operating systems (1.1-1.2)
- Computer hardware review and operating system concepts (1.3-1.5)
|Week 3: 1/31 and 2/2
||- Shell programming and systems programming (additional materials)
- System calls and operating system structure (1.6-1.8)
|Week 4: 2/7 and 2/9
|| - Processes, implementation, and thread model (2.1-2.2, additional materials)
- Thread implementation and interprocess communication (2.2-2.3)
|Week 5: 2/14 and 2/16
||- Semaphores and mutexes (2.3)
- Scheduling (2.4)
|Week 6: 2/21 and 2/23
|| - Memory abstraction and virtual memory (3.1-3.3) |
- Page replacement algorithms (3.4, additional materials)
|Week 7: 2/28 and 3/2
||- Paging systems and implementation (3.5-3.6)
- Segmentation (3.7)
|Week 8: 3/7 and 3/9
||- Files and directories (4.1-4.2)
- File system implementation (4.3, additional materials)
- Midterm review and assignments discussions
|Week 9: 3/14 and 3/16
|| Spring Break
|Week 10: 3/21 and 3/23
||- Midterm exam: class time, in classroom, covering chapter 1, chapter 2, and chapter 3
- File system management and optimization (4.4)
|Week 11: 3/28 and 3/30
||- Example file systems (4.5)
- Principles of I/O hardware and software (5.1-5.2)
|Week 12: 4/4 and 4/6
||- I/O software layers, disk structure, storage-class memory (5.3-5.4, additional materials)
- Disk scheduling, clocks, clock synchronization (5.4-5.5, additional materials)
|Week 13: 4/11 and 4/13
- User interfaces and power management (5.6-5.8)
- Security and basics of cryptography (9.1-9.5)
|Week 14: 4/18 and 4/20
||- Authentication, attacks, and defenses (9.6-9.10)
|Week 15: 4/25 and 4/27
||- Review and assignments discussions
|Week 16: 5/2 and 5/4
||- Open discussions
|Week 17: 5/13
||- Final Exam: 4:30 p.m. to 7:00 p.m., in classroom, covering chapter 4, chapter 5, and chapter 9.|
|1. Chapter 1 and 2
|2. Chapter 3
|3. Chapter 4
|4. Chapter 5
Topics and/or dates may be changed during the semester at the instructor’s discretion because of scheduling issues, developments in the discipline, or other contingencies.
|1. Shell programming, process and multithreading on Linux
|2. Process and multithreading on Linux
|3. File system utility on Linux
Modern Operating Systems
by Andrew S. Tanenbaum
Publisher: Prentice Hall
Attendance is required. Part of your grade is from your in-class participation/contribution. So, you should consider to go the all classes, make comments, and ask good questions.
Detailed information regarding the access will be announced later.
Absence due to religious observance:
The Texas Tech University Catalog states that a student may be excused from attending classes or other required activities, including examinations, for the observance of a religious holy day, including travel for that purpose. A student whose absence is excused for this purpose may not be penalized for that absence and shall be allowed to take an examination or complete an assignment from which the student is excused. (see p.51)
Absence due to officially approved trips:
The Texas Tech University Catalog states that the person responsible for a student missing class due to a trip should notify the instructor of the departure and return schedule in advance of the trip. The student may not be penalized and is responsible for the material missed. (see p.50)
Assignments are due when specified, but will be accepted late (with a 10-20% penalty) until graded work is returned. If you know you will be absent ahead of time, turn your assignment in early.
© Last revised: March 6th, 2017