ươCh ươ Ch T ng quan h đi u hành T ng quan h đi u hành

ng I: ng I: ệ ề ệ ề

ổ ổ

02/19/13

1

Vũ Đ c Lung ứ

ộN i dung N i dung

1. T ng quan 2. Phân lo i h đi u hành 3. L ch s phát tri n h đi u hành

ạ ệ ề ể

ệ ề

02/19/13

2

Vũ Đ c Lung ứ

1.1. T ng quan 1.1. T ng quan

ổ ổ

• Gi

ệ ề

i thi u ệ ị ấ

 Đ nh nghĩa h đi u hành  C u trúc h th ng máy tính ệ ố  Các ch c năng chính c a h đi u hành

ệ ề

02/19/13

3

Vũ Đ c Lung ứ

ịĐ nh nghĩa (tt) Đ nh nghĩa (tt)

• H đi u hành là gì?

Ngöôøi duøng

ng trình

Caùc öùng duïng

ệ ấ ầ

trung gian gi a ữ i ườ đi u ề ử ụ ứ và cung c p các ụ ơ ả cho các ng ứ ị

Heä Ñieàu Haønh

Phaàn cöùng

i dùng d dàng s ử ễ

ệ ề – Ch ươ ph n c ng máy tính và ng ầ s d ng, có ch c năng ứ ử ụ khi nể và ph i h p vi c s d ng ố ợ ph n c ng d ch v c b n d ng.ụ • M c tiêu ụ – Giúp ng ụ

d ng h th ng. ườ ệ ố

02/19/13

4

Vũ Đ c Lung ứ

– Qu n lý và c p phát tài nguyên h th ng m t cách hi u qu . ả ả ệ ố ấ ộ ệ

Đ nh nghĩa (tt)

Application programs

Web browser

Banking system

Airline reservation

Compilers

Editors

Command interpreter

System programs

Operating system

Machine language

Hardware

Microprogramming

Physical devices

Hình cuûa Dror G. Feitelson

02/19/13

5

Vũ Đ c Lung ứ

Hình chính xác h nơ

C u trúc h th ng máy tính ệ ố

– Bao g m các tài nguyên c b n c a máy tính nh CPU, b nh , ớ

ơ ả

ư

t b I/O

 Ph n c ng (hardware) ầ

ứ ồ các thi ế ị

 H đi u hành (operating system)

ạ ộ

ố ợ

ể ệ ố

ệ ề – Phân ph i tài nguyên, đi u khi n và ph i h p các ho t đ ng

ố c a các ch ủ ươ

– S d ng h th ng tài nguyên đ gi

i quy t m t bài toán tính

ể ả

ử ụ

ế

i s d ng.

toán nào đó c a ng

ề ng trình trong h th ng. ươ ứ ệ ố ủ

ườ ử ụ

– Ví dụ: compilers, database systems, video games, business

programs.

 Ch ng trình ng d ng (application programs) ụ

02/19/13

6

Vũ Đ c Lung ứ

 Users (people, machines, other computers)

4 thành ph n c a h th ng

ầ ủ ệ ố

02/19/13

7

Vũ Đ c Lung ứ

Đ nh nghĩa h đi u hành

ệ ề

• OS là b ph n c p phát tài nguyên ấ t c tài nguyên

ậ ấ ả

ộ – Qu n lí t ả – Quy t đ nh các yêu c u mâu thu n đ s ể ử ế ị d ng tài nguyên hi u qu và công b ng ệ

ụ • OS là ch

ng trình đ ể i và các s d ng sai c a máy tính

b o v l

ng trình đi u khi n ể – Đi u khi n th c thi c a các ch ươ ủ ự ủ ử ụ

ươ ể ệ ỗ

ề ả

02/19/13

8

Vũ Đ c Lung ứ

Các ch c năng chính c a h ủ ệ đi u hành

ề ử lý và đ nh th i CPU

ị ờ

 Phân chia th i gian x  Ph i h p và đ ng b ố ợ ồ ờ ộ ho t đ ng gi a các processes ữ ạ ộ

