OPERATING SYSTEMS
- Course
- CMPE351 - OPERATING SYSTEMS
- Department
- Computer Engineering - English - Undergraduate
- Course Type
- Course
- Status
- Required
- Language
- English
- Credit
- 4
- ECTS
- 6
- T+P+L
- 3 + 0 + 2
- Course Coordinator(s)
- Asst. Prof. Dr. Felix Olanrewaju BABALOLA
- Prerequisite
Course Description
This course examines basic issues in operating system design and implementation. The course will start with a brief historical perspective of the evolution of operating systems over the last fifty years, and then cover the major components of most operating systems. This discussion will cover the trade-offs that can be made between performance and functionality during the design and implementation of an operating system. Particular emphasis will be given to these major OS subsystems: Process management (processes, threads, CPU scheduling, synchronization, and deadlock), memory management (segmentation, paging, swapping), file systems, and networking/distributed systems. Also basic Unix programming skills will be given during lab hours.
OPERATING SYSTEMS
Evaluation Tools (Active Term)
| Item | Type | Weight (%) |
|---|---|---|
| Mid-Term | Midterm | 30 |
| Quiz | Quiz | 15 |
| Project | Project | 15 |
| Final Exam | Final | 40 |
| Total | 100 | |
Course outcomes
- 01 Describe OS, OS major components and provide basic organization of computer systems,
- 02 Describe the services an OS provides to users,process and other systems and understand operating system structures,
- 03 Understand process concept and describe features of process,
- 04 Understand thread concept. Compare different API and apply this information,
- 05 Comprehend process scheduling algorithms,
- 06 Know difference between Synchronization and Deadlocks.
- 07 Apply theoretical knowledge to term project
- 08 Install several different Operating Systems and understanding difference.
- 09 Execute and understand programming examples.
Course Syllabus
| Week | Topic |
|---|---|
| Week 1 | Providing major components of operating systems |
| Week 2 | Describing the basic organization of computer systems |
| Week 3 | Describing the services an OS provides to users,process and other systems |
| Week 4 | Give details of operating system structures |
| Week 5 | Introduce process concept |
| Week 6 | Describing the various features of process including scheduling, creation and termination |
| Week 7 | Introduce threads and discuss API's for Pthreads, Win32 and Java |
| Week 8 | Introduce CPU scheduling |
| Week 9 | Describe major scheduling algorithms :FCFS,SJF,Priority and Round Robin |
| Week 10 | Midterm Week |
| Week 11 | Give other types of Scheduling algorithms |
| Week 12 | Scheduling algorithms |
| Week 13 | Introduce critical-section problem |
| Week 14 | Present software and hardware solutions of the critical-section problem |
| Week 15 | Present different methods for preventing deadlocks in computer system. |
Reference Books & Course Materials
- 01 Silberschatz A., Gagne G., Galvin P.B., Operating System Concepts, 9th ed., Wiley, 2009
- 02 Rochkind Marc J., Advanced UNIX Programming (2nd Edition), Addison-Wesley Professional, 2004
Learning Outcomes
- L01 Describe OS, OS major components and provide basic organization of computer systems,
- L02 Describe the services an OS provides to users,process and other systems and understand operating system structures,
- L03 Understand process concept and describe features of process,
- L04 Understand thread concept. Compare different API and apply this information,
- L05 Comprehend process scheduling algorithms,
- L06 Know difference between Synchronization and Deadlocks.
- L07 Apply theoretical knowledge to term project
- L08 Install several different Operating Systems and understanding difference.
- L09 Execute and understand programming examples.
Program Outcomes
- P01 Adequate knowledge in mathematics, science and engineering subjects pertaining to the relevant discipline; ability to use theoretical and applied knowledge in these areas in complex engineering problems.
- P02 Ability to identify, formulate, and solve complex engineering problems; ability to select and apply proper analysis and modelling methods for this purpose.
- P03 Ability to design a complex system, process, device or product under realistic constraints and conditions, in such a way as to meet the desired result; ability to apply modern design methods for this purpose.
- P04 Ability to devise, select, and use modern techniques and tools needed for analysing and solving complex problems encountered in engineering practice; ability to employ information technologies effectively
- P05 Ability to design and conduct experiments, gather data, analyse and interpret results for investigating complex engineering problems or discipline specific research questions
- P06 Ability to work efficiently in intra-disciplinary and multi-disciplinary teams; ability to work individually.
- P07 Ability to communicate effectively in Turkish, both orally and in writing; knowledge of a minimum of one foreign language; ability to write effective reports and comprehend written reports, prepare design and production reports, make effective presentations, and give and receive clear and intelligible instructions.
- P08 Recognition of the need for lifelong learning ; ability to access information, to follow developments in science and technology, and to continue to educate him/herself
- P09 Consciousness to behave according to ethical principles and professional and ethical responsibility; knowledge on standards used in engineering practice.
- P10 Knowledge about business life practices such as project management, risk management, and change management; awareness in entrepreneurship, innovation; knowledge about sustainable development.
- P11 Knowledge about the global and social effects of engineering practices on health, environment, and safety, and contemporary issues of the century reflected into the field of engineering; awareness of the legal consequences of engineering solutions.
Po-Lo Matrix
| LO | P01 | P02 | P03 | P04 | P05 | P06 | P07 | P08 | P09 | P10 | P11 | Average |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| L01 | - | - | - | - | - | - | - | - | - | - | - | - |
| L02 | - | - | - | - | - | - | - | - | - | - | - | - |
| L03 | - | - | - | - | - | - | - | - | - | - | - | - |
| L04 | - | - | - | - | - | - | - | - | - | - | - | - |
| L05 | - | - | - | - | - | - | - | - | - | - | - | - |
| L06 | - | - | - | - | - | - | - | - | - | - | - | - |
| L07 | - | - | - | - | - | - | - | - | - | - | - | - |
| L08 | - | - | - | - | - | - | - | - | - | - | - | - |
| L09 | - | - | - | - | - | - | - | - | - | - | - | - |