305383 Operating Systems (2-2)

Academic year: 2549              Semester: 1

 

Instructor Contact Information

Instructor: Suradet Jitprapaikulsarn

Office: EE-408

E-mail: suradet at nu.ac.th

 

Course Overview

Operating system is an essential part of any computer system.  It is crucial for the students of computer specialty to understand the principles underlying the operating system design and implementation so that they can take advantages of facilities provided by the operating systems and can handle the complex problems should they happen.  Starting with the brief historical perspective of the evolution of the operating systems, we then turn our attention to the kernel aspects of general purpose multi-tasking operating systems, covering most major components such as: process management, resource allocation, memory management, time management, file management, and security.  We will explore a number of different actual operating systems throughout the course to study the real implementations.

 

Course Objectives

This is a pragmatic operating system course with emphasis on investigative experiments.  After the end this course, students should have a basic practical understanding of the following:

  1. Design and implementation issues of contemporary operating systems.
  2. Detailed analysis of process, multithreading, symmetric multiprocessing, and microkernel.
  3. Memory management techniques, including virtual memory.
  4. File Systems.
  5. I/O Systems.
  6. Security.

 

Instructional Approach

Students are required to read through the textbooks before attending each class.  Since this is a pragmatic course, students will write programs to investigate the various aspects the actual operating systems.  The assignments can be completed using any programming language although C is the preferred programminglanguage for this class. Since the operating system field is undergoing rapid change, studying from the textbooks alone will not be adequate.  Therefore, each month student will submit the literature reviews on the recent progress in the operating system field to expand the knowledge beyond what available in the textbooks.

 

Textbook

Reference

  1. William Stallings, Operating Systems: Internals and Design Principles, 5th Edition, Prentice Hall, 2005, ISBN 0-13-147954-7
  2. Harvey M. Deitel, Paul J. Deitel, and David R. Choffnes, Operating Systems, 3rd Edition, Prentice Hall, 2004, ISBN 0-13-182827-4
  3. Gary J. Nutt, Operating Systems, 3rd Edition, Addison-Wesley, 2004, ISBN 0-201-77344-9
  4. Lubomir F. Bic and Alan C. Shaw, Operating Systems Principles, Prentice Hall, 2003, ISBN 0-13-026611-6
  5. Andrew S. Tanenbaum, Modern Operating Systems, 2nd Edition, Prentice Hall, 2001, ISBN 0-13-092641-8
  6. Andrew S. Tanenbaum and Albert S. Woodhull, Operating System: Design and Implementation, 2nd Edition, Prentice Hall, 1997, ISBN 0-13-638677-6

 

Course Outline

Week No.

Topics

1

Introduction to Operating System

2

Operating System Structures

3

Process

4

Thread

5

CPU Scheduling

6

Process Coordination

7

Deadlocks

8

Midterm Examination

9

Memory Management

10

Virtual Memory

11

File System-Interface

12

File System-Implementation

13

I/O Systems

14

Protection

15

Security

16

Conclusion

17

Final Examination

 

Course Evaluation

The course grade will be based on

Item

Weight

Assignments

25%

Literature reviews

20%

Notes & Journal

5%

Quizzes

10%

Exams

40%

 

Academic Policy

 

Notes

The above description is only tentative; it may be changed at the instructor’s discretion.



Last update 13 June 2006, 23:07
Copyright © 2006 Suradet Jitprapaikulsarn