Introduction to Operating Systems

Schedule

  • Class hours: 15:30~16:45 (화, 목)
  • Location: 301동 104호
  • Office hours: 14:30~15:30 (목)

Resources

Teaching Assistant

  • Name: 양범준
  • E-mail: bjyang(at)redwood.snu.ac.kr
  • Tel.: 02-880-8370
  • Office location: 301동 853-4호

Syllabus

  • Objectives

  • 본 강의의 목적은 최신 운영체제를 이해하고 활용할 수 있도록, 운영체제의 내부 구조를 학습하고, 운영체제를 구성하는데 필요한 이론과 실제를 공부하는데 있다. 이를 위해 멀티태스킹과 CPU 스케쥴러, 메모리 관리 기법, 입출력 장치 관리자와 파일 시스템 등의 기술적 사항을 학습한다. 학습한 내용을 숙지 할 수 있도록 4단계로 구성된 운영체제 개발 실습 프로젝트를 수행한다.

  • Textbook: "Operating System Concepts (9th Edition)" by Abraham Siberschatz, Peter Baer Galvin and Greg Gagne

  • Prerequisites: C 프로그래밍, 자료구조와 알고리즘, 컴퓨터의 구조를 선수강하고 수강하는 것이 바람직하다.

  • Weekly schedule

  • 차수 수업 내용 동영상 번호 동영상 이름
    1주 Introduction to OS [1] Introduction to OS [2] 1-1 Evolution of OS - Phase Ⅰ Up to Batch Monitor
    1-2 Evolution of OS - Phase Ⅰ Multiprogrammed Batch Monitor
    1-3 Evolution of OS - Phase II
    2-1 Evolution of OS - Phase III
    2-2 Functions of OS
    2주 Review of Computer Hardware 3-1 Computer Systems Architecture
    3-2 Interrupt Mechanism
    3-3 Hardware pretection Mechanism
    Processes and Threads [1] - Process Concept 4-1 Process Concepts (1)
    4-2 Process Concepts (2)
    4-3 Prcoess Scheduling (1)
    3주 Processes and Thread [2] – Process Implementation 5-1 Process Scheduling (2)
    5-2 Context Switching
    Processes and Threads [3] – Context Switching 6-1 Abstraction and Decomposition
    6-2 Process Creation and Termination (1)
    6-3 Process Creation and Termination (2)
    4주 Processes and Threads [4] - Threads 7-1 Multithreading (1)
    7-2 Multithreading (2)
    7-3 Multithreading (3)
    CPU Scheduling [1] - Basics 8-1 Multithreading (4)
    8-2 Basic Concepts
    8-3 Scheduling Policies (1)
    5주 CPU Scheduling [2] - Scheduling Policies 9-1 Scheduling Policies (2)
    9-2 Scheduling Policies (3)
    Process Synchronization [1] - Semaphores 10-1 Why Process Synchronization?
    10-2 Semaphore (1)
    6주 Process Synchronization [2] - Monitors 11-1 Semaphore (2)
    11-2 Monitor
    중간고사
    7주 Deadlock 12-1 What is Deadlock?
    12-2 Deadlock Prevention and Detection
    Program Linking and Executable File Generation 13-1 Linker and Loader
    13-2 Linking Process
    8주 Dynamic Storage Allocation 14-1 Why Dynamic Allocation?
    14-2 Heap Management
    Segmentation and Paging [1] 15-1 Segmentation
    15-2 Paging
    9주 Segmentation and Paging [2] 16-1 Paged Segmentation
    16-2 Paged Segmentation (VAX VMS Case)
    16-3 Translation Look Aside (TLB) Buffer
    Demand Paging [1] – Why Demand Paging? 17-1 Why Demand Paging?
    17-2 Page Fault Handling
    10주 Demand Paging [2] – Virtual Memory Management 18-1 Key Issues in Demand Paging
    18-2 Page Replacement Policies (1)
    18-3 Page Replacement Policies (2)
    Demand Paging [3] – Thrashing and Working Set 19-1 Thrashing and Working Set
    19-2 Trends in Memory Management
    11주 I/O Devices and Device Drivers [1] – I/O Hardware 20-1 I/O Hardware (1)
    20-2 I/O Hardware (2)
    I/O Devices and Device Drivers [2] – Device Drivers 21-1 Device Drivers (1)
    21-2 Device Drivers (2)
    12주 File Systems [1] – Files and Directories 22-1 Files and Directories (1)동영상
    22-2 Files and Directories (2)동영상
     File Systems [2] – File System Organization 23-1 Big Picture on File System동영상
    23-2 File Structures동영상
    23-3 Disk Space Management동영상
    13주 File Systems [3] – Disk Scheduling 24-1 Evolution of UNIX File Systems동영상
    24-2 Disk Scheduling동영상
    14주 Review
    15주 기말고사
  • Grading
    Homework 10%
    Midterm Exam 25%
    Final Exam 25%
    Quiz 20%
    Project 20%

Put password

Put password

Put password