COE303 Operating SystemsIstinye UniversityDegree Programs Computer Engineering (English)General Information For StudentsDiploma SupplementErasmus Policy StatementNational Qualifications
Computer Engineering (English)

Preview

Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

Course Introduction and Application Information

Course Code: COE303
Course Name: Operating Systems
Semester: Fall
Course Credits:
ECTS
6
Language of instruction: English
Course Condition:
Does the Course Require Work Experience?: No
Type of course: Compulsory Courses
Course Level:
Bachelor TR-NQF-HE:6. Master`s Degree QF-EHEA:First Cycle EQF-LLL:6. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator: Dr. Öğr. Üy. HÜSAMETTİM OSMANOĞLU
Course Lecturer(s): Assist. Prof. Dr. Hüsamettin OSMANOĞLU
Course Assistants:

Course Objective and Content

Course Objectives: This course covers a broad range of topics, including operating systems and the basic concepts of process management, memory management, file systems, and input/output management. Students then delve deeper into process management, learning about process scheduling, process synchronization, and interprocess communication. They also learn about memory management, including virtual memory, memory allocation, memory protection, and paging algorithms. The course covers the organization and management of files, directories, and storage devices in the file systems section. In the input/output management section, students learn about device drivers, device management, and input/output operations. The security and protection section covers access control, authentication, and other security techniques used by operating systems.
Course Content: This course introduces the basic concepts and core principles used to structure modern computer operating systems. The main topics includes process, threads and concurrency programming, process scheduling and communication. It also covers the process synchronization with different examples and finally the deadlocks. In addition, it covers memory management and memory virtualization. Finally, it explains Fila management, operating system's security, and protection.

Learning Outcomes

The students who have succeeded in this course;
1) Understand the fundamental concepts and principles of modern computer operating systems.
2) Understand the concept of cooperating processes, including communication, synchronization, and deadlock (detection and avoidance).
3) Understand the organization and management of files, directories, and storage devices in different file systems.
4) Develop insight into process management and scheduling issues.
5) Understand the basic principles of Memory Management and virtual Memory.

Course Flow Plan

Week Subject Related Preparation
1) Introduction to Operating Systems
2) Operating System Structures
3) Processes
4) Threads & Concurrency
5) CPU Scheduling
6) Synchronization Tools Chapter 6 of Operating Systems Concept (10th Edition)
7) Synchronization Tools and Synchronization Examples Chapter 7 of Operating Systems Concept (10th Edition)
8) Midterm
9) Deadlocks Chapter 8 of Operating Systems Concept (10th Edition)
10) Main Memory Chapter 9 of Operating Systems Concept (10th Edition)
11) Main Memory - Paging Chapter 9 of Operating Systems Concept (10th Edition)
12) Virtual Memory Chapter 10 of Operating Systems Concept (10th Edition)
13) Mass Storage and File-System Interface Chapter 11 of Operating Systems Concept (10th Edition)
14) File-System Implementation

Sources

Course Notes / Textbooks: Abraham Silberschatz, Peter B. Galvin, Greg Gagne - Operating System Concepts, 10th Edition (Wiley)
References: https://codex.cs.yale.edu/avi/os-book/OS10/index.html

Course - Program Learning Outcome Relationship

Course Learning Outcomes

1

2

3

4

5

Program Outcomes
1) Adequate knowledge in mathematics, science, and computer engineering principles, both theoretical and practical, and the ability to apply this knowledge to complex engineering problems.
2) Ability to identify, formulate, and solve complex computer engineering problems using appropriate analysis and modeling techniques. 2 2 2
3) Ability to design and develop complex computer systems, devices, or products that meet specific requirements and operate under realistic constraints and conditions, using modern design methods. 2 2 3 3 2
4) Ability to develop, select and use modern techniques and tools used for the analysis and solution of complex computer engineering problems, and the ability to use information technologies effectively. 2 2 2 2
5) Ability to plan and conduct experiments, collect and analyze data, and interpret results in the study of complex computer engineering problems or research topics. 3 2 3
6) Ability to work effectively within and multidisciplinary teams; individual study skills.
7) Ability to communicate effectively orally and in writing; knowledge of at least one foreign language; ability to write effective reports and understand written reports, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
8) Awareness of the necessity of lifelong learning; ability to access information, to follow developments in science and technology and to renew continuously.
9) To act in accordance with ethical principles, professional and ethical responsibility; information on the standards used in engineering applications.
10) Information on business practices such as project management, risk management and change management; awareness of entrepreneurship and innovation; information about sustainable development.
11) Knowledge of the effects of computer engineering practices on health, environment and safety in the universal and social scale and the problems of the era reflected in computer engineering; awareness of the legal consequences of computer engineering solutions.

Course - Learning Outcome Relationship

No Effect 1 Lowest 2 Average 3 Highest
       
Program Outcomes Level of Contribution
1) Adequate knowledge in mathematics, science, and computer engineering principles, both theoretical and practical, and the ability to apply this knowledge to complex engineering problems.
2) Ability to identify, formulate, and solve complex computer engineering problems using appropriate analysis and modeling techniques. 2
3) Ability to design and develop complex computer systems, devices, or products that meet specific requirements and operate under realistic constraints and conditions, using modern design methods. 2
4) Ability to develop, select and use modern techniques and tools used for the analysis and solution of complex computer engineering problems, and the ability to use information technologies effectively. 2
5) Ability to plan and conduct experiments, collect and analyze data, and interpret results in the study of complex computer engineering problems or research topics. 3
6) Ability to work effectively within and multidisciplinary teams; individual study skills.
7) Ability to communicate effectively orally and in writing; knowledge of at least one foreign language; ability to write effective reports and understand written reports, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
8) Awareness of the necessity of lifelong learning; ability to access information, to follow developments in science and technology and to renew continuously.
9) To act in accordance with ethical principles, professional and ethical responsibility; information on the standards used in engineering applications.
10) Information on business practices such as project management, risk management and change management; awareness of entrepreneurship and innovation; information about sustainable development.
11) Knowledge of the effects of computer engineering practices on health, environment and safety in the universal and social scale and the problems of the era reflected in computer engineering; awareness of the legal consequences of computer engineering solutions.

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Quizzes 5 % 10
Homework Assignments 3 % 10
Project 2 % 10
Midterms 1 % 30
Final 1 % 40
total % 100
PERCENTAGE OF SEMESTER WORK % 60
PERCENTAGE OF FINAL WORK % 40
total % 100

Workload and ECTS Credit Calculation

Activities Number of Activities Preparation for the Activity Spent for the Activity Itself Completing the Activity Requirements Workload
Course Hours 13 3 39
Laboratory 10 2 20
Application 1 0 0
Field Work 1 0 0
Study Hours Out of Class 13 3 39
Presentations / Seminar 1 0 0
Project 1 5 5
Homework Assignments 4 3 12
Quizzes 4 2 8
Midterms 1 10 10
Final 1 20 20
Total Workload 153