(coordination & synchronization)  Qu n lý tài nguyên h th ng (thi ệ ố ế ị t b I/O, b nh , file ộ ớ

ả ứ ự

ệ ố

ch a d li u,…) ữ ệ ể ệ ự ụ  Th c hi n và ki m soát access control, protection  Duy trì s nh t quán (integrity) c a h th ng, ki m soát ủ ể i (error recovery) ỗ l ỗ

02/19/13

9

Vũ Đ c Lung ứ

ấ i và ph c h i h th ng khi có l ồ ệ ố  Cung c p giao di n làm vi c cho users ệ ệ ấ

Các d ng h đi u hành Các d ng h đi u hành

ệ ề ệ ề

ạ ạ

 Same machine, different operating systems:

– IBM PC: DOS, Linux, NeXTSTEP, Windows, SCO

Unix

– DEC VAX: VMS, Ultrix-32, 4.3 BSD UNIX

 Same OS, different machines: UNIX

– PC (XENIX 286, APPLE A/UX) – CRAY-Y/MP (UNICOS - AT&T Sys V) – IBM 360/370 (Amdahl UNIX UTS/580, IBM UNIX

AIX/ESA)

 Windows NT, XP, 2000, 2003

– Intel i386 (i486 an NT 4.0), Alpha, PowerPC, MIPS,

02/19/13

10

Vũ Đ c Lung ứ

Itanium

1.2. PHÂN LO I H ĐI U HÀNH

Ạ Ệ Ề

ề CPU

PDA (Embedded OS

t

D i góc đ lo i máy tính ộ ạ H đi u hành dành cho máy MainFrame H đi u hành dành cho máy Server H đi u hành dành cho máy nhi u H đi u hành dành cho máy tính cá nhân (PC) H đi u hành dành cho máy - h đi u hành nhúng) H đi u hành dành cho máy chuyên bi H đi u hành dành cho th chíp (SmartCard)

ướ ệ ề ệ ề ệ ề ệ ề ệ ề ệ ề ệ ề ệ ề

02/19/13

11

Vũ Đ c Lung ứ

1.2. PHAÂN LOAÏI HEÄ ÑIEÀU HAØNH (tt)

ng trình đ

c s d ng

ượ ử ụ

ộ ố ươ

ơ

D i góc đ s ch ướ cùng lúc

– H đi u hành đ n nhi m ệ – H đi u hành đa nhi m ệ

i dùng (truy xu t tài nguyên

ướ

ườ

ệ ề ệ ề D i góc đ ng cùng lúc)

i dùng i dùng ườ •M ng ngang hàng •M ng có máy ch :

02/19/13

12

Vũ Đ c Lung ứ

– M t ng ườ ộ – Nhi u ng ề ạ ạ ủ LAN, WAN, ...

1.2. PHÂN LO I H ĐI U HÀNH (tt) Ạ Ệ Ề

ứ ử

D i góc đ hình th c x lý ướ –H th ng x lý theo lô ử –H th ng chia s ẻ –H th ng song song –H th ng phân tán

ệ ố ệ ố ệ ố ệ ố

ệ ố

ự –H th ng x lý th i gian th c

02/19/13

13

Vũ Đ c Lung ứ

NG

H TH NG X LÝ Đ N CH Ử

Ệ Ố

Ơ

ƯƠ

. ầ ự

ụ ượ

ườ

c thi hành tu n t ng tr c ự ậ

• Tác v đ • B giám sát th ộ • CPU và các thao tác nh p xu t ấ • X lý offline • Đ ng b hóa các thao tác bên ngoài –

ử ồ

Spooling (Simultaneous Peripheral Operation On Line)

02/19/13

14

Xuaát Nhaäp

Maùy tính chính Vũ Đ c Lung ứ

HEÄ THOÁNG XÖÛ LYÙ ÑA CHÖÔNG

 Nhieàu taùc vuï saün saøng thi haønh cuøng moät thôøi ñieåm.

 Khi moät taùc vuï thöïc hieän I/O, baét ñaàu taùc vuï khaùc.

 Boä xöû lyù vaø thieát bò thi haønh toaøn thôøi gian.

