Giáo trình phân tích khả năng tạo lập một chương trình giả lập trên máy tính đối với máy tính không có phần mềm giả lập phần 5 - Pdf 21

 Plug and Play Manager (quản lý plug and play): Plug and play theo
dõi các hoạt động tại thời điểm Boot của các thiết bị plug and play và nó
tương tác với HAL, các điều khiển thiết bị và Executive. Nó xác định các
điều khiển bus thực hiện việc cấu hình và đếm như thế nào. Nó cũng xác
định khi nào thì các điều khiển thiết bị được thêm vào hoặc khi nào thì khởi
tạo một thiết bị.
 Process and Thread Manager (quản lý tiến trình và tiểu trình): Tạo và
kết thúc các tiến trình và tiểu trình. Hỗ trợ các tiến trình và tiểu trình được
cài đặt bên trong Windows 2000 kernel.
 Và một số thành phần khác như: Power manager (quản lý nguồn);
Cache manager (quản lý cache); Virtual memory manager (quản lý bộ nhớ
ảo), …
 Ngoài ra executive còn chứa bốn nhóm chính các hàm hỗ trợ mà nó
được sử dụng bởi chỉ các thành phần executive được liệt kê. Sau đây là bốn
loại hàm hỗ trợ:
 Object Manager (quản lý đối tượng): Tạo, quản lý, xoá các đối
tượng Windows 2000 executive và các loại dữ liệu trừu tượng mà nó
được sử dụng để chỉ đến các tài nguyên của Windows 2000 như: các
tiến trình, các tiểu trình, và các đối tượng đồng bộ khác.
 LPC facility: Chuyển thông điệp giữa các tiến trình client và các
tiến trình server trên cùng máy tính. LPC có tính mềm dẻo, và là
version được tối ưu của Remote Function Call (RPC).
 Một tập các hàm thư viện run-time như là: xử lý string, thực
hiện các phép tính, chuyển đổi các kiểu dữ liệu và xử lý các cấu trúc
an toàn.
 Executive support routine: như là cấp phất bộ nhớ hệ thống,
khoá truy cập bộ nhớ và các đối tượng đồng bộ.
 Kernel:
Kernel bao gồm một tập các hàm trong Ntoskrnl.exe mà nó cung cấp các kỹ thuật
cơ bản, như điều phối tiểu trình và đồng bộ các dịch vụ, được sử dụng bởi các
thành phần executive, cũng như hỗ trợ cho các kiến trúc phần cứng cấp thấp trên

o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w

 Device Drivers:
Các Device Driver (*.sys) là các modun kernel, nó là giao diện giữa thành phần
quản lý I/O và các phần cứng có liên quan. Các device driver không thao tác trực
tiếp trên phần cứng, nó chỉ gọi các hàm trong HAL để giao tiếp với phần cứng.
Windows 2000 có các loại Divice Driver sau đây:
 Các hardware device driver thao tác phần cứng, sử dụng HAL, để
ghi/đọc trên các thiết bị vật lý hoặc mạng. Loại này bao gồm: các điều khiển
bus, các điều khiển thiết bị giao tiếp với người sử dụng, các điều khiển thiết
bị lưu trữ khối, …
 Các file system driver là các điều khiển mà Windows 2000 dùng nó
để truy cập các file trong hệ thống.
 …
 Kernel Mode Drivers:
Kernel Mode Drivers cũng được cài đặt như là một thành phần, nó chứa tất cả các
chức năng cần thiết. Nó gồm có: WMD (Windows Drive Model) driver, cùng với
nhiều driver để hỗ trợ cho các yêu cầu của các thiết bị cụ thể.
I.14. Hệ điều hành Linux
Linux là hệ điều hành miễn phí được xây dựng từ hệ điều hành Unix. Nó được phát
triển bởi Linus Torvalds, một sinh viên của trường Đại học Hensinki. Linus chỉ
chịu trách nhiệm tạo ra hệ thống kernel. Kernel là phần lõi của hệ điều hành, nó
chịu trách nhiệm thực hiện các tác vụ của hệ thống. Linux bây giờ như một tập các
phần mềm mà trong đó bao gồm kernel và các thành phần khác để nó trở thành một
hệ điều hành hoàn chỉnh. Một trong những nguyên nhân làm cho Linux được nhiều
người biết đến là nó được cung cấp miễn phí với mã nguồn mở.
Hình vẽ 1.13 dưới đây cho thấy cấu trúc của hệ điều hành Unix. Hình vẽ cho
thấy hệ điều hành Linux được chia thành 2 cấp: User Level (cấp người sử dụng) và
Kernel Level (cấp lõi).
Click to buy NOW!
P
D

