You are on page 1of 34

TRƯỜNG ĐH CÔNG NGHỆ THÔNG TIN

KHOA KỸ THUẬT MÁY TÍNH

Heä Ñieàu Haønh


(Operating Systems)

12/07/21 Vũ Đức Lung 1


Heä Ñieàu Haønh
Thời gian:
- Lý thuyết: 45 tiết
- Thực hành: 30 tiết
Điểm số:
- Điểm thi giữa kỳ: 20%
- Điểm làm bài tiểu luận: 30%
- Điểm thi cuối HK: 50%

• Khoa Kỹ thuật máy tính


• GV: TS. Vũ Đức Lung
• Email: lungvd@uit.edu.vn
• http://groups.google.com/group/os-vdlung/
12/07/21 Vũ Đức Lung 2
Nội dung môn học
Chương 1: Tổng quan về hệ điều hành
Chương 2: Cấu trúc Hệ điều hành
Chương 3: Quản lý tiến trình (Processes)
Chương 4: Định thời CPU
Chương 5: Đồng bộ hóa tiến trình
Chương 6: Tắc nghẽn (Deadlocks)
Chương 7: Quản lý bộ nhớ
Chương 8: Bộ nhớ ảo
Đọc thêm – tiểu luận:
Chương 9: Hệ tống quản lý tập tin
Chương 10: Hệ thống quản lý nhập/xuất
Chương 11: Bảo vệ và an toàn hệ thống
12/07/21 Vũ Đức Lung 3
Tài liệu tham khảo
1. Trần Hạnh Nhi, Lê Khắc Nhiên Ân. Giáo trình
hệ điều hành. Trung tâm phát triển công
nghệ thông tin-ĐHQG.HCM, 2005.
2. Nguyễn Phú Trường. Giáo trình hệ điều hành.
ĐH Cần Thơ, 2005.
3. Silberschatz, Galvin, Gagne. Operating
System Concepts. Sixth edition, John Wiley
& Sons,2003
4. Mark E. Russinovich and David A. Solomon,
Microsoft Windows Internals, 4th Edition,
Microsoft Press, 2004.

12/07/21 Vũ Đức Lung 4


Chương I:
Tổng quan hệ điều hành

12/07/21 Vũ Đức Lung 5


1.1. Toång quan
• Giôùi thieäu
– Ñònh nghóa heä ñieàu haønh
– Caáu truùc heä thoáng maùy tính
– Caùc chöùc naêng chính cuûa heä ñieàu haønh

12/07/21 Vũ Đức Lung 6


Ñònh nghóa
• Heä ñieàu haønh laø gì?
– Chöông trình trung gian giöõa phaàn Ngöôøi duøng
cöùng maùy tính vaø ngöôøi söû
duïng, coù chöùc naêng ñieàu khieån
vaø phoái hôïp veäc söû duïng phaàn
cöùng vaø cung caáp caùc dòch vuï
cô baûn cho caùc öùng duïng. Caùc öùng duïng
• Muïc tieâu
– Giuùp ngöôøi duøng deã daøng söû Heä Ñieàu Haønh
duïng heä thoáng.
– Quaûn lyù vaø caáp phaùt taøi Phaàn cöùng
nguyeân heä thoáng moät caùch
hieäu quaû.

12/07/21 Vũ Đức Lung 7


Ñònh nghóa (tt)
Hình chính xaùc hôn

Banking Airline
Web browser Application programs
system reservation
Command
Compilers Editors
interpreter System programs
Operating system
Machine language
Microprogramming Hardware

Physical devices

Hình cuûa Dror G. Feitelson


12/07/21 Vũ Đức Lung 8
Caùc thaønh phaàn cuûa heä thoáng

12/07/21 Vũ Đức Lung 9


Caùc thaønh phaàn cuûa heä thoáng (tt)

 Phaàn cöùng (hardware)


Bao goàm caùc taøi nguyeân cô baûn cuûa maùy tính nhö CPU, boä
nhôù, caùc thieát bò I/O,...
 Heä ñieàu haønh (operating system)
