Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng

Định nghĩa những gì hệ điều hành làm thì dễ hơn xác định hệ điều hành là gì.

Mục đích chính của hệ điều hành là dễ dàng sử dụng. Vì sự tồn tại của hệ điều hành

hỗ trợ nhiều cho máy tính trong việc đáp ứng các ứng dụng của người dùng. Tầm nhìn

này đặc biệt rõ ràng hơn khi nhìn hệ điều hành trên các máy tính cá nhân.

Mục tiêu thứ hai của hệ điều hành là điều hành hữu hiện hệ thống máy tính.

Mục tiêu này đặc biệt quan trọng cho các hệ thống lớn, được chia sẻ, nhiều người

dùng. Những hệ thống tiêu biểu này khá đắt, khai thác hiệu quả nhất các hệ thống này

luôn là điều mong muốn. Tuy nhiên, hai mục tiêu tiện dụng và hữu hiệu đôi khi mâu

thuẫn nhau. Trong quá khứ, xem xét tính hữu hiệu thường quan trọng hơn tính tiện

dụng. Do đó, lý thuyết hệ điều hành tập trung nhiều vào việc tối ưu hoá sử dụng tài

nguyên tính toán. Hệ điều hành cũng phát triển dần theo thời gian. Thí dụ, UNIX bắt

10đầu với bàn phím và máy in như giao diện của nó giới hạn tính tiện dụng đối với

người dùng. Qua thời gian, phần cứng thay đổi và UNIX được gắn vào phần cứng mới

với giao diện thân thiện với người dùng hơn. Nhiều giao diện người dùng đồ hoạ

GUIs (graphical user interfaces) được bổ sung cho phép tiện dụng hơn với người dùng

trong khi vẫn quan tâm tính hiệu quả.

Thiết kế hệ điều hành là một công việc phức tạp. Người thiết kế gặp phải nhiều

sự thoả hiệp trong thiết kế và cài đặt. Nhiều người tham gia không chỉ mang đến hệ

điều hành những lợi điểm mà còn liên tục xem xét và nâng cấp. Để thấy rõ những hệ

điều hành là gì và những gì hệ điều hành làm, chúng ta xem xét cách chúng phát triển

trong bốn mươi lăm năm qua. Bằng cách lần theo sự tiến triển, chúng ta có thể xác

định những thành phần của hệ điều hành và thấy cách thức và lý do hệ điều hành phát

triển như chúng có.

Hệ điều hành và kiến trúc máy tính có mối quan hệ khăng khít nhau. Để dễ

dàng sử dụng phần cứng, hệ điều hành được phát triển. Sau đó, các người dùng hệ

điều hành đề nghị những chuyển đổi trong thiết kế phần cứng để đơn giản chúng.

Nhìn lại lịch sử ngắn ngủi này, chú trọng cách giải quyết những vấn đề về hệ điều

hành để giới thiệu những đặc điểm phần cứng.

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 1

Trang 1

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 2

Trang 2

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 3

Trang 3

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 4

Trang 4

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 5

Trang 5

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 6

Trang 6

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 7

Trang 7

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 8

Trang 8

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 9

Trang 9

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 163 trang duykhanh 8440
Bạn đang xem 10 trang mẫu của tài liệu "Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng

Giáo trình Mô đun Nguyên lý hệ điều hành - Quản trị mạng
 có giá 
trị cuối tập tin đặc biệt như mục từ bảng. Các khối không được dùng được hiển thị bởi 
giá trị bảng 0. Cấp phát một khối mới tới một tập tin là một vấn đề đơn giản cho việc 
tìm mục từ bảng có giá trị 0 đầu tiên và thay thế giá trị kết thúc tập tin trước đó với địa 
chỉ của khối mới. Sau đó, số 0 được thay thế với giá trị kết thúc tập tin. Một thí dụ 
minh hoạ là cấu trúc FAT của hình X-7 cho một tập tin chứa các khối đĩa 217, 618 và 
339. 
Hình 0-7 Bảng cấp phát tập tin 
Cơ chế cấp phát FAT có thể dẫn tới số lượng lớn tìm kiếm đầu đọc đĩa nếu 
FAT không được lưu trữ(cache). Đầu đọc đĩa phải di chuyển tới điểm bắt đầu của 
phân khu để đọc FAT và tìm vị trí khối sau đó di chuyển tới vị trí của chính khối đĩa 
đó. Trong trường hợp xấu nhất, cả hai di chuyển xảy ra cho mỗi khối đĩa. Lợi điểm là 
153 
thời gian truy xuất ngẫu nhiên được cải tiến vì đầu đọc đĩa có thể tìm vị trí của bất cứ 
khối nào bằng cách đọc thông tin trong FAT. 
VI.3 Cấp phát được lập chỉ mục 
Cấp phát liên kết giải quyết việc phân mãnh ngoài và vấn đề khai báo kích 
thước của cấp phát kề. Tuy nhiên, cấp phát liên kết không hỗ trợ truy xuất trực tiếp 
hiệu quả vì các con trỏ chỉ tới các khối được phân tán với chính các khối đó qua đĩa 
và cần được lấy lại trong thứ tự. Cấp phát được lập chỉ mục giải quyết vấn đề này 
bằng cách mang tất cả con trỏ vào một vị trí: khối chỉ mục (index block). 
Mỗi tập tin có khối chỉ mục của chính nó, khối này là một mảng các địa chỉ khối 
đĩa. Mục từ thứ i trong khối chỉ mục chỉ tới khối i của tập tin. Thư mục chứa địa chỉ 
của khối chỉ mục (như hình X-8). Để đọc khối i, chúng ta dùng con trỏ trong mục từ 
khối chỉ mục để tìm và đọc khối mong muốn. Cơ chế này tương tự như cơ chế phân 
trang. 
Hình 0-8 Cấp phát không gian đĩa được lập chỉ mục 
Khi một tập tin được tạo, tất cả con trỏ trong khối chỉ mục được đặt tới nil. Khi 
khối thứ i được viết đầu tiên, khối được chứa từ bộ quản lý không gian trống và địa 
chỉ của nó được đặt trong mục từ khối chỉ mục. 
Cấp phát được lập chỉ mục hỗ trợ truy xuất trực tiếp, không gặp phải sự phân 
mãnh ngoài vì bất cứ khối trống trên đĩa có thể đáp ứng yêu cầu thêm không gian. 
Cấp phát được lập chỉ mục gặp phải sự lãng phí không gian. Chi phí con trỏ của khối 
chỉ mục thường lớn hơn chi phí con trỏ của cấp phát liên kết. Xét trường hợp thông 
thường trong đó chúng ta có một tập tin với chỉ một hoặc hai khối. Với cấp phát liên 
kết, chúng ta mất không gian của chỉ một con trỏ trên khối (một hay hai con trỏ). Với 
154 
cấp phát được lập chỉ mục, toàn bộ khối chỉ mục phải được cấp phát thậm chí nếu một 
hay hai con trỏ là khác nil. 
Điểm này sinh ra câu hỏi khối chỉ mục nên lớn bao nhiêu? Mỗi tập tin phải có 
một khối chỉ mục để mà chúng ta muốn khối chỉ mục nhỏ nhất có thể. Tuy nhiên, nếu 
khối chỉ mục quá nhỏ nó không thể quản lý đủ các con trỏ cho một tập tin lớn và một 
cơ chế sẽ phải sẳn có để giải quyết vấn đề này: 
• Cơ chế liên kết (linked scheme): một khối chỉ mục thường là một khối đĩa. 
Do đó, nó có thể được đọc và viết trực tiếp bởi chính nó. Để cho phép đối 
với các tập tin lớn, chúng ta có thể liên kết nhiều khối chỉ mục với nhau. 
Thí dụ, một khối chỉ mục có thể chứa một header nhỏ cho tên tập tin và 
một tập hợp của các địa chỉ 100 khối đĩa đầu tiên. Địa chỉ tiếp theo (từ cuối 
cùng trong khối chỉ mục) là nil (đối với một tập tin nhỏ) hay một con trỏ tới 
khối chỉ mục khác (cho một tập tin lớn) 
• Chỉ mục nhiều cấp (multilevel index): một biến dạng của biểu diễn liên 
kết là dùng khối chỉ mục cấp 1 để chỉ tới khối chỉ mục cấp 2. Khối cấp 2 
chỉ tới các khối tập tin. Để truy xuất một khối, hệ điều hành dùng chỉ mục 
cấp 1 để tìm một khối chỉ mục cấp 2 và khối đó tìm khối dữ liệu mong 
muốn. Tiếp cận này có thể được tiếp tục tới cấp 3 hay cấp 4, tuỳ thuộc vào 
kích thước tập tin lớn nhất được mong muốn. Với khối có kích thước 4,096 
bytes, chúng ta có thể lưu 1,024 con trỏ 4 bytes trong một khối chỉ mục. 
Chỉ mục hai cấp cho phép 1,048,576 khối dữ liệu, cho phép tập tin có kích 
thước tới 4GB. 
• Cơ chế kết hợp (combined scheme): một biến dạng khác được dùng trong 
UFS là giữ 15 con trỏ đầu tiên của khối chỉ mục trong inode của tập tin. 
12 con trỏ đầu tiên của 15 con trỏ này chỉ tới khối trực tiếp (direct blocks); 
nghĩa là chúng chứa các địa chỉ của khối mà chứa dữ liệu của tập tin. Do 
đó, dữ liệu đối với các tập tin nhỏ (không lớn hơn 12 khối) không cần một 
khối chỉ mục riêng. Nếu kích thước khối là 4 KB, thì tới 48 KB dữ liệu có 
thể truy xuất trực tiếp. 3 con trỏ tiếp theo chỉ tới các khối gián tiếp (indirect 
blocks). Con trỏ khối gián tiếp thứ nhất là địa chỉ của khối gián tiếp đơn 
(single indirect blocks). Khối gián tiếp đơn là một khối chỉ mục không chứa 
dữ liệu nhưng chứa địa chỉ của các khối chứa dữ liệu. Sau đó, có con trỏ 
khối gián tiếp đôi (double indirect block) chứa địa chỉ của một khối mà 
khối này chứa địa chỉ của các khối chứa con trỏ chỉ tới khối dữ liệu thật sự. 
Con trỏ cuối cùng chứa chứa địa chỉ của khối gián tiếp ba (triple indirect 
block). Với phương pháp này, số khối có thể được cấp phát tới một tập tin 
vượt quá lượng không gian có thể đánh địa chỉ bởi các con trỏ tập tin 4 
bytes hay 4 GB. Nhiều cài đặt UNIX gồm Solaris và AIX của IBM hỗ trợ 
tới 64 bit con trỏ tập tin. Các con trỏ có kích thước này cho phép các tập tin 
và hệ thống tập tin có kích thước tới terabytes. Một inode được hiển thị 
155 
trong hình X-9: 
156 
Hình 0-9 Inode của UNIX 
Cơ chế cấp phát lập chỉ mục gặp một số khó khăn về năng lực như cấp phát 
liên kết. Đặc biệt, các khối chỉ mục có thể được lưu trữ (cache) trong bộ nhớ; nhưng 
các khối dữ liệu có thể được trãi rộng khắp phân khu. 
VI.4 Năng lực 
Các phương pháp cấp phát ở trên khác nhau về tính hiệu quả lưu trữ và thời 
gian truy xuất khối dữ liệu. Cả hai yếu tố này là tiêu chuẩn quan trọng trong việc chọn 
phương pháp hợp lý hay các phương pháp cho một hệ điều hành cài đặt. Trước khi 
chọn một phương pháp, chúng ta cần xác định hệ thống sẽ được dùng như thế nào. 
Một hệ thống với hầu hết truy xuất tuần tự nên dùng một phương pháp khác từ hệ 
thống với hầu hết truy xuất ngẫu nhiên. Đối với bất cứ loại truy xuất nào, cấp phát kề 
yêu cầu chỉ một truy xuất để đạt được một khối đĩa. Vì chúng ta có thể giữ dễ dàng địa 
chỉ khởi đầu của tập tin trong bộ nhớ, chúng ta có thể tính lập tức địa chỉ đĩa của khối 
thứ i (hay khối kế tiếp) và đọc nó trực tiếp. 
Đối với cấp phát liên kết, chúng ta cũng có thể giữ địa chỉ khối kế tiếp trong bộ 
nhớ và đọc nó trực tiếp. Phương pháp này là tốt cho truy xuất tuần tự; tuy nhiên, đối 
với truy xuất trực tiếp một truy xuất tới khối thứ i phải yêu cầu đọc I đĩa. Vấn đề này 
minh hoạ lý do cấp phát liên kết không được dùng cho một ứng dụng yêu cầu truy 
xuất trực tiếp. 
Do đó, một số hệ thống hỗ trợ các tập tin truy xuất trực tiếp bằng cách dùng 
157 
cấp phát kề và truy xuất tuần tự bởi cấp phát liên kết. Đối với các hệ thống này, loại 
truy xuất được thực hiện phải được khai báo khi tập tin được tạo. Một tập tin được tạo 
cho truy xuất tuần tự sẽ được liên kết và không thể được dùng cho truy xuất trực tiếp. 
Một tập tin được tạo cho truy xuất trực tiếp sẽ kề nhau và có thể hỗ trợ cả hai truy 
xuất trực tiếp và truy xuất tuần tự nhưng chiều dài tối đa của nó phải được khai báo 
khi nó được tạo. Trong trường hợp này, hệ điều hành phải có cấu trúc dữ liệu hợp lý 
và các giải thuật để hỗ trợ cả hai phương pháp cấp phát. Các tập tin có thể được 
chuyển từ một kiểu này sang một kiểu khác bằng cách tạo một tập tin mới của loại 
mong muốn và các nội dung của tập tin cũ được chép vào tập tin mới. Sau đó, tập tin 
cũ có thể bị xoá và tập tin mới được đổi tên. 
Cấp phát dạng chỉ mục phức tạp hơn. Nếu khối chỉ mục đã ở trong bộ nhớ rồi thì 
truy xuất có thể được thực hiện trực tiếp. Tuy nhiên, giữ khối chỉ mục trong bộ nhớ yêu 
cầu không gian có thể xem xét. Nếu không gian bộ nhớ này không sẳn dùng thì chúng ta 
phải đọc trước khối chỉ mục và sau đó khối dữ liệu mong muốn. Đối với chỉ mục hai cấp, 
đọc hai khối chỉ mục là cần thiết. Đối với tập tin rất lớn, truy xuất một khối gần cuối tập 
tin yêu cầu đọc tất cả khối chỉ mục để lần theo chuỗi con trỏ trước khi khối dữ liệu được 
yêu cầu cuối cùng được đọc. Do đó, năng lực của cấp phát chỉ mục phụ thuộc cấu trúc chỉ 
mục trên kích thước tập tin và vị trí của khối mong muốn. 
Một số hệ thống kết hợp cấp phát kề và cấp phát chỉ mục bằng cách dùng cấp 
phát kề cho các tập tin nhỏ (ba hay bốn khối) và tự động chuyển tới cấp phát chỉ mục 
nếu tập tin lớn lên. Vì hầu hết các tập tin là nhỏ và cấp phát kề là hiệu quả cho các tập 
tin nhỏ, năng lực trung bình là rất tốt. 
Nhiều tối ưu khác là có thể và đang được dùng. Với sự chênh lệch tốc độ giữa 
CPU và đĩa, nó là không hợp lý để thêm hàng ngàn chỉ thị tới hệ điều hành để tiết 
kiệm chỉ một vài di chuyển của đầu đọc. Ngoài ra, sự chênh lệch này tăng theo thời 
gian, tới điểm nơi mà hàng trăm của hàng ngàn chỉ thị phù hợp có thể được dùng để 
tối ưu sự di chuyển của đầu đọc. 
VII Quản lý không gian trống 
Vì không gian trống là giới hạn nên chúng ta cần dùng lại không gian từ các tập 
tin bị xoá cho các tập tin mới nếu có thể. Để giữ vết của không gian đĩa trống, hệ 
thống duy trì một danh sách không gian trống. Danh sách không gian trống ghi lại tất 
cả khối đĩa trống. Để tạo tập tin, chúng ta tìm trong danh sách không gian trống lượng 
không gian được yêu cầu và cấp phát không gian đó tới tập tin mới. Sau đó, không 
gian này được xoá từ danh sách không gian trống. Khi một tập tin bị xoá, không gian 
đĩa của nó được thêm vào danh sách không gian trống. Mặc dù tên của nó là danh 
sách nhưng danh sách không gian trống có thể không được cài như một danh sách. 
VII. 1 Bit vector 
Thường thì danh sách không gian trống được cài đặt như một bản đồ bit (bit 
158 
map) hay một vector bit (bit vector). Mỗi khối được biểu diễn bởi 1 bit. Nếu khối là 
trống, bit của nó được đặt là 1, nếu khối được cấp phát bit của nó được đặt là 0. Thí 
dụ, xét một đĩa khi các khối 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 17, 18, 25, 26, và 27 là 
trống và các khối còn lại được cấp phát. Bản đồ bit không gian trống sẽ là: 
001111001111110001100000011100000... 
Lợi điểm chính của tiếp cận này là tính tương đối đơn giản và hiệu quả của nó 
trong việc tìm khối trống đầu tiên, hay n khối trống tiếp theo trên đĩa. 
Một lần nữa, chúng ta thấy các đặc điểm phần cứng định hướng chức năng 
phần mềm. Tuy nhiên, các vector bit là không đủ trừ khi toàn bộ vector được giữ 
trong bộ nhớ chính. Giữ nó trong bộ nhớ chính là có thể cho các đĩa nhỏ hơn, như trên 
các máy vi tính nhưng không thể cho các máy lớn hơn. Một đĩa 1.3 GB với khối 512 
bytes sẽ cần một bản đồ bit 332 KB để ghi lại các khối trống. Gom bốn khối vào một 
nhóm có thể giảm số này xuống còn 83 KB trên đĩa. 
VII. 2 Danh sách liên kết 
Hình 0-10 danh sách không gian trống được liên kết trên đĩa 
Một tiếp cận khác để quản lý bộ nhớ trống là liên kết tất cả khối trống, giữ một 
con trỏ tới khối trống đầu tiên trong 12một vị trí14Q15Ũđặc biệt trên đĩa và lưu nó trong bộ 
nhớ. Khối đầu tiên này chứa con trỏ chỉ tới khối đĩa trống tiếp theo,..Trong thí dụ trên, 
chúng ta có thể giữ một con trỏ chỉ tới khối 2 như là khối trống đầu tiên. Khối 2 sẽ chứa 
một con trỏ chỉ tới khối 3, khối240 25này sẽ chỉ tới khối 4,.. .(như hình X-10). Tuy nhiên, cơ 
chế này không hiệu quả để duyệt28O29Ei30n3indanh sách, chúng ta phải đọc mỗi khối, yêu cầu 
thời gian nhập/xuất đáng kể. Tuy nhiên, duyệt danh sách trống không là hoạt động thường 
xuyên. Thường thì, hệ điều hành cần một khối trống để mà nó có thể cấp phát khối đó tới 
một tập tin, vì thế khối đầu tiên trong danh sách trống được dùng. Phương 
159 
pháp FAT kết hợp với đếm khối trống thành cấu trúc dữ liệu cấp phát. 
VII.3 Nhóm 
Thay đổi tiếp cận danh sách trống để lưu địa chỉ của n khối trống trong khối 
trống đầu tiên. n-1 khối đầu tiên này thật sự là khối trống. Khối cuối cùng chứa địa chỉ 
của n khối trống khác, ..Sự quan trọng của việc cài đặt này là địa chỉ của một số lượng 
lớn khối trống có thể được tìm thấy nhanh chóng, không giống như trong tiếp cận 
danh sách liên kết chuẩn. 
VII.4 Bộ đếm 
Một tiếp cận khác đạt được lợi điểm trong thực tế là nhiều khối kề có thể được 
cấp phát và giải phóng cùng lúc, đặc biệt khi không gian được cấp phát với giải thuật 
cấp phát kề hay thông qua nhóm. Do đó, thay vì giữ một danh sách n địa chỉ đĩa trống, 
chúng ta có thể giữ địa chỉ của khối trống đầu tiên và số n khối kề trống theo sau khối 
đầu tiên. Mỗi mục từ trong danh sách không gian trống sau đó chứa một địa chỉ đĩa và 
bộ đếm. Mặc dù mỗi mục từ yêu cầu nhiều không gian hơn một địa chỉ đĩa đơn, nhưng 
toàn bộ danh sách sẽ ngắn hơn với điều kiện là bộ đếm lớn hơn 1. 
VIII Tóm tắt 
Hệ thống tập tin định vị không đổi trên thiết bị lưu trữ phụ được thiết kế để quản 
lý một lượng lớn dữ liệu không đổi. Phương tiện lưu trữ phụ phổ biến nhất là đĩa. 
Đĩa vật lý có thể được chia thành nhiều phân khu để điều khiển việc sử dụng 
phương tiện và cho phép nhiều hệ thống tập tin (có thể khác nhau) trên đĩa. Các hệ 
thống tập tin này được gắn vào kiến trúc hệ thống tập tin luận lý để làm cho chúng sẳn 
dùng. Các hệ thống tập tin thường được cài đặt trong một kiến trúc phân tầng hay 
module. Những cấp thấp hơn giải quyết các thuộc tính vật lý của các thiết bị lưu trữ. 
Cấp cao hơn giải quyết các tên tập tin biểu tượng và các thuộc tính luận lý của tập tin. 
Các cấp trung gian ánh xạ các khái niệm tập tin luận lý thành các thuộc tính thiết bị 
vật lý. 
Mỗi kiểu hệ thống tập tin có các cấu trúc và giải thuật khác nhau. Một tầng VFS 
cho phép các tầng cao hơn giải quyết mỗi kiểu hệ thống tập tin khác nhau trong cùng một 
cách. Ngay cả các hệ thống tập tin ở xa có thể được tích hợp vào cấu trúc thư mục của hệ 
thống và được hoạt động trên các lời gọi hệ thống chuẩn bằng giao diện VFS. 
Những tập tin khác nhau có thể được cấp phát không gian trên đĩa trong 3 cách: 
kề, liên kết hay chỉ mục. Cấp phát kề có thể gặp phải sự phân mãnh ngoài. Truy xuất 
trực tiếp là kém hiệu quả với cấp phát liên kết. Cấp phát chỉ mục yêu cầu chi phí đáng 
kể cho khối chỉ mục của nó. Các giải thuật này có thể tối ưu trong nhiều cách. Không 
gian kề có thể lớn lên thông qua đoạn mở rộng để tăng khả năng linh hoạt và giảm 
phân mãnh ngoài. Cấp phát chỉ mục có thể được thực hiện trong việc nhóm nhiều khối 
để tăng thông lượng và giảm số lượng các mục từ chỉ mục được yêu cầu. Lập chỉ mục 
160 
trong các nhóm là tương tự như cấp phát kề với các đoạn mở rộng. 
Các phương pháp cấp phát không gian trống cũng ảnh hưởng tới tính hiệu quả 
của không gian đĩa, năng lực hệ thống tập tin và khả năng tin cậy của thiết bị lưu trữ 
phụ. Các phương pháp được dùng gồm các vector bit và các danh sách liên kết. Các 
tối ưu gồm nhóm, đếm và FAT, mà đặt danh sách liên kết trong một vùng kề. 
161 

File đính kèm:

  • pdfgiao_trinh_mo_dun_nguyen_ly_he_dieu_hanh_quan_tri_mang.pdf