sse3044: operating systemscsl.skku.edu/uploads/sse3044f11/0-sse3044.pdf · 기초전기회로1...

22
SSE3044: Operating Systems Jin-Soo Kim ([email protected]) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu

Upload: others

Post on 21-Feb-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

SSE3044:

Operating Systems

Jin-Soo Kim ([email protected])

Computer Systems Laboratory

Sungkyunkwan University

http://csl.skku.edu

Page 2: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

2 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Introduction

Schedule

• 13:30 – 14:45 (Mon) 16:30 – 17:45 (Wed)

• Lecture room #400112 (Semiconductor Bldg.)

Course homepage

• http://csl.skku.edu/SSE3044F11/

Page 3: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

3 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

About Me

Jin-Soo Kim

• Associate Professor @ SSE & SW & CE Dept.

• Computer Systems Laboratory

• Office: Semiconductor Bldg. #400630 (6th floor)

• Email: [email protected]

• URL: http://csl.skku.edu/jinsoo

• Tel: 031-299-4593

• Office hours: Monday & Wednesday

• The best way to contact me is by email.

Page 4: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

4 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

System Software Track

문제해결방법 자료구조및 알고리즘

컴퓨터그래픽스* 인공지능*

논리회로 컴퓨터시스템

개론 컴퓨터구조

프로그래밍 언어와컴파일러

멀티코어시스템

논리회로설계실험 마이크로프로세서 컴퓨터

네트워크 이동컴퓨팅

공학수학1 마이크로프로세서

실험 시스템

운영체제 임베디드시스템

설계 임베디드시스템

실습

전자기학1 디지털시스템 SoC설계

기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션

기초전기회로실험 정보보호개요* 데이터베이스*

객체지향시스템 설계*

이산수학§

Page 5: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

5 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

What is OS?

Computer systems internals

CPU Mem I/O Devices

Operating Systems

Hardware

Software

Architecture

Application

Page 6: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

6 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Why do we learn OS?

To graduate?

To make a better OS or system. • Functionality

• Performance/Cost

• Reliability

• Energy efficiency

To make a new hardware up and running.

To design OS-aware hardware.

To understand computer systems better.

Just for fun!

Page 7: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

7 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Prerequisites

Prerequisites

• C programming skills

• Basic knowledge of UNIX/Linux systems

• SSE2030 (Introduction to Computer Systems) or CSE2003 (System Programming)

• ICE3003 (Computer Architecture): Recommended

Page 8: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

8 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Textbook

Operating System Concepts

• Avi Silberschatz, Peter B. Galvin, and Greg Gagne,

8th Edition,

John Wiley & Sons, Inc.

2008.

Page 9: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

9 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

References (1)

For General Operating System Concepts:

• Modern Operating Systems

(Second Edition)

Andrew S. Tanenbaum,

Prentice-Hall, 2001.

Page 10: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

10 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

References (2)

For Linux:

• Understanding the Linux Kernel

(Third Edition)

D. Bovet and M. Cesati,

O’Reilly & Associates, 2005.

Page 11: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

11 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

References (3)

For Windows:

• Windows Internals

(Fifth Edition)

Mark E. Russinovich and David A. Solomon,

Microsoft Press, 2009.

Page 12: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

12 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

References (4)

For Solaris:

• Solaris Internals

Richard McDougall and Jim Mauro,

Sun Microsystems, 2001.

Page 13: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

13 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

References (5)

For Introduction to Computer Systems:

• Computer Systems: A

Programmer’s Perspective

Randal E. Bryant and David R. O’Hallaron, Second Edition,

Prentice-Hall, Inc. 2010.

Page 14: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

14 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Course Plan

Lectures

• General operating system concepts

• Case studies – Linux

– Microsoft Windows

– Solaris

Hands-on projects

• Using Pintos instructional OS

Page 15: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

15 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Lectures: Topics

Operating system structure overview

Processes and threads

CPU scheduling

Synchronization

Deadlocks

Memory management

Virtual memory

I/O systems

Storage

File systems

Page 16: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

16 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Projects: Pintos

What is Pintos?

• An instructional operating system

• Developed by Ben Pfaff @ Stanford U.

• A real, bootable OS for 80x86 architecture – Run on a regular IBM-compatible PC

or an x86 simulator

• The original structure and form was inspired by the Nachos instructional OS from UC Berkeley (Java-based)

• A few of the sources files are derived from code used in the MIT’s advanced operating systems course

• Written in C language (with minimal assembly code)

Page 17: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

17 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Project Schedule

Project 0

• Warming-up project (2 weeks, ~10/1)

Project 1

• Threads (2 weeks, ~10/15)

Project 2

• User programs (3 weeks, ~11/12)

Project 3

• Virtual memory (4 weeks, ~12/10)

This schedule is subject to change

Page 18: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

18 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Project Policies

Team project (except Project 0)

• Two students in a team

Slip days

• Each team has 5 “slip” days

• 20% off per day after slip days exhausted

Project grading

• Automatic grader in Pintos

• Demos & oral tests

Lab session

Page 19: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

19 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Class Policies (1)

Grading Policy (subject to change)

• Exams: 35%

• Projects: 55%

• Class attendance: 10%

Page 20: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

20 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Class Policies (2)

Class Attendance Policy • If you miss one or both of exams, you will fail this

course.

• Do not be late! You should be present in the lecture room when I take class attendance.

• You can miss the class up to “four” times without any penalty. – For unexcused absences and for excused absences as well

• There will be a bonus for students who attend all the classes.

Page 21: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

21 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Class Policies (3)

Cheating Policy

• What is cheating? – Copying another student’s solution (or one from the Internet)

and submitting it as your own

– Allowing another student to copy your solution

• What is NOT cheating? – Helping others use systems or tools

– Helping others with high-level design issues

– Helping others debug their code

• Penalty for cheating: – Severe penalty on the grade and report to dept. chair

• Ask helps to your TA if you experience any difficulty!

Page 22: SSE3044: Operating Systemscsl.skku.edu/uploads/SSE3044F11/0-sse3044.pdf · 기초전기회로1 기초전기회로2 소프트웨어공학* 시스템시뮬레이션 ... Fall 2011 |

22 SSE3044: Operating Systems | Fall 2011 | Jin-Soo Kim ([email protected])

Questions?