Syllabus

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 11

Operating Systems

Spring 2024

Chien Chin Chen

Department of Information Management


National Taiwan University
Glass Information (1/2)
 Instructor:
 陳建錦 (Chien Chin Chen)
 Office: Mgmt II 414.
 E-mail: [email protected]

 Teaching assistants:
 林聖傑 <[email protected]>
 楊代如 <[email protected]>
 陳冠甫 <[email protected]>

 Class time: 9:10pm ~ 12:10pm, every Tue.

 Location: Mgmt II Room 206.

 Class notes: NTU COOL


2
Glass Information (2/2)
 Text book:
 Abraham Silberschatz, Peter Baer Galvin, and
Greg Gagne, "Operating System Concepts,"
John Wiley & Sons, 10th edition, 2021.
 東華書局 , tel: 2311-4027

 Andrew S. Tanenbaum, “Modern Operating


Systems,” Pearson Higher Education, 4/E, 2014.
 高立圖書 , tel: 2290-0318

 Grading:
 Attendance: each miss call costs 3%!!
 Homework (at least 3 times): 30%.
 Midterm: 35%, on 4/9/2024.
 Final: 35%, on 6/4/2024. 3
Homework Policy
 Please submit your homework via COOL before
the class on the due date.
 Late homework would not get any credit.

 Students who copy (or copied) other's homework will


not get any credit.

4
Preface (1/7)
 Operating systems are an essential part of any computer
system.
 As an intermediary between the computer user and the
computer hardware.
 Prevalent and changing rapidly.
 Mainframes, PCs, handheld devices, cell phone, …

 This course presents an introduction of operating systems.


 We will cover the concepts and algorithms that underlie
operating systems.
 The concepts and algorithms covered in the book are often
based on those used in existing commercial operating
systems.
 Particular attention is paid to the Microsoft family of
operating systems and various versions of UNIX/Linux.
5
Preface (2/7)
 The content of the text correspond to the
suggestions from computing curricula 2001
for teaching operating system.
 Published by the Joint Task Force of the IEEE
Computing Society and Association for
Computing Machinery (ACM).

6
Preface (3/7)
 The course will cover the following parts:
 Overview: chapters 1 (introduction) and 2 (system
structures) explain:
 What operating systems are,
 What they do,
 How they are designed and constructed.
 The common features.
 The presentation is motivational and explanatory
to avoid getting into the details of the internal
algorithms.

7
Preface (4/7)
 Process management:
 A process is the unit of work in a system.

 Chapters 3 through 5 (process-concept, multithreaded


programming, process scheduling) describe the process
concept and concurrency as the heart of modern
operating systems.
 A computer system consists of a collection of
concurrently executing processes.
 Operating-system process (execute system code).
 User processes (execute user code).
 The text also cover methods for process scheduling
and interprocess communication.

8
Preface (5/7)
 Process coordination:
 Concurrent access to shared data may result in data
inconsistency.
 Chapters 6 & 7 (synchronization) and 8 (deadlocks) describe various
mechanisms to ensure the orderly execution processes so that
data consistency is maintained.

 Memory management:
 To improve both the utilization of the CPU and the speed of its
response to its users, the computer must keep several
processes in memory.
 Memory size is relative smaller than programs on the disks.
 Chapters 9 and 10 (memory-management strategies and virtual-memory
management) deal with main memory management during the
execution of a process.

9
Preface (6/7)
 Storage management:
 Chapters 11 through 15 (file system, implementing file

systems, secondary-storage structure, I/O systems) describe


how the file systems, mass storage, and I/O are
handled in a modern compute system.
 The file system of operating systems provides the

mechanism for on-line storage of and access to both


data and programs residing on the disks.
 I/O devices are general the slowest major components

of the computer.
 Since the I/O devices that attach to a computer vary

widely, the operating system needs to provide a wide


range of functionality to applications to allow them to
control all aspects of the devices.

10
Preface (7/7)
 Most program examples are written in C (with some Java).
 In addition, students should be familiar with basic data structure,
computer organization.

 The example programs require the following programming


environments:
 Windows API (application programming interface), which provides a set of
functions for managing processes, threads, memory, and peripheral
devices.
 POSIX (Portable Operating System Interface), a set of standards
implemented primarily for UNIX-based operating systems.
 POSIX-compliant operating systems must implement the

POSIX core standard (POSIX.1).


 Linux, Solaris, and Mac OS X.
 Windows XP and Windows 2000 systems can also run certain

POSIX programs.
 POSIX also defines several extensions to the standards:

 POSIX1.b – real-time extensions.


 POSIX1.c – an extension for a thread library. 11

You might also like