Tải bản đầy đủ (.pdf) (40 trang)

CHƯƠNG 2 CẤU TRÚC HỆ ĐIỀU HÀNH pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (622.55 KB, 40 trang )

CHƯƠNG
CHƯƠNG
2
2
C
C


U TR
U TR
Ú
Ú
C H
C H


ĐI
ĐI


U H
U H
À
À
NH
NH
2.2
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005


N
N


I DUNG
I DUNG
 Các dịch vụ hệđiều hành (Operating System Services)
 Giao diện HĐH người dùng (User Operating System Interface)
 Lờigọihệ thống (System Calls)
 Các kiểulờigọihệ thống (Types of System Calls)
 Chương trình hệ thống (System Programs)
 Thiếtkế và thựcthi HĐH (Operating System Design and
Implementation)
 Cấu trúc HĐH (Operating System Structure)
 Máy ảo (Virtual Machines)
 Các thế hệ HĐH (Operating System Generations)
 Boot hệ thống (System Boot)
2.3
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
M
M


C TIÊU
C TIÊU
 Mô tả các dịch vụ một HĐH cung cấpchongười dùng, quá trình và
các hệ thống khác.

 Thảoluận các phương pháp cấutrúcmột HĐH.
 Giải thích các HĐH đượccàiđặtnhư thế nào và chúng boot ra
sao.
2.4
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C
Á
Á
C D
C D


CH V
CH V


HĐH
HĐH
 Mộttậpcácdịch vụ HĐH cung cấpcácchứcnăng hữudụng cho
người dùng:
z Giao diệnngười dùng
 Giao diện hàng lệnh (Command Line Interface - CLI)
 Giao diệnngười dùng đồ họa (Graphics User Interface - GUI)
 Bó (Batch)
z Thựchiệnchương trình:
 Nạpchương trình vào bộ nhớ

 Chạychương trình
 Kết thúc chương trình: bình thường / bấtbìnhthường (chỉđịnh lỗi)
z Các hoạt động I/O
z Thao tác hệ thống file
2.5
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C
Á
Á
C D
C D


CH V
CH V


HĐH
HĐH
(Cont.)
(Cont.)
z Liên lạc
 Thông qua bộ nhớ chia sẻ
 Thông qua truyền thông điêp
z Phát hiệnlỗi
 Xảy ra trong CPU và phầncứng bộ nhớ, trong thiếtbị I/O, trong

chương trình người dùng
 Đốivớimỗikiểulỗi, HĐH chorahànhđộng thích hợp, đảmbảo tính
toán đúng và nhất quán
 Gỡ rối (Debugging)
2.6
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C
Á
Á
C D
C D


CH V
CH V


HĐH
HĐH
(Cont.)
(Cont.)
 Tậpcácchứcnăng khác của HĐH nhằm đảmbảohệ thống hoạt động hiệuquả
thông qua chia sẻ tài nguyên
z Cấp phát tài nguyên (Resource allocation) : nhiềukiểucấp phát tài
nguyên
 Mộtsố (ví dụ CPU cycles,mainmemory, và file storage) có thể có mã

cấp phát đặcbiệt
 Mộtsố khác (ví dụ I/O devices) có thể có mã yêu cầuvàgiải phóng
chung
z Kiểm toán (Accounting) : Lưuvếtsử dụng củangười dùng (kiểutài
nguyên, thờigiansử dụng …)
z Bảovệ và an ninh (Protection and security) :
 Bảovệ : bao gồm đảmbảotấtcả các truy xuất đến các nguyên hệ
thống được điềukhiển
 An ninh : chống truy xuấtbấthợplệđến các tài nguyên
2.7
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
GIAO DI
GIAO DI


N H
N H
À
À
NG L
NG L


NH
NH
-
-

CLI
CLI
 CLI cho phép đầuvàolệnh trựctiếp:
 Mộtsố thựchiệntrongphương thứchạt nhân, mộtsố bởi
chương trình hệ thống
 shells
 Đem về một hàng lệnh từ người dùng và thựchiệnnó
– Các lệnh dính liền
– Tên chương trình
2.8
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
GIAO DI
GIAO DI


N NGƯ
N NGƯ


I D
I D
Ù
Ù
NG Đ
NG Đ



H
H


