15
OPERATING SYSTEMS Jo, Heeseung

OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

OPERATING SYSTEMS

Jo, Heeseung

Page 2: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

2

CLASS MATERIALS

http://cslab.jbnu.ac.kr

• http://it.jbnu.ac.kr > 학과소개 > 구성원 > 교수 > 조희승

Instructor

• Jo, Heeseung ([email protected])

• http://cslab.jbnu.ac.kr

• Room#427, 7th Eng. Bldg.

• Tel: 063-270-2393

• The best way to contact me is via email

Page 3: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

3

COURSE DESCRIPTION

This course covers topics on general operating system concepts such as process management, memory management, I/O systems, and file systems, with the in-depth study on operating systems

Topics & Materials

Operating system course

Computer architecture review

Introduction

Architectural support for operating systems

Process

Thread

Thread implementation

Syncronization 1

Syncronization 2

Scheduling

Memory Management

Virtual memory 1

Virtual memory 2

Virtual memory 3

I/O

Storage

File system

File system internals

Page 4: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

4

PREREQUISITES

Prerequisites

• C language

• Computer architecture

• Assembly programming (System programming) (Recommended)

• Unix/Linux system programming (Recommended)

You should be familiar with the followings:

• Basic computer organization

• Multi-process/multi-threaded program concepts

• File I/O and network I/O concepts

• C programming skills

• Data structure and algorithm understanding

Page 5: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

5

SYSTEM SOFTWARE TRACK

Page 6: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

6

TIME TABLE

Page 7: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

7

TEXTBOOK

Operating System Concepts

• Avi Silberschatz, Peter B. Galvin, and Greg Gagne, John Wiley & Sons, Inc.

Page 8: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

8

REFERENCE

Modern Operating Systems

• Andrew S. Tanenbaum, Prentice-Hall

Page 9: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

9

REFERENCE

Understanding the Linux Kernel

• D. Bovet and M. Cesati, O'Reilly & Associates

Page 10: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

10

GRADING

Grading ratio (Subject to change)

• Exams: 60%

• Homework: 30%

• Etc: 10%

No cheating

• Sharing or copying of solutions

• Of course, cooperation on exams and projects

• Definitely F

Page 11: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

11

ATTENDANCE POLICY

Do not be late!

• You should be present when I take class attendance

You can miss the class up to "three" times without any penalty

• More than 3 times, then F

Reserved seat in class

• We will use reserved seat in this class for this semester

• Your seat will be reserved at the next class

Page 12: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

13

ACADEMIC INTEGRITY

What is cheating?

• Sharing code: either by copying, retyping, looking at, or supplying a copy of a file

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:

• Anyone who involved in cheating will fail this course and get disciplinary actions from the University

Ask helps to TA (or me) if you experience any difficulty!

Page 13: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

14

OS PLAYGROUND

Using VMware

• Install your own Linux/Unix/Windows/MacOS/...

For homework

• Use VMware and ubuntu Linux 18.04.x 64-bit

Page 14: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

15

OPERATING SYSTEMS

http://en.wikipedia.org/wiki/Operating_system

Page 15: OPERATING SYSTEMS · 2019-03-08 · Operating system course Computer architecture review Introduction Architectural support for operating systems Process Thread Thread implementation

16

COMPUTER SYSTEMS

Computer systems internals

Computer Architecture

Digital Logic Design

Operating Systems

C Programming Language

C++ Programming Language

JAVA Programming Language

Data StructureAlgorithm

Unix/Linux System Programming