Tải bản đầy đủ (.doc) (14 trang)

Lý thuyết hệ điều hành - Quản lý tập tin

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 (487.97 KB, 14 trang )

BÀI 8
HỆ THỐNG QUẢN LÝ TẬP TIN
I. TỔ CHỨC VÀ QUẢN LÝ TẬP TIN
1.Tập tin :
* Tên tập tin :
UNIX phân biệt chữ thường và hoa còn MS-DOS thì không phân biệt. Trong UNIX có thể có nhiều phân
cách như prog.c.Z
* Cấu trúc của tập tin :
- Dãy tuần tự các byte không cấu trúc
- Dãy các mẫu tin có chiều dài cố định.
* Kiểu tập tin :
- Tập tin thường : là tập tin văn bản hay tập tin nhị phân.Tập tin văn bản chứa các dòng văn bản cuối
dòng có ký hiệu enter. Tập tin nhị phân gồm dãy các byte , nhưng hệ điều hành chỉ thực thi tập tin đó
nếu nó có cấu trúc đúng.
- Thư mục : là những tập tin hệ thống dùng để lưu giữ cấu trúc của hệ thống tập tin.
- Tập tin có ký tự đặc biệt : liên quan đến nhập xuất thông qua các thiết bị nhập xuất tuần tự như màn
hình, máy in, mạng.
- Tập tin khối : dùng để truy xuất trên thiết bị đĩa.
* Truy xuất tập tin :
- Truy xuất tuần tự : Tiến trình đọc tất cả các byte trong tập tin theo thứ tự từ đầu.
- Truy xuất trực tiếp: Một tập tin có cấu trúc cho phép chương trình đọc hoặc ghi không cần theo thứ
tự.
* Thuộc tính tập tin :
Tên, kiểu, kích thước (hiện thời, tối đa), ngày giờ (tạo, cập nhật gần nhất), loại (ẩn, chỉ đọc, hệ thống,
lưu trữ, tập tin, thư mục), kiểu (văn bản, nhị phân), bảo vệ (mật khẩu, nsd, quyền đọc/ghi/xóa/thực
thi/liệt kê/...)
* Các thao tác trên tập tin: Tạo, hủy, mở, đóng, đọc, ghi...
2. Thư mục :
Thông tin về file được lưu trữ trong cấu trúc thư mục. Cấu trúc này gồm nhiều mục (entry). Mỗi mục
chứa tên một tập tin, thuộc tính và và vị trí lưu trữ của tập tin hoặc entry chứa một con trỏ, trỏ tới một
cấu trúc, chứa thuộc tính và vị trí lưu trữ của tập tin.


Khi một tập tin được truy xuất, hệ điều hành tìm tên tập tin trong cấu trúc thư mục, lấy thuộc tính , vị
trí lưu trữ và đưa vào một bảng trong bộ nhớ. Những truy xuất sau đó thực hiện trong bộ nhớ chính.
* Các loại thư mục:
1
- Thư mục một cấp: chứa tất cả các tập tin của tất cả người dùng, cách này dễ tổ chức và khai thác
nhưng gây ra khó khăn khi đặt tên tập tin không trùng nhau và nsd không thể phân nhóm cho tập tin,
tìm kiếm chậm.
- Thư mục hai cấp: có một thư mục gốc và trong đó có nhiều thư mục con, trong mỗi thư mục con
chứa các tập tin .
- Thư mục đa cấp: có một thư mục gốc và trong đó có nhiều thư mục con, trong mỗi thư mục con
chứa tập tin và lại có thể chứa thư mục con, vv...

2
II. CÀI ĐẶT HỆ THỐNG QUẢN LÝ TẬP TIN
Để gia tăng hiệu quả trong việc truy xuất và giảm chi phí quản lý địa chỉ trên đĩa, mỗi đơn vị dữ liệu
truy xuất gồm một hoặc nhiều sector gọi là một khối.
1. Bảng thư mục, bảng cấp phát file
* Bảng thư mục (Directory Table)
Gồm nhiều mục, mỗi mục cung cấp các thông tin cần thiết để tìm kiếm các khối lưu trữ tập tin. Thông
tin có thể là địa chỉ trên đĩa của toàn bộ tập tin hoặc số hiệu của khối đầu tiên, hoặc là số I-node.
Bảng này thường được cài đặt ở phần đầu của đĩa. Mỗi mục (entry) sẽ lưu thông tin về tên , thuộc
tính, vị trí lưu trữ vv.. của một tập tin hay thư mục.
Ví dụ: một entry trong bảng thư mục của hđh CP/M chứa tất cả các số hiệu khối chứa tập tin :
ví dụ: hđh MSDOS, mỗi entry directory chỉ lưu trữ số hiệu khối đầu tiên của mỗi tập tin. Để biết số
hiệu khối còn lại dùng bảng phân phối vùng nhớ.
* Bảng cấp phát file (FAT: File Allocation Table)
Bảng này thường được sử dụng phối hợp với bảng thư mục, lưu giữ dãy các khối trên đĩa đã cấp phát
cho tập tin hay thư mục.
2. Cài đặt hệ thống tập tin
* Cách 1: Cấp phát liên tục

3
Cách này dễ cài đặt, dễ thao tác vì toàn bộ tập tin được đọc từ đĩa không cần định vị lại, chỉ cần bảng
DIR không cần bảng FAT, khuyết điểm là tập tin không thể phát triển và có thể gây ra sự phân mảnh
trên đĩa, gây lãng phí lớn.
* Cách 2: Cấp phát không liên tục
- Dùng danh sách liên kết: mỗi mục trong bảng directory chứa số hiệu của khối đầu tiên, mỗi khối
chứa dữ liệu và địa chỉ của khối kế.
Cách này không bị lãng phí do phân mảnh ngoại vi và , không cần bảng FAT. Tuy nhiên truy xuất ngẫu
nhiên sẽ chậm và khó bảo vệ số hiệu khối của tập tin.
4
- Dùng bảng chỉ mục: Mỗi file có một bảng chỉ mục cất ở một khối nào đó. Mỗi bảng chỉ mục chứa
tất cả các số hiệu khối của một file.
Ví dụ: Giả sử đĩa cứng có dung lượng 32 GB, kích thước max của file là 256K, kích thước 1 khối là 512
Bytes thì kích thước một bảng chỉ mục là bao nhiêu? Nếu kích thước khối là 1024 byte thì sao?
32 GB=2
5
x2
10
x2
10
byte = 2
25
byte = 2
16
khối => có 2
16
địa chỉ trên đĩa => mỗi phần tử bảng chỉ mục
cần 2 byte .
256K=256x1024 byte = 512 khối => bảng chỉ mục cần có 512 phần tử=> một bảng chỉ mục chiếm hai
khối!

- Dùng bảng FAT
Mỗi mục trong bảng DIR chứa số hiệu của khối đầu tiên của một file, bảng FAT chứa số hiệu các khối
còn lại của tất cả các file. Khi đó toàn bộ khối chỉ chứa dữ liệu và truy xuất ngẫu nhiên sẽ dễ dàng
hơn. Kích thước tập tin được mở rộng hơn. Hạn chế là bảng này bị giới hạn bởi kích thước bộ nhớ .
5

×