A
A
-
-
GUI
GUI
 Giao diệnbiểutượng
z Chuột, bàn phím và màn hình
z Các biểutượng (Icons) biểudiễn files, chương trình, hành
động …
z Các phím chuộttrênđốitượng giao diệngâyracáchànhdộng
khác nhau (cung cấp thông tin, chọnlựa, thựchiệnchứcnăng,
mở thư mục…)
 Nhiềuhệ thống bao hàm cả CLI và GUI
z Microsoft Windows
z Apple Mac OS X
z UNIX
z Solaris (Java Desktop, KDE)
2.9
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
L
L



I G
I G


I H
I H


TH
TH


NG
NG
 Giao diệnlậptrìnhđếncácdịch vụ
 Thường đượcviết trong ngôn ngữ lậptrìnhmức cao (C / C++ …)
 Đượctruyxuấtbởichương trình thông qua giao diệnlậptrìnhứng
dụng mứccao(Application Program Interface - API)
 Các API thông dụng nhất:
z Win32 API / Windows
z POSIX API cho các hệ thống dựatrênPOSIX (baogồmtấtcả
các phiên bảncủa UNIX, Linux, và Mac OS X), and
z Java API cho máy ảo Java (Java virtual machine - JVM)
2.10
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
V

V
Í
Í
D
D


L
L


I G
I G


I H
I H


TH
TH


NG
NG
 Dãy lờigọihệ thống để sao chép một file
2.11
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th

Edition, Jan 14, 2005
V
V
Í
Í
D
D


API CHU
API CHU


N
N
 Chứcnăng đọc file ReadFile() trong
z Win32 API— mộthàmđọc file
z Mô tả các tham số:
 HANDLE file—file được đọc
 LPVOID buffer— buffer ởđódữ liệu đượcdọcvào/ viếtra
 DWORD bytesToRead— số bytes được đọc vào buffer
 LPDWORD bytesRead— số bytes được đọctronglần đọcsau
cùng
 LPOVERLAPPED ovl—chỉ ra I/O viết đè được dùng
2.12
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
TH

TH


C THI L
C THI L


I G
I G


I H
I H


TH
TH


NG
NG
 Thông thường, mộtsố kếthợpvớimỗilờigọihệ thống
z Giao diệnlờigọihệ thống duy trì mộtbảng tương ứng vớicác
số này
 Giao diệnlờigọihệ thống gọilờigọihệ thống mong muốn trong
hạt nhân, trả lại tình trạng lờigọihệ thống và trả lại các giá trị
 Ngườigọi không cầnbiếtvề sự thựcthicủalờigọihệ thống
z Chỉ cần tuân thủ API và hiểucáimà HĐH sẽ làm như kếtquả
z Hầuhết chi tiếtcủagiaodiện HĐH đượcchebởi API
2.13

Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
API
API


L
L


I G
I G


I H
I H


TH
TH


NG
NG


M
M



I QUAN H
I QUAN H


OS
OS
2.14
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
V
V
Í
Í
D
D


THƯ VI
THƯ VI


N C CHU
N C CHU


N

N
 Chương trình C gọilờigọithư viện printf(), printf gọilờigọihệ thống
write()
2.15
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
TRUY
TRUY


N THAM S
N THAM S


TRONG L
TRONG L


I G
I G


I H
I H


TH
TH



NG
NG
 Thông thường, thông tin được đòi hỏi nhiềuhơn định danh củalời
gọihệ thống mong muốn
z Kiểuvàsố lượng thông tin thay đổi tùy theo HĐH và lờigọi
 Ba phương pháp chung để truyềnthamsố
z Truyền than số trong thanh ghi
z Tham sốđượclưutrongmộtkhối/ bảng trong bộ nhớđịachỉ
khối đượctruyềntrongmột thanh ghi (Linux và Solaris)
z Các tham sốđượcbố trí / đẩn lên stack bởichương trình và
được pop từ stack bởi HĐH
z Khối và stack không giớihạn độ dài tham sốđượctruyền
2.16
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
TRUY
TRUY


N THAM S
N THAM S


THÔNG QUA B
THÔNG QUA B



NG
NG
2.17
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C
Á
Á
C KI
C KI


U L
U L


I G
I G


I H
I H


TH
TH



