CMP642 - OPERATING SYSTEMS THEORY

Course Name Code Semester Theory
(hours/week)
Application
(hours/week)
Credit ECTS
OPERATING SYSTEMS THEORY CMP642 Spring 3 0 3 9
PrequisitesNone
Course languageEnglish
Course typeElective 
Mode of DeliveryFace-to-Face 
Learning and teaching strategiesLecture
Discussion
Question and Answer
Experiment
 
Instructor (s)Prof. Dr. Ali Saatçi, Dr. Ahmet Burak Can 
Course objectiveTo teach basic concepts of operationg systems and operationg systems infrastructure. 
Learning outcomes
  1. 1. Students will be able to define basic concepts of operating systems.
  2. 2. Students will be able to understand operating systems infrastructure and interpret operations in sub layers of operating systems 3. Students will obtain a basic level of experience in operating systems programming.
Course ContentBasic operating systems concepts, Input/Output subsystem, Process Management, Process syncronization, Memory management, File management, Distributed processing and network infrastructure, Operating Systems Kernels, Multi processor architectures 
ReferencesBilgisayar İşletim Sistemleri, Ali Saatçi, 2. Baskı, Bıçaklar Kitabevi.

Modern Operating Systems, Andrew Tanenbaum, 3rd edition,Pearson Education.

Operating System Design, Avi Silberschatz, Peter Baer Galvin, Greg Gagne, 8th edition, John Wiley & Sons, Inc.
 

Course outline weekly

WeeksTopics
Week 1Basic operating system concepts, operatin systems layers
Week 2Input/Output subsytem
Week 3Processes, Process queues, Process scheduling, Threads
Week 4Low level synchronization methods, Semaphores
Week 5High level synchronization methods, pipe() call
Week 6Primitive memory management methods, Paged memory management
Week 7Virtual memory management, Segmented memory management
Week 8File/directory concept, Primitive file management systems, MS-DOS FAT
Week 9Midterm exam
Week 10UNIX file management system, Backup methods, RAID systems
Week 11TCP/IP network infrastructure, Connection-oriented and connectionless communication
Week 12Operating systems kernel architectures
Week 13Operating systems on multi processor architectures
Week 14Distributed operating systems architectures
Week 15Final exam preparation
Week 16Final exam

Assesment methods

Course activitiesNumberPercentage
Attendance00
Laboratory00
Application00
Field activities00
Specific practical training00
Assignments00
Presentation00
Project325
Seminar00
Midterms120
Final exam150
Total95
Percentage of semester activities contributing grade succes050
Percentage of final exam contributing grade succes050
Total100

WORKLOAD AND ECTS CALCULATION

Activities Number Duration (hour) Total Work Load
Course Duration (x14) 14 3 42
Laboratory 0 0 0
Application000
Specific practical training000
Field activities000
Study Hours Out of Class (Preliminary work, reinforcement, ect)149126
Presentation / Seminar Preparation000
Project32060
Homework assignment000
Midterms (Study duration)11515
Final Exam (Study duration) 12525
Total Workload3372268

Matrix Of The Course Learning Outcomes Versus Program Outcomes

D.9. Key Learning OutcomesContrubition level*
12345
1. Graduates should have a mastery of computer science as described by the core of the Body of Knowledge.    X
2. Graduates need understanding of a number of recurring themes, such as abstraction, complexity, and evolutionary change, and a set of general principles, such as sharing a common resource, security, and concurrency.     X
3. Graduates of a computer science program need to understand how theory and practice influence each other.    X
4. Graduates need to think at multiple levels of detail and abstraction.     X
5. Students will be able to think critically, creatively and identify problems in their research.    X
6. Graduates should have been involved in at least one substantial project.     X
7. Graduates should realize that the computing field advances at a rapid pace.    X 
8. Graduates should conduct research in an ethical and responsible manner.  X   
9. Graduates should have good command of technical terms in both Turkish and English.  X  
10. Graduates should understand the full range of opportunities available in computing.   X 
11. Graduates should understand that computing interacts with many different domains.    X 
12. Graduates should develop the knowledge acquired at master level and apply scientific methods in order to solve scientific problems.  X   

*1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest