Giáo trình Hệ điều hành - Chương 9: Hệ thống tập tin - Nguyễn Phú Trường

I Mục đích

Sau khi học xong chương này, người học nắm được những kiến thức sau:

• Hiểu các khía cạnh khác nhau của tập tin và cấu trúc thư mục

• Hiểu các cơ chế quản lý, kiểm soát, bảo vệ tập tin khi có nhiều người cùng

truy xuất

• Hiểu cách chia sẻ tập tin giữa nhiều quá trình, người dùng và máy tính

pdf19 trang | Chia sẻ: hienduc166 | Lượt xem: 750 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Giáo trình Hệ điều hành - Chương 9: Hệ thống tập tin - Nguyễn Phú Trường, để tải tài liệu về máy bạn click vào nút TẢI VỀ ở trên
Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 
pháp đầu tiên. Một trình duyệt được yêu cầu để đạt được truy xuất các tập tin từ xa và 
các thao tác riêng biệt được dùng để truyền tập tin. 
VIII Bảo vệ 
Khi thông tin được giữ trong một hệ thống máy tính, chúng ta muốn giữ nó an 
toàn từ hỏng hóc vật lý (khả năng tin cậy) và những truy xuất không hợp lý (bảo vệ). 
Khả năng tin cậy thường được cung cấp bởi nhân bản các tập tin. Nhiều máy tính có 
các chương trình hệ thống tự động chép các tập tin trên đĩa tới băng từ tại những 
khoảng thời gian đều đặn để duy trì một bản sao. Hệ thống tập tin có thể bị hỏng bởi 
phần cứng, thay đổi đột ngột về điện, nhiệt độ tăng cao,..các tập tin có thể bị xoá do 
rủi ro. Những con bọ (bugs) trong phần mềm hệ thống tập tin có thể làm cho nội dung 
tập tin bị mất. 
Bảo vệ có thể được cung cấp trong nhiều cách. Đối với một hệ thống người 
dùng đơn nhỏ, chúng ta có thể cung cấp sự bảo vệ bằng cách gỡ bỏ các đĩa mềm và 
khoá chúng trong ngăn kéo. Tuy nhiên, trong hệ thống đa người dùng, những cơ chế 
khác được yêu cầu. 
VIII.1 Các kiểu truy xuất 
Nhu cầu bảo vệ tập tin là một kết quả trực tiếp của khả năng để truy xuất tập 
tin. Hệ thống không cho phép truy xuất các tập tin của người dùng khác thì không cần 
bảo vệ. Do đó, chúng ta có thể cung cấp sự bảo vệ toàn diện bằng cách cấm truy xuất. 
Một cách khác, chúng ta có thể cung cấp truy xuất thoải mái và không cần bảo vệ. Cả 
hai tiếp cận là quá cực đoan cho các sử dụng thông thường. Yêu cầu truy xuất được 
kiểm soát là gì? 
Các cơ chế bảo vệ cung cấp truy xuất được kiểm soát bằng cách giới hạn kiểu 
truy xuất tập tin có thể thực hiện. Truy xuất được phép hay bị từ chối phụ thuộc nhiều 
yếu tố, một trong những yếu tố là kiểu truy xuất được yêu cầu. Nhiều kiểu thao tác có 
thể được kiểm soát: 
• Đọc (Read): đọc từ tập tin. 
• Viết (Write): viết hay viết lại tập tin. 
• Thực thi (Execute): nạp tập tin vào bộ nhớ và thực thi nó. 
• Chèn cuối (Append): viết thông tin mới vào cuối tập tin. 
• Xoá (Delete): xoá tập tin và giải phóng không gian để có thể dùng lại 
• Liệt kê (List): liệt kê tên và thuộc tính của tập tin 
Những thao tác khác như đổi tên, chép, soạn thảo tập tin có thể cũng được 
kiểm soát. Tuy nhiên, đối với nhiều hệ thống, các chức năng cao hơn này có thể được 
cài đặt bởi một chương trình hệ thống thực hiện lời gọi hệ thống cấp thấp hơn. Bảo vệ 
được cung cấp chỉ tại cấp thấp hơn. Thí dụ, chép một tập tin có thể được cài đơn giản 
bởi một chuỗi các yêu cầu đọc. Trong trường hợp này, người dùng với truy xuất đọc 
cũng có thể làm cho tập tin được chép, in,.. 
Nhiều cơ chế bảo vệ được đề nghị. Mỗi cơ chế có lợi điểm và nhược điểm và 
phải phù hợp cho ứng dụng được dự định. Một hệ thống máy tính nhỏ được dùng chỉ 
bởi một vài thành viên của một nhóm nghiên cứu có thể không cần cùng kiểu bảo vệ 
như máy tính của công ty lớn. 
Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 Trang 
216
Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 
VIII.2 Kiểm soát truy xuất 
Tiếp cận thông dụng nhất đối với vấn đề bảo vệ là thực hiện truy xuất phụ 
thuộc định danh của người dùng. Những người dùng khác nhau cần các kiểu truy xuất 
khác nhau tới một tập tin hay thư mục. Cơ chế thông dụng nhất để cài đặt truy xuất 
phụ thuộc định danh là gắn với mỗi tập tin và thư mục một danh sách kiểm soát truy 
xuất (access-control list-ACL) xác định tên người dùng và kiểu truy xuất được phép 
cho mỗi người dùng. Khi một người dùng yêu cầu truy xuất tới một tập tin cụ thể, hệ 
điều hành kiểm tra danh sách truy xuất được gắn tới tập tin đó. Nếu người dùng đó 
được liệt kê cho truy xuất được yêu cầu, truy xuất được phép. Ngược lại, sự vi phạm 
bảo vệ xảy ra và công việc của người dùng đó bị từ chối truy xuất tới tập tin. 
Tiếp cận này có lợi điểm của việc cho phép các phương pháp truy xuất phức 
tạp. Vấn đề chính với các danh sách truy xuất là chiều dài của nó. Nếu chúng ta muốn 
cho phép mọi người dùng đọc một tập tin, chúng ta phải liệt kê tất cả người dùng với 
truy xuất đọc. Kỹ thuật này có hai kết quả không mong muốn: 
• Xây dựng một danh sách như thế có thể là một tác vụ dài dòng và không 
đáng, đặc biệt nếu chúng ta không biết trước danh sách người dùng trong 
hệ thống. 
• Mục từ thư mục, trước đó có kích thước cố định, bây giờ có kích thước 
thay đổi, dẫn đến việc quản lý không gian phức tạp hơn 
Những vấn đề này có thể được giải quyết bởi việc dùng ấn bản cô đọng của 
danh sách truy xuất. 
Để cô đọng chiều dài của danh sách kiểm soát truy xuất, nhiều hệ thống nhận 
thấy 3 sự phân cấp người dùng trong nối kết với mỗi tập tin: 
• Người sở hữu (Owner): người dùng tạo ra tập tin đó 
• Nhóm (Group): tập hợp người dùng đang chia sẻ tập tin và cần truy xuất 
tương tự là nhóm hay nhóm làm việc 
• Người dùng khác (universe): tất cả người dùng còn lại trong hệ thống 
Tiếp cận phổ biến gần đây nhất là kết hợp các danh sách kiểm soát truy xuất 
với người sở hữu, nhóm và cơ chế kiểm soát truy xuất được mô tả ở trên 
Để cơ chế này làm việc hợp lý, các quyền và danh sách truy xuất phải được 
kiểm soát chặt chẽ. Kiểm soát này có thể đạt được trong nhiều cách. Thí dụ, trong hệ 
thống UNIX, các nhóm có thể được tạo và sửa đổi chỉ bởi người quản lý của tiện ích. 
Do đó, kiểm soát này đạt được thông qua giao tiếp người dùng. 
Với việc phân cấp bảo vệ được giới hạn hơn, chỉ có ba trường được yêu cầu để 
xác định bảo vệ. Mỗi trường thường là một tập hợp các bit, mỗi trường cho phép hay 
ngăn chặn truy xuất được gắn với nó. Thí dụ, hệ thống UNIX định nghĩa 3 trường 3 
bit-rwx, ở đây r kiểm soát truy xuất đọc, w kiểm soát truy xuất viết, x kiểm soát truy 
xuất thực thi. Một trường riêng rẻ được giữ cho người sở hữu, cho nhóm tập tin và 
cho tất cả người dùng khác. Trong cơ chế này, 9 bits trên tập tin được yêu cầu để ghi 
lại thông tin bảo vệ. 
VIII.3 Các tiếp cận bảo vệ khác 
Một tiếp cận khác cho vấn đề bảo vệ là gắn mật khẩu với mỗi tập tin. Giống như truy 
xuất tới hệ thống máy tính thường được kiểm soát bởi một mật khẩu, truy xuất tới mỗi 
tập tin có thể được kiểm soát bởi một mật khẩu. Nếu các mật khẩu được chọn một 
cách ngẫu nhiên và thường được thay đổi thì cơ chế này có thể hiệu quả trong truy 
xuất có giới hạn tới tập tin cho những người dùng biết mật khẩu. Tuy nhiên, cơ chế 
Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 Trang 
217
Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 
này có nhiều nhược điểm. Thứ nhất, số lượng mật khẩu mà người dùng cần nhớ quá 
nhiều, làm cho cơ chế này không thực tế. Thứ hai, nếu chỉ một mật khẩu được dùng 
cho tất cả tập tin thì một khi nó bị phát hiện tất cả tập tin có thể truy xuất. Một số hệ 
thống cho phép người dùng gắn một mật khẩu tới một thư mục con hơn là với từng 
tập tin riêng rẻ để giải quyết vấn đề này. Thứ ba, thường chỉ một mật khẩu gắn với tất 
cả tập tin người dùng. Do đó, bảo vệ dựa trên cơ sở tất cả hay không có gì (all-or-
nothing). Để cung cấp sự bảo vệ trên cấp độ chi tiết hơn chúng ta phải dùng nhiều mật 
khẩu. 
IX Tóm tắt 
Một tập tin là một kiểu dữ liệu trừu tượng được định nghĩa và được cài đặt bởi 
hệ điều hành. Nó là một chuỗi các mẫu tin luận lý. Một mẫu tin luận lý có thể là một 
byte, một dòng (có chiều dài cố định hay thay đổi), hay có thành phần dữ liệu phức 
tạp hơn. Hệ điều hành có thể hỗ trợ nhiều kiểu mẫu tin khác nhau hay để sự hỗ trợ đó 
tới một chương trình ứng dụng. 
Mỗi thiết bị trong một tập tin giữ một bảng volume nội dung hay thư mục thiết 
bị liệt kê vị trí các tập tin trên thiết bị. Ngoài ra, nó có ích để tạo các thư mục cho 
phép các tập tin được tổ chức trong thư mục đó. Một thư mục đơn cấp trong hệ thống 
đơn người dùng gây ra các vấn đề đặt tên vì mỗi tập tin phải có tên duy nhất. Thư mục 
hai cấp giải quyết vấn đề này bằng cách tạo một thư mục riêng cho mỗi người dùng. 
Mỗi người dùng có thư mục riêng, chứa tập tin riêng. Thư mục liệt kê các tập tin bằng 
tên và chứa những thông tin như vị trí tập tin trên đĩa, chiều dài, kiểu, người sở hữu, 
thời gian tạo, thời điểm dùng gần nhất, 
Tổng quát hóa tính tự nhiên của thư mục hai cấp là thư mục có cấu trúc cây. 
Thư mục có cấu trúc cây cho phép một người dùng tạo thư mục con để tổ chức các tập 
tin. Cấu trúc thư mục đồ thị không chứa chu trình cho phép các thư mục con và tập tin 
được chia sẻ nhưng tìm kiếm và xóa phức tạp. Một cấu trúc đồ thị tổng quát linh động 
hơn trong việc chia sẻ tập tin và thư mục, nhưng yêu cầu thu dọn rác để phục hồi 
không gian đĩa không được dùng. 
Đĩa được phân chia thành một hay nhiều phân khu, mỗi phân khu chứa một hệ 
thống tập tin. Hệ thống tập tin này được gán vào cấu trúc đặt tên của hệ thống để làm 
cho chúng sẳn dùng. Cơ chế đặt tên khác nhau bởi các hệ điều hành khác nhau. Một 
khi được gán vào, các tập tin trong phân khu là sẳn dùng. Các hệ thống tập tin có thể 
được gỡ ra (unmount) để vô hiệu hóa truy xuất hay để bảo trì. 
Chia sẻ tập tin phụ thuộc vào ngữ nghĩa được cung cấp bởi hệ thống. Các tập tin 
có nhiều người đọc, viết hay bị giới hạn việc chia sẻ. Hệ thống tập tin phân tán cho 
phép máy khách hàng gắn các phân khu hay thư mục vào từ nhiều server. Với điều 
kiện chúng có thể truy xuất nhau qua mạng. Các hệ thống tập tin ở xa có những thách 
thức về khả năng tin cậy, năng lực và bảo mật. Hệ thống thông tin được phân tán duy 
trì người dùng, máy chủ, thông tin truy xuất như khách hàng và thông tin trạng thái 
chia sẻ servers để quản lý việc sử dụng và truy xuất. 
Vì các tập tin là cơ chế lưu trữ thông tin quan trọng trong hầu hết các hệ thống 
máy tính nên bảo vệ tập tin là cần thiết. Truy xuất tới các tập tin được kiểm soát riêng 
cho mỗi loại truy xuất-đọc, viết, thực thi, chèn cuối, xóa, liệt kê thư mục,..Bảo vệ tập 
tin có thể được cung cấp bởi mật khẩu, bởi danh sách truy xuất hay bởi những kỹ 
thuật phức tạp. 
Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 Trang 
218

File đính kèm:

  • pdfChuong9-He thong tap tin.pdf