Mô tả:
Chương 2
Cấu trúc Hệ Điều Hành
ThS: Hà Lê Hoài Trung
1/28/2015
Khoa KTMT
1
Ôn tập chương 1
• Nêu cấu trúc hệ thống máy tính?
• HĐH có những chức năng chính nào?
• Theo góc độ hệ thống xử lý, HĐH được
phân thành mấy loại? Kể tên?
• Những yêu cầu của hệ điều hành đối với
hệ thống chia sẻ thời gian?
1/28/2015
Khoa KTMT
2
Mục tiêu
• Biết được các thành phần của hệ điều hành
• Hiểu được các dịch vụ mà hệ điều hành
cung cấp
• Phân biệt system call & library
• Hiểu được cấu trúc của một hệ thống máy
tính
1/28/2015
Khoa KTMT
3
Nội Dung
Caùc thaønh phaàn cuûa heä ñieàu haønh
Caùc dòch vuï heä ñieàu haønh cung caáp
Lôøi goïi heä thoáng (System call)
Caùc chöông trình heä thoáng (system programs)
Caáu truùc heä thoáng
Maùy aûo (virtual machine)
1/28/2015
Khoa KTMT
4
Các thành phần của
Hệ Điều Hành
•
•
•
•
•
•
•
Quản lý quá trình
Quản lý bộ nhớ chính
Quản lý file
Quản lý hệ thống I/O
Quản lý hệ thống lưu trữ thứ cấp
Hệ thống bảo vệ
Hệ thống thông dịch lệnh
1/28/2015
Khoa KTMT
5
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.1. Quaûn lyù quaù trình (process management)
- Quaù trình (hay tieán trình – process) laø gì?
- Quaù trình khaùc chöông trình ôû ñieåm gì?
- Moät quaù trình caàn caùc taøi nguyeân cuûa heä thoáng nhö CPU, boä nhôù, file,
thieát bò I/O,… ñeå hoaøn thaønh coâng vieäc.
- Caùc nhieäm vuï cuûa thaønh phaàn
Taïo vaø huûy quaù trình
Taïm dừng/thöïc thi tieáp (suspend/resume) quaù trình
Cung caáp caùc cô cheá
– ñoàng boä hoaït ñoäng caùc quaù trình (synchronization)
– giao tieáp giöõa caùc quaù trình (interprocess communication)
– khoáng cheá tắc nghẽn (deadlock)
1/28/2015
Khoa KTMT
6
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.2. Quaûn lyù boä nhôù chính
– Boä nhôù chính laø trung taâm cuûa caùc thao taùc, xöû lyù
– Ñeå naâng caoù hieäu suaát söû duïng CPU, heä ñieàu haønh caàn
quaûn lyù boä nhôù thích hôïp
– Caùc nhieäm vuï cuûa thaønh phaàn
Theo doõi, quaûn lyù caùc vuøng nhôù troáng vaø ñaõ caáp phaùt
Quyeát ñònh seõ naïp chöông trình naøo khi coù vuøng nhôù
troáng
Caáp phaùt vaø thu hoài caùc vuøng nhôù khi caàn thieát
1/28/2015
Khoa KTMT
7
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
1/28/2015
Khoa KTMT
8
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.3. Quaûn lyù file (file management)
– Heä thoáng file (file system)
File
Thö muïc
– Caùc dòch vuï maø thaønh phaàn cung caáp
Taïo vaø xoaù file/thö muïc.
Caùc thao taùc xöû lyù file/thö muïc (mkdir, rename, copy, move,
new,…)
“AÙnh xaï” file/thö muïc vaøo thieát bò löu tröõ thöù caáp töông öùng
Sao löu vaø phuïc hoài döõ lieäu
1/28/2015
Khoa KTMT
9
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.4. Quaûn lyù heä thoáng I/O (I/O system management)
– Che daáu söï khaùc bieät cuûa caùc thieát bò I/O tröôùc
ngöôøi duøng
– Coù chöùc naêng
Cô cheá: buffering, caching, spooling
Cung caáp giao dieän chung ñeán caùc trình ñieàu khieån
thieát bò (device-driver interface)
Boä ñieàu khieån caùc thieát bò (device driver) phaàn cöùng.
1/28/2015
Khoa KTMT
10
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.5. Quaûn lyù heä thoáng löu tröõ thöù caáp (secondary
storage management)
– Boä nhôù chính: kích thöôùc nhoû, laø moâi tröôøng chöùa tin khoâng beàn
vöõng => caàn heä thoáng löu tröõ thöù caáp ñeå löu tröõ beàn vöõng caùc döõ
lieäu, chöông trình
– Phöông tieän löu tröõ thoâng duïng laø ñóa töø, ñóa quang
– Nhieäm vuï cuûa heä ñieàu haønh trong quaûn lyù ñóa
Quaûn lyù khoâng gian troáng treân ñóa(free space management)
Caáp phaùt khoâng gian löu tröõ (storage allocation)
Ñònh thôøi hoïat ñoäng cho ñóa (disk scheduling)
Söû duïng thöôøng xuyeân => aûnh höôûng lôùn ñeán toác ñoä cuûa caû
heä thoáng => caàn hieäu quaû
1/28/2015
Khoa KTMT
11
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.6. Heä thoáng baûo veä
Trong heä thoáng cho pheùp nhieàu user hay nhieàu process dieãn ra ñoàng thôøi:
– Kieåm soaùt quaù trình ngöôøi duøng ñaêng nhaäp/xuaát vaø söû duïng heä thoáng
– Kieåm soaùt vieäc truy caäp caùc taøi nguyeân trong heä thoáng
– Baûo ñaûm nhöõng user/process chæ ñöôïc pheùp söû duïng caùc taøi nguyeân
daønh cho noù
– Caùc nhieäm vuï cuûa heä thoáng baûo veä
Cung caáp cô cheá kieåm soaùt ñaêng nhaäp/xuaát (login, log out)
Phaân ñònh ñöôïc söï truy caäp taøi nguyeân hôïp phaùp vaø baát hôïp phaùp
(authorized/unauthorized)
Phöông tieän thi haønh caùc chính saùch (enforcement of policies)
Chính saùch: caàn baûo veä döõ lieäu cuûa ai ñoái vôùi ai
1/28/2015
Khoa KTMT
12
2.1. Caùc thaønh phaàn cuûa heä ñieàu haønh
2.1.7. Heä thoáng thoâng dòch leänh
– Laø giao dieän chuû yeáu giöõa ngöôøi duøng vaø OS
Ví duï: shell, mouse-based window-and-menu
– Khi user login
command line interpreter (shell) chaïy, vaø chôø nhaän leänh töø ngöôøi
duøng, thöïc thi leänh vaø traû keát quaû veà.
– Caùc leänh ->boä ñieàu khieån leänh ->heä ñieàu haønh
– Caùc leänh coù quan heä vôùi caùc vieäc:
Taïo, huûy, vaø quaûn lyù quaù trình, heä thoáng
Kieåm soaùt I/O
Quaûn lyù boä löu tröõ thöù caáp
Quaûn lyù boä nhôù chính
Truy caäp heä thoáng file vaø cô cheá baûo maät
1/28/2015
Khoa KTMT
13
2.2. Caùc dòch vuï heä ñieàu haønh cung caáp
– Thöïc thi chöông trình
– Thöïc hieän caùc thao taùcï I/O theo yeâu caàu cuûa chöông trình
– Caùc thao taùc treân heä thoáng file
Ñoïc/ghi hay taïo/xoùa file
– Trao ñoåi thoâng tin giöõa caùc quaù trình qua hai caùch:
Chia xeû boä nhôù (Shared memory)
Chuyeån thoâng ñieäp (Message passing)
– Phaùt hieän loãi
Trong CPU, boä nhôù, treân thieát bò I/O (döõ lieäu hö, heát giaáy,…)
Do chöông trình: chia cho 0, truy caäp ñeán ñòa chæ boä nhôù khoâng
cho pheùp.
1/28/2015
Khoa KTMT
14
2.2. Caùc dòch vuï heä ñieàu haønh cung caáp
Ngoaøi ra coøn caùc dòch vuï giuùp taêng hieäu suaát cuûa heä thoáng:
– Caáp phaùt taøi nguyeân (resource allocation)
Taøi nguyeân: CPU, boä nhôù chính, tape drives,…
OS coù caùc routine töông öùng
– Keá toaùn (accounting)
Nhaèm löu veát user ñeå tính phí hoaëc ñôn giaûn ñeå thoáng keâ.
– Baûo veä (protection)
Hai quaù trình khaùc nhau khoâng ñöôïc aûnh höôûng nhau
Kieåm soaùt ñöôïc caùc truy xuaát taøi nguyeân cuûa heä thoáng
– An ninh (security)
Chæ caùc user ñöôïc pheùp söû duïng heä thoáng môùi truy caäp ñöôïc taøi
nguyeân cuûa heä thoáng (vd: thoâng qua username vaø password)
1/28/2015
Khoa KTMT
15
Mode
1/28/2015
Khoa KTMT
16
2.3. Lôøi goïi heä thoáng (System call)
Duøng ñeå giao tieáp giöõa quaù trình vaø heä ñieàu haønh
– Cung caáp giao tiếp giöõa quaù trình vaø heä ñieàu haønh
Vd: open, read, write file
– Thoâng thöôøng ôû daïng thö vieän nhò phaân (binary libraries) hay gioáng
nhö caùc leänh hôïp ngöõ.
– Trong caùc ngoân ngöõ laäp trình caáp cao, moät soá thö vieän laäp trình ñöôïc
xaây döïng döïa treân caùc thö vieän heä thoáng (ví duï Windows API, thö
vieän GNU C/C++ nhö glibc, glibc++,…)
– Ba phöông phaùp truyeàn tham soá khi söû duïng system call
Qua thanh ghi
Qua moät vuøng nhôù, ñòa chæ cuûa vuøng nhôù ñöôïc göûi ñeán heä ñieàu
haønh qua thanh ghi
Qua stack
1/28/2015
Khoa KTMT
17
Truyền tham số qua bảng
1/28/2015
Khoa KTMT
18
Ví dụ về system call
1/28/2015
Khoa KTMT
19
Các loại system call
•
•
•
•
•
Quá trình
Quản lý File
Quản lý các thiết bị I/O
Cung cấp cơ chế giao tiếp
Thông tin
1/28/2015
Khoa KTMT
20
- Xem thêm -