I/O

Taùc vuï

Boä xöû lyù

02/19/13

15

Vũ Đ c Lung ứ

Keát thuùc taùc vuï

HEÄ THOÁNG XÖÛ LYÙ ÑA CHÖÔNG

Multiprogrammed systems - Nhieàu coâng vieäc ñöôïc

naïp ñoàng thôøi vaøo boä nhôù chính

- Khi moät tieán trình thöïc hieän I/O, moät tieán trình khaùc ñöôïc thöïc thi

- Taän duïng ñöôïc thôøi gian raûnh, taêng hieäu suaát söû duïng CPU (CPU utilization)

02/19/13

16

Vũ Đ c Lung ứ

HEÄ THOÁNG XÖÛ LYÙ ÑA CHÖÔNG

• Yêu c u đ i v i h ệ

ự ộ

ố ớ ệ đi u hành – Đ nh th i công vi c (job scheduling): ch n job trong job pool trên đĩa và n p nó vào b nh ớ để th c thi. – Qu n lý b nh (memory management) ớ – Đ nh th i CPU (CPU scheduling) ị – C p phát tài nguyên (đĩa, máy in,…) ấ – B o vả

02/19/13

17

Vũ Đ c Lung ứ

HEÄ THOÁNG XÖÛ LYÙ ÑA CHÖÔNG

02/19/13

18

Vũ Đ c Lung ứ

HEÄ THOÁNG CHIA XEÛ THÔØI GIAN

• H th ng đa nhi m (multitasking). ệ ệ ố

• L p l ch CPU. ậ ị

• Th i gian chuy n đ i gi a các tác v r t ng n. ữ ụ ấ ể ắ ờ ổ

    

02/19/13

19

Vũ Đ c Lung ứ Boä xöû lyù

HEÄ THOÁNG CHIA XEÛ THÔØI GIAN Time-sharing systems - Multiprogrammed systems khoâng cung caáp khaû naêng töông

taùc hieäu quaû vôùi users

o Moãi coâng vieäc ñöôïc chia moät phaàn nhoû thôøi gian

CPU (time slice, quantum time)

o Cung caáp töông taùc giöõa user vaø heä thoáng vôùi

thôøi gian ñaùp öùng (response time) nhoû (1 s)

- CPU luaân phieân thöïc thi giöõa caùc coâng vieäc

- Moät coâng vieäc chæ ñöôïc chieám CPU khi noù

02/19/13

20

naèm trong boä nhôù chính.

- Khi caàn thieát, moät coâng vieäc naøo ñoù coù theå ñöôïc chuyeån töø boä nhôù chính ra thieát bò löu tröõ (swapping), nhöôøng boä nhôù chính cho coâng vieäc khaùc. Vũ Đ c Lung ứ

HEÄ THOÁNG CHIA XEÛ THÔØI GIAN

• Yeâu caàu ñoái vôùi OS trong heä thoáng time-

sharing – Ñònh thôøi coâng vieäc (job scheduling) – Quaûn lyù boä nhôù (memory management)

• Virtual memory

– Quaûn lyù caùc quaù trình (process

management)  Ñònh thôøi CPU  Ñoàng boä caùc quaù trình (synchronization)  Giao tieáp giöõa caùc quaù trình (process

02/19/13

21

communication)  Traùnh deadlock

– Quaûn lyù heä thoáng file, heä thoáng löu tröõ Vũ Đ c Lung ứ – Caáp phaùt hôïp lyù caùc taøi nguyeân

– Baûo veä (protection)

HEÄ THOÁNG ÑA XÖÛ LYÙ

Hai hoaëc nhieàu boä xöû lyù cuøng chia seû moät boä nhôù.

Boä

Boä

xöû lyù

xöû lyù

Boä nhôù chính

02/19/13

22

Vũ Đ c Lung ứ

 Master/Slave : moät boä xöû lyù chính kieåm soaùt moät soá boä xöû lyù I/O

HEÄ THOÁNG ÑA XÖÛ LYÙ