Phaân phoái taøi nguyeân, ñieàu khieån vaø phoái hôïp caùc hoaït ñoäng
cuûa caùc chöông trình trong heä thoáng.
 Chöông trình öùng duïng (application programs)
Söû duïng taøi nguyeân heä thoáng ñeå giaûi quyeát moät vaán ñeà tính
toaùn naøo ñoù cuûa ngöôøi söû duïng, ví duï: compilers, database
systems, video games, business programs.
 Döõ lieäu

12/07/21 Vũ Đức Lung 10


Caùc chöùc naêng chính cuûa OS
 Phaân chia thôøi gian xöû lyù vaø ñònh thôøi CPU
 Phoái hôïp vaø ñoàng boä hoaït ñoäng giöõa caùc processes
(coordination & synchronization)
 Quaûn lyù taøi nguyeân heä thoáng (thieát bò I/O, boä nhôù, file
chöùa döõ lieäu,…)
 Thöïc hieän vaø kieåm soaùt access control, protection
 Duy trì söï nhaát quaùn (integrity) cuûa heä thoáng, kieåm soaùt
loãi vaø phuïc hoài heä thoáng khi coù loãi (error recovery)
 Cung caáp giao dieän laøm vieäc cho users

12/07/21 Vũ Đức Lung 11


Các dạng HĐH
• 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,
Itanium

12/07/21 Vũ Đức Lung 12


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

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 CPU
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 PDA (Embedded OS - hệ điều
hành nhúng)
Hệ điều hành dành cho máy chuyên biệt
Hệ điều hành dành cho thẻ chíp (SmartCard)

12/07/21 Vũ Đức Lung 13


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

Dưới góc độ số chương trình được sử dụng cùng lúc


– Hệ điều hành đơn nhiệm
– Hệ điều hành đa nhiệm
Dưới góc độ người dùng (truy xuất tài nguyên cùng lúc)
– Một người dùng
– Nhiều người dùng
•Mạng ngang hàng
•Mạng có máy chủ: LAN, WAN, ...

12/07/21 Vũ Đức Lung 14


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

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

12/07/21 Vũ Đức Lung 15


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

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

 Ñôn chöông
- Taùc vuï ñöôïc thi haønh tuaàn töï.
- Boä giaùm saùt thöôøng tröïc,
- CPU vaø caùc thao taùc nhaäp xuaát,
- Xöû lyù offline,
- Ñoàng boä hoùa caùc thao taùc beân ngoaøi - Spooling
(Simultaneous Peripheral Operation On Line)

Maùy tính
Nhaäp chính Xuaát

12/07/21 Vũ Đức Lung 16


1.2. PHAÂN LOAÏI HEÄ ÑIEÀU HAØNH
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.

Taùc
 Boä xöû lyù vaø thieát bò thi haønh toaønI/O
thôøi gian.
vuï

Boä xöû lyù Keát thuùc taùc


vuï

12/07/21 Vũ Đức Lung 17


1.2. PHAÂN LOAÏI HEÄ ÑIEÀU HAØNH
• 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)

– Yeâu caàu ñoái vôùi heä ñieàu haønh


 Ñònh thôøi coâng vieäc (job scheduling):
choïn job trong job pool treân ñóa vaø naïp
noù vaøo boä nhôù ñeå thöïc thi.
 Quaûn lyù boä nhôù (memory management)
 Ñònh thôøi CPU (CPU scheduling)
 Caáp phaùt taøi nguyeân (ñóa, maùy in,…)
 Baûo veä

12/07/21 Vũ Đức Lung 18


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

12/07/21 Vũ Đức Lung 19


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

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


 Heä thoáng ña nhieäm (multitasking).

 Laäp lòch CPU.

 Thôøi gian chuyeån ñoåi giöõa caùc taùc vuï raát ngaén.


