Undergraduate
Faculty of Science and Letters
Mathematics And Computer Science
Anlık RSS Bilgilendirmesi İçin Tıklayınız.Düzenli bilgilendirme E-Postaları almak için listemize kaydolabilirsiniz.


Operating Systems

Course CodeSemester Course Name LE/RC/LA Course Type Language of Instruction ECTS
MB0034 Operating Systems 2/2/0 DE Turkish 5
Course Goals
The goals of this course are to teach students the fundamental tasks of a general-purpose operating system and the main approach and algorithms which the operating system employs in order to fulfill these tasks; to allow students to get familiar with managing computer hardware and by this way to equip them with basic information which allows them to develop system programs close to computer hardware.
Prerequisite(s) None
Corequisite(s) None
Special Requisite(s) Basic programming skills and (in order to follow the course resources) basic English knowledge are necessary and sufficient.
Instructor(s) Assist. Prof. Dr. Tayfun Kaynaş
Course Assistant(s) None
Schedule Monday, 15:00-16:45 Thursday, 15:00-16:45
Office Hour(s) Tuesday, 13:00-15:00 via IKU-CATS
Teaching Methods and Techniques - Lecture 

- Visual Presentation

- Implementation
Principle Sources - Andrew S. Tanenbaum, Modern Operating Systems, 3rd ed., Pearson Education, Inc, Upper Saddle River, NJ, 2009.
Other Sources
-  Abraham Silberschatz, Peter Galvin, Greg Gagne, Applied Operating System Concepts, 1st ed., John Wiley & Sons, Inc,  2000.

- J.Archer Harris, Operating Systems, Schaum’s Outline Series, McGraw-Hill, Inc, 2002.
Course Schedules
Week Contents Learning Methods
1. Week Overview of an Operating System, Historical Evolution of Operating Systems Oral and visual presentation
2. Week Process Management : Processes Oral presentation
3. Week Threads Oral presentation
4. Week Process Synchronization Oral presentation, practice
5. Week Critical Region and Solutions to Critical Region Problem : Software and Hardware-based Solutions, Semaphores Oral presentation, practice
6. Week Job Scheduling Algorithms-I Oral presentation, practice
7. Week Job Scheduling Algorithms-II Oral presentation, practice
8. Week Deadlocks Oral presentation, practice
9. Week Midterm Exam Exam
10. Week Memory Management : Paging Oral presentation, practice
11. Week Memory Management : Segmentation Oral presentation, practice
12. Week Virtual Memory, Demand Paging Oral presentation, practice
13. Week Page Replacement Algorithms Oral presentation, practice
14. Week Hard Disc Management, Input/Output Management Oral presentation
15. Week Finals Week Exam
16. Week Finals Week Exam
17. Week Finals Week Exam
Assessments
Evaluation tools Quantity Weight(%)
Midterm(s) 1 40
Final Exam 1 60


Program Outcomes
PO-1Interpreting advanced theoretical and applied knowledge in Mathematics and Computer Science.
PO-2Critiquing and evaluating data by implementing the acquired knowledge and skills in Mathematics and Computer Science.
PO-3Recognizing, describing, and analyzing problems in Mathematics and Computer Science; producing solution proposals based on research and evidence.
PO-4Understanding the operating logic of computer and recognizing computational-based thinking using mathematics as a discipline.
PO-5Collaborating as a team-member, as well as individually, to produce solutions to problems in Mathematics and Computer Science.
PO-6Communicating in a foreign language, and interpreting oral and written communicational abilities in Turkish.
PO-7Using time effectively in inventing solutions by implementing analytical thinking.
PO-8Understanding professional ethics and responsibilities.
PO-9Having the ability to behave independently, to take initiative, and to be creative.
PO-10Understanding the importance of lifelong learning and developing professional skills continuously.
PO-11Using professional knowledge for the benefit of the society.
Learning Outcomes
LO-1The student remembers previously learned basic knowledge about computer hardware and underlines the relationship between the hardware and the operating system.
LO-2The student understands how an operating system handles process management, memory management, input/output management and file management tasks; he/she also comprehends the working structure of the multithreading model.
LO-3The student notices the similarity of some administrative problems of an operating system to some real life problems; and to solve these problems he/she determines the appropiate algorithms or develops new ones.
LO-4The student implements the algorithms encountered in the operating systems using a modern programming language.
LO-5The student understands and gains detailed knowledge about the working principles of modern operating systems; using this knowledge he/she effectively manages computer hardware in his/her own developed system programs.
LO-6The student acquires introductory knowledge about parallel programming.
Course Assessment Matrix:
Program Outcomes - Learning Outcomes Matrix
 PO 1PO 2PO 3PO 4PO 5PO 6PO 7PO 8PO 9PO 10PO 11
LO 1
LO 2
LO 3
LO 4
LO 5
LO 6