• Heä thoáng song song (parallel, multiprocessor, hay

tightly-coupled system) – Nhieàu CPU – Chia seû computer bus, clock – Öu ñieåm

o Naêng xuaát heä thoáng (System throughput): caøng nhieàu processor thì caøng nhanh xong coâng vieäc • Multiprocessor system ít toán keùm hôn

multiple single-processor system: vì coù theå duøng chung taøi nguyeân (ñóa,…)

02/19/13

23

Vũ Đ c Lung ứ

o Ñoä tin caäy: khi moät processor hoûng thì coâng vieäc cuûa noù ñöôïc chia seû giöõa caùc processor coøn laïi

HEÄ THOÁNG ÑA XÖÛ LYÙ

• Phaân loaïi heä thoáng song song

– Ña xöû lyù ñoái xöùng (symmetric multiprocessor - SMP) • Moãi processor vaän haønh moät identical

copy cuûa heä ñieàu haønh

• Caùc copy giao tieáp vôùi nhau khi caàn • (Windows NT, Solaris 5.0, Digital UNIX, OS/2,

Linux)

– Ña xöû lyù baát ñoái xöùng (asymmetric multiprocessor) • Moãi processor thöïc thi moät coâng vieäc

khaùc nhau

• Master processor ñònh thôøi vaø phaân coâng

vieäc cho caùc slave processors

02/19/13

24

Vũ Đ c Lung ứ

• (SunOS 4.0)

HEÄ THOÁNG PHAÂN TAÙN

 Nhieàu maùy tính lieân keát vôùi nhau baèng ñöôøng truyeàn thoâng ñaëc bieät.  Töông töï heä thoáng ña xöû lyù nhöng khoâng chia xeû boä nhôù. Heä thoáng maùy tính 1 Giao tieáp maïng Heä thoáng maùy tính 2 Giao tieáp maïng

Maïng

Boä xöû lyù Boä xöû lyù

02/19/13

25

Vũ Đ c Lung ứ

Boä nhôù Boä nhôù

HEÄ THOÁNG PHAÂN TAÙN

• Heä thoáng phaân taùn (distributed system, loosely-coupled

system) – Moãi processor coù boä nhôù rieâng, caùc

processor giao tieáp qua caùc keânh noái nhö maïng, bus toác ñoä cao

– Ngöôøi duøng chæ thaáy moät heä thoáng ñôn

nhaát – Öu ñieåm

 Chia seû taøi nguyeân (resource sharing)  Chia seû söùc maïnh tính toaùn

02/19/13

(computational sharing)

26 cuûa heä thoáng ñöôïc cung caáp lieân tuïc cho duø moät thaønh phaàn hardware trôû neân hoûng

 Ñoä tin caäy cao (high reliability)  Ñoä saün saøng cao (high availability): caùc dòch vuï Vũ Đ c Lung ứ

HEÄ THOÁNG PHAÂN TAÙN

 Caùc moâ hình heä thoáng phaân taùn

– Client-server

 Server: cung caáp dòch vuï  Client: coù theå söû duïng dòch vuï

cuûa server – Peer-to-peer (P2P)

 Caùc peer (maùy tính trong heä thoáng)

ñeàu ngang haøng nhau

 Khoâng coù cô sôû döõ lieäu taäp

trung

02/19/13

27

Vũ Đ c Lung ứ

 Caùc peer laø töï trò  Ví dụ: Gnutella

Heä thoáng thôøi gian thöïc (real-time system)

• Heä thoáng thôøi gian thöïc (real-time system)

– Söû duïng trong caùc thieát bò chuyeân duïng nhö ñieàu

khieån caùc thöû nghieäm khoa hoïc, ñieàu khieån trong y khoa, daây chuyeàn coâng nghieäp, thieát bò gia duïng, quaân söï

– Raøng buoäc veà thôøi gian: hard vaø soft real-time

 Phaân loaïi

– Hard real-time

• Haïn cheá (hoaëc khoâng coù) boä nhôù phuï, taát caû döõ lieäu naèm trong boä nhôù chính (RAM hoaëc ROM)