12/07/21 Vũ Đức Lung 20
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
– CPU luaân phieân thöïc thi giöõa caùc coâng vieäc
• Moãi coâng vieäc ñöôïc chia moät phaàn nhoû thôøi gian CPU (time slice,
quantum time)
• 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)
– Moät coâng vieäc chæ ñöôïc chieám CPU khi noù 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.

12/07/21 Vũ Đức Lung 21


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 communication)
 Traùnh deadlock
– Quaûn lyù heä thoáng file, heä thoáng löu tröõ
– Caáp phaùt hôïp lyù caùc taøi nguyeân
– Baûo veä (protection)

12/07/21 Vũ Đức Lung 22


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

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


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

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

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

Boä nhôù chính


12/07/21 Vũ Đức Lung 23
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
• 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,…)
• Ñ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

12/07/21 Vũ Đức Lung 24


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
• (SunOS 4.0)

12/07/21 Vũ Đức Lung 25


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

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 Heä thoáng maùy tính 2

Giao tieáp maïng Giao tieáp maïng


Maïng
Boä xöû lyù Boä xöû lyù

Boä nhôù Boä nhôù


12/07/21 Vũ Đức Lung 26
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 (computational sharing)
 Ñoä tin caäy cao (high reliability)
 Ñoä saün saøng cao (high availability): caùc dòch vuï 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

12/07/21 Vũ Đức Lung 27


HEÄ THOÁNG PHAÂN TAÙN
• Heä thoáng phaân taùn (tt)
 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
 Caùc peer laø töï trò
 Vd: Gnutella

12/07/21 Vũ Đức Lung 28


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
• Thöôøng ñöôïc duøng trong lónh vöïc multimedia, virtual reality vôùi
12/07/21 yeâu caàu meàm deûo hôn
Vũ veà thôøi gian ñaùp öùng
Đức Lung 29
Thieát bò caàm tay
(handheld system)

• 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 nhö IrDA, Bluetooth,
wireless

12/07/21 Vũ Đức Lung 30


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

Theá heä 1 (1945 - 1955)


- 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

12/07/21 Vũ Đức Lung 31


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

Theá heä 4 (1980 - )


-Ra ñôøi maùy tính caù nhaân, IBM PC
- HÑH MS-DOS, MacOS (Apple Macintosh), MS Windows, OS/1
- Linux, QNX, HÑH maïng,…

12/07/21 Vũ Đức Lung 32


Operating Systems Evolution
IOCS IBSYS
55

60
CTSS
65 DOS/360 OS/360
MULTICS
CP/CM5
70 RSX-11M
TSO UNIX
RT-11
CP/M
75 UNIXV.7
DOS/VDSE MVS/370 VM/370 VMS 1.0
80 4.1BSD XENIX MS-DOS 1.0
SYSTEM III DR/DOS
SUN OS
VS MVS/XA VM/XA SYSTEM V 4.2BSD
85 AIX POSIX MACH OS/2
WIN 3.0
AIX/370 OSF/1 4.3BSD VMS 5.4 WIN 3.1
90 SYSTEM V.4
VS/ESA MVS/ES VM/ESA AIX/ESA
95 LINUX SOLARIS 2
4.4BSD WIN NT WIN 9X

00 VMS 7.3 WIN 2000


03 LINUX 2.6 WIN XP
SOLARIS 10
WIN Server 2003

12/07/21 Vũ Đức Lung 33


Windows And Linux Evolution
• Windows and Linux kernels are based on foundations
developed in the mid-1970s

1970 1980 1990 2000


.0

03
er P
Se ow 00
1
v1

0
3.

rv s X
20
4.

in 20
T
S

NT
sN
M

W ows
V

d
w
do

d
in
in

W
1970 1980 W 1990 2000
lic

. 0
b

v1
rn

6
pu

.6
v2.2
v2.3
.4
V

.
bo

v2

v2
v2
IX
IX

nu
IX

UN
UN

Li
UN

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


12/07/21 Vũ Đức Lung 34

You might also like