NG
NG
 Điềukhiển quá trình
 Quảntrị file
 Quảntrị thiếtbị
 Duy trì thông tin
 Liên lạc
2.18
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
S
S


TH
TH


C HI
C HI


N TRONG MS
N TRONG MS
-
-

DOS
DOS
(a) At system startup (b) running a program
2.19
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
FreeBSD CH
FreeBSD CH


Y NHI
Y NHI


U CHƯƠNG TRÌNH
U CHƯƠNG TRÌNH
2.20
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C
Á
Á
C CHƯƠNG TRÌNH H
C CHƯƠNG TRÌNH H



TH
TH


NG
NG
 Các chương trình hệ thống cung cấpmôitrường thuậnlợicho
phát triểnvàthựchiệnchương trình. Có thểđược chia thành:
z Thao tác file: Tạo, xóa, sao chép, đổi tên, in, dump, liệtkê…
z Thông tin tình trạng:
 Date, time, lượng bộ nhớ sẵn dùng, không gian đĩa, số
người dùng …
 Thông tin sổ ghi, gỡ rối
 Thông tin cấuhình…
z Sửa đổi file
 Các bộ soạnthảovănbảntạovàsửa đổi files
 Các lệnh tìm kiếmnội dung file và biến đổivănbản
2.21
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C
Á
Á
C CHƯƠNG TRÌNH H
C CHƯƠNG TRÌNH H



TH
TH


NG (cont)
NG (cont)
z Hỗ trợ ngôn ngữ lậptrình
 Compilers, assemblers, debuggers và interpreters
z Nạpvàthựchiệnchương trình
 Bộ nạptuyệt đối, bộ nạptáiđịnh vị, bộ tạonốikết, bộ phủ
lấp, hệ thống gỡirối cho ngôn ngữ mức cao và ngôn ngữ
máy
z Liên lạc
 Cung cấpcơ chế tạonốikết ảogiữa các quá trình, người
dùng và các hệ thống máy tính
 Chophépngười dùng gửi thông điệp các màn hình khác,
duyệt các trang Web, thưđiệntử, log-in từ xa, truyền files
z Các trình ứng dụng
Hầuhếtngười dùng nhìn HĐH dướicácchương trình hệ thống
không dướicáclờigọihệ thống
2.22
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
THI
THI



T K
T K


& TH
& TH


C THI HĐH
C THI HĐ
H
 Cấu trúc bên trong củacác HĐH khác nhau có thể rất khác nhau
 Bắt đầubởixácđịnh các đích và các đặctả
 Bịảnh hưởng bởichọnphầncứng, kiểuhệ thống
 Đích người dùng và đích hệ thống
z Đích người dùng: thuậnlợichoviệcsử dụng, dễ học, tin cậy,
an toàn và nhanh
z Đích hệ thống : dễ thiếtkế, thựcthi, bảotrì, mềmdẻo, tin cậy,
lượng thứ lỗivàhiệuquả
 Tách biệt chính sách và cơ chế là nguyên lý rất quan trọng để đảm
bảo tính mềmdẻo
z Chính sách: làm cái gì?
z Cơ chế: Làm như thế nào?
2.23
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C



U TR
U TR
Ú
Ú
C ĐƠN GI
C ĐƠN GI


N
N
 MS-DOS – Đượcviết để cung cấpcáctínhnăng trong một “không
gian hẹp”
z Không chia thành các modules
z Có cấutrúcnhưng các giao diệnvàcácmức tính năng không
đượctáchbiệt
2.24
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
C
C


U TR
U TR
Ú
Ú

C PHÂN T
C PHÂN T


NG C
NG C


A MS
A MS
-
-
DOS
DOS
2.25
Silberschatz, Galvin and Gagne ©2005
Operating System Concepts – 7
th
Edition, Jan 14, 2005
PHƯƠNG PH
PHƯƠNG PH
Á
Á
P PHÂN T
P PHÂN T


NG
NG
 HĐH được chia thành mộtsố tầng (mức), mỗimột đượcxâydựng

trên các mứcthấphơn, mứcthấpnhất là hardware, mức cao nhất
là giao diệnngười dùng
 Với tính module hóa, các tầng đượcxâydựng sao cho mỗimộtchỉ
sử dụng các chứcnăng, dịch vụ củacáctầng thấphơn

×