Course information

advertisement

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

Download