• Yeâu caàu veà thôøi gian ñaùp öùng/xöû lyù raát

nghieâm ngaët, thöôøng söû duïng trong ñieàu khieån coâng nghieäp, robotics,…

– Soft real-time

02/19/13

28

Vũ Đ c Lung ứ • Thöôøng ñöôïc duøng trong lónh vöïc multimedia,

virtual reality vôùi yeâu caàu meàm deûo hôn veà thôøi

gian ñaùp öùng

Thieát bò caàm tay (Handheld system)

– Personal digital assistant (PDA): Palm,

Pocket-PC

– Ñieän thoaïi di ñoäng (cellular phones) – Ñaëc tröng

– Boä nhôù nhoû (512 KB – 128 MB) – Toác ñoä processor thaáp (ñeå ít toán pin) – Maøn hình hieån thò coù kích thöôùc nhoû vaø

ñoä phaân giaûi thaáp.

– Coù theå duøng caùc coâng ngheä keát noái

02/19/13

29

Vũ Đ c Lung ứ

nhö IrDA, Bluetooth, wireless

1.3. LÒCH SÖÛ PHAÙT TRIEÅN CUÛA HEÄ ÑIEÀU HAØNH

- Thieát keá, xaây döïng, laäp trình, thao taùc: ñeàu do 1 nhoùm ngöôøi - Löu treân phieáu ñuïc loã

 Theá heä 2 (1955 - 1965)

- Xuaát hieän söï phaân coâng coâng vieäc - Heä thoáng söû lyù theo loâ ra ñôøi, löu treân baêng töø - Hoaït ñoäng döôùi söï ñieàu khieån ñaëc bieät cuûa 1 chöông trình

 Theá heä 3 (1965 - 1980)

- Ra ñôøi heä ñieàu haønh, khaùi nieäm ña chöông - HÑH chia seû thôøi gian nhö CTSS cuûa MIT - MULTICS, UNIX

02/19/13

30

Vũ Đ c Lung ứ

Theá heä 1 (1945 - 1955)

1.3. LÒCH SÖÛ PHAÙT TRIEÅN CUÛA HEÄ ÑIEÀU HAØNH

• Th h 4 (1980 - )

• •

02/19/13

31

Vũ Đ c Lung ứ

• ế ệ Ra đ i máy tính cá nhân, IBM PC HĐH MS-DOS, MacOS (Apple Macintosh), MS Windows, OS/1 Linux, QNX, HĐH m ng,…ạ

Operating Systems Evolution

IBSYS

IOCS

55

60

CTSS

65

DOS/360

OS/360

MULTICS

CP/CM5

RSX-11M

70

UNIX

TSO

RT-11

CP/M

75

UNIXV.7

VMS 1.0

DOS/VDSE

MVS/370

VM/370

4.1BSD

XENIX

MS-DOS 1.0

80

SYSTEM III

DR/DOS

SUN OS

4.2BSD

VS

MVS/XA

VM/XA

SYSTEM V

AIX

OS/2

85

POSIX

MACH

WIN 3.0

OSF/1

4.3BSD

VMS 5.4

WIN 3.1

AIX/370

90

SYSTEM V.4

VS/ESA

MVS/ES

VM/ESA

AIX/ESA

SOLARIS 2

LINUX

95

4.4BSD

WIN NT

WIN 9X

00

VMS 7.3

WIN 2000

03

WIN XP

LINUX 2.6

SOLARIS 10

WIN Server 2003

02/19/13

32

Vũ Đ c Lung ứ

Windows And Linux Evolution

• Windows and Linux kernels are based on foundations

developed in the mid-1970s

1970

1980

1990

2000

V M S v1.0

S erver 2003 W in d o w s 2000 W in d o w s X P W indo w s N T 3.1  N T 4.0

1970

1980

1990

2000

v2.0

v2.6

v2.2

v2.3

v2.4

Linux v1.0

U NIX p u blic U NIX V 6

U NIX b orn

(see http://www.levenez.com for diagrams showing history of Windows & Unix) 33

02/19/13

Vũ Đ c Lung ứ