Computer Programming
Course Details

KTO KARATAY UNIVERSITY
Trade and Industry Vocational School
Programme of Computer Programming
Course Details
Trade and Industry Vocational School
Programme of Computer Programming
Course Details

| Course Code | Course Name | Year | Period | Semester | T+A+L | Credit | ECTS |
|---|---|---|---|---|---|---|---|
| 03831191 | Operating Systems | 2 | Autumn | 3 | 2+1+0 | 5 | 5 |
| Course Type | Elective |
| Course Cycle | Associate (Short Cycle) (TQF-HE: Level 5 / QF-EHEA: Short Cycle / EQF-LLL: Level 5) |
| Course Language | Turkish |
| Methods and Techniques | Dersler, Uygulamalı Laboratuvar ve Alıştırmalar, Vaka Çalışmaları ve Gerçek Dünya Örnekleri, and Tartışma ve Problem Çözme Oturumları: |
| Mode of Delivery | Face to Face |
| Prerequisites | - |
| Coordinator | - |
| Instructor(s) | Lect. Abubakar MAYANJA |
| Instructor Assistant(s) | - |
Course Instructor(s)
| Name and Surname | Room | E-Mail Address | Internal | Meeting Hours |
|---|---|---|---|---|
| Lect. Abubakar MAYANJA | TSMYO-T213 | [email protected] | 7829 | Wednesday 11:00 - 12:00 |
Course Content
Introduction to Operating Systems, Computer System Structure and Process Management, Process Management and Threads, CPU Scheduling, Process Synchronization, Deadlocks, Memory Management and Virtual Memory, Storage Management, File Systems, Security and Protection, Distributed Systems and Cloud Computing,
Objectives of the Course
To understand the core principles of operating systems.
To explore the design and implementation of operating systems.
To gain practical skills in managing, optimizing, and troubleshooting OS environments.
To explore the design and implementation of operating systems.
To gain practical skills in managing, optimizing, and troubleshooting OS environments.
Contribution of the Course to Field Teaching
| Basic Vocational Courses | X |
| Specialization / Field Courses | X |
| Support Courses | X |
| Transferable Skills Courses | |
| Humanities, Communication and Management Skills Courses |
Relationships between Course Learning Outcomes and Program Outcomes
| Relationship Levels | ||||
| Lowest | Low | Medium | High | Highest |
| 1 | 2 | 3 | 4 | 5 |
| # | Program Learning Outcomes | Level |
|---|---|---|
| P10 | Follows the information in her field and communicates with her/his colleagues by using a foreign language | 2 |
| P11 | Creates algorithms and data structures and performs mathematical calculations. | 3 |
| P14 | Tests software and fixes bugs. | 3 |
Course Learning Outcomes
| Upon the successful completion of this course, students will be able to: | |||
|---|---|---|---|
| No | Learning Outcomes | Outcome Relationship | Measurement Method ** |
| O1 | Knows the basic elements of a computer. | P.1.1 | 1,6,7 |
| O2 | Knows how to use the internet and do research. | P.1.2 | 1,2,6,7 |
| O3 | Tests software and fixes bugs. | P.5.1 | 7 |
| O4 | Must have good oral and written expression skills in at least one European Union foreign language. | P.10.1 | 7 |
| O5 | To be able to define the basic concepts of information technologies and computer systems and to explain the relationships between these concepts. | P.20.1 | 1,6,7 |
| ** Written Exam: 1, Oral Exam: 2, Homework: 3, Lab./Exam: 4, Seminar/Presentation: 5, Term Paper: 6, Application: 7 | |||
Weekly Detailed Course Contents
| Week | Topics |
|---|---|
| 1 | Introduction to Operating Systems Topics: Overview of Operating Systems OS Functions and Types (Batch, Time-Sharing, Distributed, Embedded) History and Evolution of OS Readings: Chapter 1: Introduction to Operating Systems Practical Lab: Installation of a basic OS (e.g., Linux) Basic terminal commands |
| 2 | Computer System Structure and Process Management Topics: System Structure and Components User and Kernel Modes OS Services and System Calls Readings: Chapter 2: Computer System Structures Practical Lab: Exploring system calls on a Linux system |
| 3 | Process Management and Threads Topics: Process Concept and Lifecycle Process Scheduling Threads and Multithreading Models Readings: Chapter 3: Process Management Practical Lab: Process management using shell commands (ps, top, kill) |
| 4 | CPU Scheduling Topics: Scheduling Algorithms (FCFS, SJF, Round Robin, Priority Scheduling) CPU-Bound vs. I/O-Bound Processes Multilevel and Multicore Scheduling Readings: Chapter 4: CPU Scheduling Practical Lab: Simulation of scheduling algorithms |
| 5 | Process Synchronization Topics: The Critical Section Problem Synchronization Mechanisms (Mutex, Semaphores) Classical Synchronization Problems (Producer-Consumer, Dining Philosophers) Readings: Chapter 5: Process Synchronization Practical Lab: Implementing a synchronization problem using semaphores |
| 6 | Deadlocks Topics: Conditions for Deadlock Deadlock Prevention and Avoidance Detection and Recovery Readings: Chapter 6: Deadlocks Practical Lab: Simulate a deadlock scenario and resolution |
| 7 | Mid-term Exam |
| 8 | Memory Management and Virtual Memory Topics: Contiguous Memory Allocation Paging and Segmentation Virtual Memory Concepts (Demand Paging, Page Replacement Algorithms) Readings: Chapter 7: Memory Management Practical Lab: Simulation of paging and segmentation in a virtual environment |
| 9 | Storage Management Topics: Disk Structure, Scheduling, and Management RAID Levels Disk Scheduling Algorithms (FCFS, SSTF, SCAN) Readings: Chapter 8: Storage Management Practical Lab: Disk scheduling algorithm simulation |
| 10 | File Systems Topics: File System Interface and Implementation Directory Structure and File Access Allocation Methods (Contiguous, Linked, Indexed) Readings: Chapter 9: File Systems Practical Lab: Implementing a simple file system in C/C++ |
| 11 | Security and Protection Topics: Goals of Protection and Security Access Control and Authentication Threats and Malware Readings: Chapter 10: Security and Protection Practical Lab: Configuring user permissions and access control in Linux |
| 12 | Distributed Systems and Cloud Computing Topics: Distributed OS Concepts Cloud Computing and Virtualization Case Studies: Distributed File Systems (e.g., Google File System, HDFS) Readings: Chapter 11: Distributed Systems Practical Lab: Setting up a virtualized environment and file sharing |
| 13 | Case Studies and Review Topics: Case Studies of Popular Operating Systems (Linux, Windows, MacOS) Emerging Topics: Real-Time OS, IoT OS Course Review and Exam Preparation Practical Lab: Analysis and comparison of different OS functionalities |
| 14 | Final Exam |
Textbook or Material
Evaluation Method and Passing Criteria
| In-Term Studies | Quantity | Percentage |
|---|---|---|
| Attendance | - | - |
| Laboratory | - | - |
| Practice | - | - |
| Field Study | - | - |
| Course Specific Internship (If Any) | - | - |
| Homework | - | - |
| Presentation | - | - |
| Projects | - | - |
| Seminar | - | - |
| Quiz | - | - |
| Listening | - | - |
| Midterms | - | - |
| Final Exam | - | - |
| Total | 0 (%) | |
ECTS / Working Load Table
| Quantity | Duration | Total Work Load | |
|---|---|---|---|
| Course Week Number and Time | 14 | 3 | 42 |
| Out-of-Class Study Time (Pre-study, Library, Reinforcement) | 14 | 2 | 28 |
| Midterms | 1 | 15 | 15 |
| Quiz | 0 | 0 | 0 |
| Homework | 0 | 0 | 0 |
| Practice | 14 | 1 | 14 |
| Laboratory | 14 | 1 | 14 |
| Project | 0 | 0 | 0 |
| Workshop | 0 | 0 | 0 |
| Presentation/Seminar Preparation | 0 | 0 | 0 |
| Fieldwork | 0 | 0 | 0 |
| Final Exam | 1 | 15 | 15 |
| Other | 0 | 0 | 0 |
| Total Work Load: | 128 | ||
| Total Work Load / 30 | 4,27 | ||
| Course ECTS Credits: | 4 | ||
Course - Learning Outcomes Matrix
| Relationship Levels | ||||
| Lowest | Low | Medium | High | Highest |
| 1 | 2 | 3 | 4 | 5 |
| # | Learning Outcomes | P1 | P5 | P10 | P20 |
|---|---|---|---|---|---|
| O1 | Knows the basic elements of a computer. | 5 | - | - | - |
| O2 | Knows how to use the internet and do research. | 3 | - | - | - |
| O3 | Tests software and fixes bugs. | - | 3 | - | - |
| O4 | Must have good oral and written expression skills in at least one European Union foreign language. | - | - | 2 | - |
| O5 | To be able to define the basic concepts of information technologies and computer systems and to explain the relationships between these concepts. | - | - | - | 5 |
