Operating System (CPA310)

More pictures are available on the course story page

Classes(Spring, 2019) - Class overview (PDF)

  • CPA310-03 (Mon. 11:00~13:00, Wed. 10:00~11:00) / #316, 2nd Eng. Building

  • CPA310-04 (Mon. 16:00~18:00, Wed. 12:00~13:00) / #316, 2nd Eng. Building

  • Instructor: Duksu Kim (bluekds at koreatech.ac.kr / #435, 2nd Eng. Building)

  • Office hour : Thu. and Thur. 14:00~16:00

Prerequisite

  • (Required) Programming skill (any language) for a programming project

  • (Recommended) Data structure, (Optional) Computer architecture

Textbooks

  • [Main textbook] 운영체제 (개정 3판), 구현회 지음 (한빛아카데미) [link]

  • Modern Operating Systems, Andrew S. Tanenbaum (Prentice-Hall, Inc.) [link]

  • Lecture Notes and Videos (in Korean)

  • Some of figures and sample code comes from the main textbook

    • 강의 슬라이드의 일부 그림은 본 과목 주교재에서 가져 왔습니다

Lecture 1. Computer System Overview

    • What is OS?

    • Computer Hardware

      • Processor, Memory, and Peripheral

Contents (3/6)

Lecture 2. OS Overview

    • Role of Operating System (OS)

    • Classificaiton of OSs

    • OS Architecture

    • OS Features

Contents (3/11)

Lecture 3. Process management

    • What is process?

    • Process state

    • Interrupt handling

Contents (3/13)

Lecture 4. Thread management

    • What is thread?

    • Implementation of thread

Contents (3/18)

Lecture 5. Process Scheduling

    • Goals of scheduling

    • Criteria and Levels of scheduling

    • Scheduling policy

    • Basic scheduling algorithms

      • FCFC, RR, SPN, SRTN, HRRN, MLQ, MFQ

Contents (3/20)

Lecture 6. Process Synchronization and Mutual Exclusion

    • Process synchronization

    • Mutual exclusion

      • Low-level mechanism

      • High-level mechanism

Contents (3/27)

Lecture 7. Deadlock

    • Definition of the deadlock

    • Deadlock model

    • Deadlock resolution

      • Deadlock prevention, avoidance, detection & recovery

Midterm Exam (4/15) - Good Luck :)

Lecture 8. Memory management

    • Address binding

    • Continuous memory allocation

      • Uni-Programming

      • Multi-Programming (FPM, VPM)

Contents (4/22)

Lecture 9. Virtual Memory

    • Non-continuous memory allocation

      • Address Mapping

    • Virtual storage methods

      • Paging system

      • Segmentation system

      • Hybrid paging/segmentation system

Lecture 10. Virtual Memory Management

    • Cost model

    • HW components

    • SW components

    • Page replacement scheme

      • FA-based, VA-based

    • Other considerations

Contents (5/8)

Team Project Presentation (5/13, 5/15)

Lecture 11. File System

    • Disk System

    • File System

    • Directory Structure

    • File Protection

    • File System Implementation

Lecture 12. I/O System & Disk Management

    • I/O Mechanisms

    • I/O Service of OS

    • Disk Scheduling

    • RAID Architecture

Final Exam (6/12) - Good Luck :)

The Last Class

    • Class summary

6/17

HPC Lab. is actively recruiting self-motivated M.S. and Ph.D. students

If you are interested in pursuing research on following fields as a student member,

  • High Performance Computing, GPGPU, Heterogeneous Parallel Computing for

    • Visualization, Computer graphics, VR/AR

    • Machine learning

    • Other interesting research topics

please contact to Prof. Duksu Kim (bluekds (at) koreatech.ac.kr).

Please check this document for more details.


HPC Lab.에서 대학원생(석사/박사)을 모집 중입니다.

고성능 컴퓨팅, GPGPU, 컴퓨터 그래픽스 등을 함께 공부/연구하고 싶으신 분들 연락주세요 :)

자세한 내용은 여기 를 확인해주세요.