.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c

File Subsystem

Inter Processor
Communication

Process
Control

System Call Interface

Libraries


o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
 Sau đây là một vài đặc điểm của Linux:
 Miễn phí (Free): Linux là một hệ điều hành được cung cấp miễn phí
trên Internet, chúng ta không phải trả bất kỳ một chi phí nào cho việc
download nó. Linux được cung cấp cùng với các phâìn mềm chạy trên nó.
 Mã nguồn mở (Open Source): Điều này có nghĩa người sử dụng không
chỉ sử dụng hệ điều hành và thực hiện các chương trình mà còn có thể xem
và sửa đổi mã nguồn của nó, để phát triển nó theo từng mục đích cụ thể của
người sử dụng.
 Yêu cầu phần cứng (Hardware): Linux có thể chạy trên hầu hết các
phần cứng hiện có, nó có thể hoạt động trên các vi xử lý: 386, 486, Pentium
MMX, Pentium II, Sparc, Dec Alpha hoặc Motorola 68000.
 Đa tác vụ (Multi-Tasking): Linux là hệ điều hành đa tác vụ, tức là một
người sử dụng có thể chạy nhiều chương trình tại cùng một thời điểm. Mỗi
tác vụ là một tiến trình. Theo cách này người sử dụng không cần phải đợi cho
Click to buy NOW!
P
D
F
-

o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-

thống file an toàn, nó được mở rộng từ hệ thống file đang tồn tại.

Chương II
QUẢN LÝ TIẾN TRÌNH

Tất cả các hệ điều hành đa chương, từ các hệ điều hành đơn người sử
dụng đến các hệ điều hành có thể hỗ trợ đến hàng ngàn người sử
dụng, đều phải xây dụng dựa trên khái niệm tiến trình. Vì thế, một yêu
cầu quan trọng trong thiết kế hệ điều hành là thành phần quản lý tiến
trình của hệ điều hành phải đáp ứng tất cả những gì liên quan đến
tiến trình:
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e

n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
 Hệ điều hành phải cho phép thực hiện nhiều tiến trình đồng
thời để khai thác tối đa thời gian xử lý của processor nhưng cũng

sang trạng thái khác dưới tác động của hàm hành động, xuất phát từ một trạng thái
ban đầu nào đó.
Định nghĩa của Saltzer cho thấy, trên góc độ thực hiện thì tiến trình hoàn
toàn tương tự chương trình, chỉ khác ở chỗ: tiến trình do processor logic chứ không
phải processor vật lý thực hiện. Điều này sẽ được làm sáng tỏ trong phần mô tả về
tiến trình sau đây. Định nghĩa của Horning & Rendell cho thấy trong quá trình hoạt
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d

e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
động của tiến trình là quá trình chuyển từ trạng thái này sang trạng thái khác nhưng
sự chuyển đổi này không phải do chính bản thân tiến trình mà là do sự tác động từ
bên ngoài, cụ thể ở đây là bộ phận điều phối tiến trình của hệ điều hành. Điều này
sẽ được làm sáng tỏ trong phần mô tả về các trạng thái tiến trình sau đây.
 Các loại tiến trình: Các tiến trình trong hệ thống có thể chia thành hai loại:
tiến trình tuần tự và tiến trình song song. Tiến trình tuần tự là các tiến trình mà
điểm khởi tạo của nó là điểm kết thúc của tiến trình trước đó. Tiến trình song song
là các tiến trình mà điểm khởi tạo của tiến trình này mằn ở thân của các tiến trình
khác, tức là có thể khởi tạo một tiến trình mới khi các tiến trình trước đó chưa kết
thúc. Tiến trình song song được chia thành nhiều loại:

P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a

o
c
u
-
t
r
a
c
k
.
c
o
m
multiprocessor, trong hệ thống này mỗi processor chịu trách nhiệm thực hiện một
tiến trình. Sự song song trên các hệ thống uniprocessor là sự song song giả, các
tiến trình song song trên hệ thống này thực chất là các tiến trình thay nhau sử dụng
processor, tiến trình này đang chạy thì có thể dừng lại để nhường processor cho
tiến trình khác chạy và sẽ tiếp tục lại sau đó khi có được processor. Đây là trường
hợp mà ở trên ta cho rằng: điểm khởi tạo của tiến trình này nằm ở thân của tiến
trình khác.
Hình vẽ sau đây minh họa sự khác nhau, về mặt thực hiện, giữa các tiến trình
song song/ đồng thời trong hệ thống uniprocessor với các tiến trình song song/
đồng thời trong hệ thống multiprocessor.


P2

P3

Time

b. Trong hệ thống Multiprocessor
Hình 2.1: Sự thực hiện đồng thời của các tiến tr
ình trong
h
ệ thống uniprocessor (a) v
à h
ệ thống multiprocessor (b).

Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e

n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
là, trong hệ thống có thể có nhiều chương trình hoạt động đồng thời (concurrence)
với nhau. Về nguyên tắc, để thực hiện được điều này thì hệ thống phải có nhiều

thì quá trình chuyển
processor giữa 3 tiến trình này có thể minh họa như sau:

Thời điểm Trạng thái các tiến trình
t
1
P
1
: được cấp processor
t
2
P
1
: bị thu hồi processor (khi chưa kết thúc)
P
3
: được cấp processor
t
3
P
3
: bị thu hồi processor (khi chưa kết thúc)
P
1
: được cấp processor
t
4
P
1
: kết thúc và trả lại processor

w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

, P
2
, P
3
ở trên:
Chúng ta đều biết, chức năng cở bản của processor là thực hiện các chỉ thị
máy (machine instrustion) thường trú trong bộ nhớ chính, các chỉ thị này được cung
cấp từ một chương trình, chương trình bao gồm một dãy tuần tự các chỉ thị. Và theo
trên, tiến trình là một bộ phận của chương trình, nó cũng sở hữu một tập lệnh trong
bộ nhớ chính, một con trỏ lệnh,… Nên xét về bản chất, thì việc chuyển processor từ
tiến trình này sang tiến trình khác thực chất là việc điều khển processor để nó thực
hiện xen kẽ các chỉ thị bên trong tiến trình. Điều này có thể thực hiện dễ dàng bằng
cách thay đổi hợp lý giá trị của con trỏ lệnh, đó chính là cặp thanh ghi CS:IP trong
các processor thuộc kiến trúc Intel, để con trỏ lệnh chỉ đến các chỉ thị cần thực hiện
trong các tiến trình. Để thấy rõ hơn điều này ta hãy xem ví dụ sau đây:
Giả sử hệ thống cần thực hiện đồng thời 3 tiến trình P
1
, P
2
, P
3
, bắt đầu từ tiến
trình P
1

3
từ lệnh đầu tiên
đến lệnh cuối cùng, cho đến khi tất cả các chỉ thị của 3 tiến trình đều được thực
hiện. Nhưng khoảng thời gian từ khi con trỏ lệnh = a + 0 đến khi = a + 1, hay từ
khi = b + 0 đến khi = b + 2, … là rất nhỏ, nên hệ thống có “cảm giác” 3 tiến trình
P
1
, P
2
, P
3
hoạt động đồng thời với nhau.
P1

P2

P3

Time

Hình 2.2:
Sự hoạt động “song song” của các tiến trình P
1
, P
2
, P
3

uniprocessor


w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status