Nama Mata
Pelajaran
Kod
Status Mata
Pelajaran
Peringkat
Nilai Kredit
Prasyarat
(Jika Ada)
Penilaian
Tenaga Pengajar
Semester diajar
Objektif Mata
Pelajaran
Sinopsis Mata
Pelajaran
Rangka Mata
Pelajaran
Subject : Advanced Operating Systems
CSNB324
Core
Degree
4 (3hrs. Lecture + 2hrs. Lab)
CSNB224/ CCSB234
Lab Works, Quizzes, Test 40%
Mid Term Test 20%
Final Examination 40%
Mohd Ezanee Rusli (Lecturer)
Surizal Nazeri (Lab Tutor)
Semester 7 / 8
At the end of the course, the students should be able to:
1) Compare and contrast the Monolithic and Microkernel design architectures.
2) Use system calls.
3) Develop multiprocess/multithreaded applications.
4) Implement mutual exclusion and synchronization in multiprocessing environments.
5) Explain multiprocessor and real-time scheduling.
6) Explain the virtual memory management techniques used on modern operating systems.
7) Explain device Management and Interrupt Handling mechanisms and write module
as extensions to the kernel code.
8) Explain the virtual file system concept and system calls for accessing files.
9) Explain the concept of virtualization in OS.
The course uses the theoretical knowledge learned in the prerequisite course
CSNB224/CCSB234 Operating System Concepts. The practical part of the course takes students on the programming task of writing codes to adapt, modify or add modules to the existing kernels of the operating systems. Hands-on knowledge gained in system programming will be valuable to further enhance general programming ability of students.
Jam
Kuliah
3
Tutorial Lab
Introduction to the Kernel design
• OS Concept Review
• Basic Kernel Responsibilities
• Monolithic and Microkernel architectures
System Calls
Detailed explanation on various types on system calls.
Handling of system calls by the Kernel.
Writing programs using system calls
6 4
Process Management
• System calls for process creation and termination.
• Kernel structures for process management.
• Process states.
• Scheduling on multiprocessor machines and in real-time systems.
Mutual Exclusion and Synchronization
• The critical-section problem
• Synchronization hardware
• Mutual exclusion
• Semaphores
• Classic problems of synchronization
• Critical regions
• Monitors
• OS synchronization
• Atomic Transactions
Memory Management
• Review of Memory Management
Techniques.
• Virtual Address space organization.
• Virtual-to-physical address translation mechanism.
• Page allocation and deallocation algorithms.
Device Management
• Introduction.
• Device Drivers.
• Polling vs. Interrupt-driven approach.
• Interrupt Handling.
• Kernel Contexts.
• Concurrency in the Kernel.
File Management
• Introduction to File Structure.
• System calls for file manipulations.
• The Virtual File System – concept and realization through the use of Kernel objects.
• Filesystem Mounting and Registration.
Introduction to Virtualization
• History of Virtualization
• Kinds of Virtualization
• • Virtual Machines
6
6
6
6
6
3
6
6
2
6
4
Rujukan Wajib
Tambahan
1. Daniel P. Bovet & Marco Cesati: Understanding The Linux
Kernel, 3rd Edition, O’Reilly, 2005.
2. Gary Nutt: Kernel Projects for Linux, Addison-Wesley, 2001.
William Stallings: Operating Systems, 6th Edition, Prentice Hall,
2009