Bài giảng Hệ điều hành (Operating Systems) - Nguyễn Phan Trung - Chương 8: File-System Interface

?Khái niệm cơ sở

?Các phương thức truy cập

?Cấu trúc thư mục

?File-System mounting

?Chia sẻ file

?Bảo vệ (Protection)

pdf14 trang | Chuyên mục: Hệ Điều Hành | Chia sẻ: dkS00TYs | Lượt xem: 2109 | Lượt tải: 5download
Tóm tắt nội dung Bài giảng Hệ điều hành (Operating Systems) - Nguyễn Phan Trung - Chương 8: File-System Interface, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
g lượng đĩa ngày càng lớn (40GB, 80GB, 120GB,...)
‰ Hệ điều hành cung cấp
– Persistence : lưu trữ dư thừa, back-up phục vụ cho recovery (ví
dụ: RAID,...).
– Ease of user : 
ƒ Gán tên cho một khối dữ liệu (file)
ƒ Tổ chức cấu trúc quản lý file: thư mục
ƒ Thực hiện quá trình ánh xạ file (cái nhìn luận lý của user) vào
không gian lưu trữ vật lý (trên đĩa). Quá trình này trong suốt
đối với user.
– Sharing/Protection : các quyền truy cập file/thư mục
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.6-
Khái niệm cơ sở (t.t)
‰ Để quản lý các thiết bị lưu trữ một cách hiệu quả, 
OS che dấu chi tiết cấp thấp của các thiết bị lưu
trữ vật lý, chỉ định nghĩa các khái niệmlưu trữ
luận lý
‰ Các khái niệm luận lý (user view)
– File
– File description
– Directory
– File System
4Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.7-
Các thuộc tính của File
‰ Name – tên file (human-readable form)
‰ Type – binary, text, image, …
‰ Location – con trỏ đến vị trí file trên thiết bị lưu trữ
‰ Size – kích thước hiện tại (và mức tối đa cho
phép !!!) 
‰ Protection – kiểm soát quyền đọc, ghi, thực thi file
‰ Time, date, user identification – các thông tin dùng
cho protection, security, và usage monitoring.
‰ Thông tin về file được giữ trong cấu trúc thư mục. 
Cấu trúc này được lưu trữ trên thiết bị lưu trữ vật
lý.
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.8-
Các tác vụ trên file/thư mục
‰ Create
– Cấp phát không gian lưu trữ
– Thêm entry trong thư mục
‰ Write 
– Tìm file trong thư mục
– Thực hiện tác vụ ghi tại vị
trí con trỏ ghi (write pointer)
‰ Read
– Tìm file trong thư mục
– Thực hiện tác vụ đọc tại vị
trí con trỏ đọc (read pointer)
‰ Reposition – file seek
– Thiết lập con trỏ đọc/ghi
đến vị trí được chỉ định (tái
định vị).
‰ Delete
– Tìm thư mục chứa file cần xóa
– Xóa các disk blocks của file
– Xóa entry trong thư mục
‰ Truncate 
– Giữ lại tất cả các thuộc tính file, 
ngoại trừ kích thước file = 0
‰ Open(Fi)
– Tìm file Fi trong cấu trúc thư
mục Search trên đĩa
– Kiểm tra quyền truy cập
– Nạp nội dung entry Fi trong thư
mục vào bộ nhớ
‰ Close(Fi)
– Chuyển nội dung entry Fi trong
bộ nhớ vào đĩa
5Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.9-
Các cấu trúc file 
‰ Không cấu trúc – một chuỗi words, bytes
‰ Cấu trúc record đơn giản
– Lines 
– Fixed length
– Variable length
‰ Cấu trúc phức tạp
– Formatted document (Word/Excel document,...)
– Relocatable load file (executable, dynamic linking library,...).
‰ Mọi hệ điều hành phải hỗ trợ ít nhất một cấu trúc – đó
là cấu trúc của file thực thi (DOS/Windows: exe, com,...)
‰ Ai quyết định cấu trúc của file
– Operating System ?
– Program ?
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.10-
Kiểu file – Name, Extension
6Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.11-
Access Methods
‰ Sequential Access: truy xuất thông tin tuần tự
– read (đọc và tự động dời con trỏ file đến vị trí kế tiếp)
– write 
– trở về đầu file, đến cuối file 
– forward/backward n record
‰ Direct Access (relative access)
– file cấu thành từ các khối, record kích thước cố định
– read n
– write n
– position to n
– read next
– write next 
– rewrite n
Minh họa Sequential Access
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.12-
Cấu trúc thư mục
‰ Là tập hợp các node lưu giữ thông tin của các file trong
hệ thống
F1 F2 F3
F4
Fn
Directory
Files
0 Cả cấu trúc thư mục và các file đều nằm trên đĩa
7Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.13-
Ví dụ về cấu trúc File-System
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.14-
Thông tin của thư mục
‰ Name 
‰ Type: file, directory, symbolic link, ...
‰ Address: địa chỉ của khối lưu trữ file
‰ Current length
‰ Maximum length
‰ Date last accessed 
‰ Date last updated 
‰ Owner ID 
‰ Protection information 
‰ ...
8Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.15-
Các tác vụ trên thư mục
‰ Search: tìm trong cấu trúc thư mục để lấy được thông tin 
trong entry của một file 
‰ Create: tạo một file mới và thêm vào cấu trúc thư mục
để quản lý
‰ Delete: xóa một file 
‰ List: hiển thị nội dung một thư mục
‰ Rename: đổi tên file
‰ Traverse: duyệt toàn bộ hệ thống file
‰ Thực chất, thư mục cũng là một file đặc biệt, cung cấp
sự ánh xạ tương ứng giữa định danh của file và tất cả
thông tin, dữ liệu khác của file.
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.16-
Mục tiêu tổ chức cấu trúc thư
mục
‰ Hiệu quả (efficiency) – định vị nhanh chóng một
file nào đó.
‰ Đặt tên (naming) – thuận tiện cho user. Ví dụ
– Hai users có thể có file trùng tên (nhưng khác nhau)
– Một file có thể có nhiều tên khác nhau.
‰ Nhóm (grouping) – tổ chức thành các nhóm file 
luận lý dựa trên các thuộc tính của file, (ví dụ: 
file chương trình C, file tài liệu MS Word, file 
chương trình games, …)
9Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.17-
Cấu trúc single-level 
/ Naming 
/ Grouping 
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.18-
Cấu trúc two-level 
☺ Khái niệm đường dẫn - path name: không có ở
single-level
☺ Hai users có thể có file trùng tên
☺ Tìm kiếm hiệu quả hơn
/ Không hỗ trợ khả năng grouping 
10
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.19-
Cấu trúc cây thư mục
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.20-
Cấu trúc cây thư mục (t.t)
☺ Tìm kiếm hiệu quả
☺ Cung cấp khả năng grouping (bằng cách tổ chức cấu
trúc thư mục con)
☺ Có thể dùng đường dẫn tuyệt đối hoặc tương đối
☺ Khái niệm thư mục làm việc (working directory). Ví dụ
cd /spell/mail/prog
cat list
☺ Xóa cây thư mục
xóa thư mục mail
/ Tổ chức cấu trúc dữ liệu quản lý khá phức tạp (phần
hiện thực hệ thống file)
m ail
prog copy prt exp count
11
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.21-
Cấu trúc acyclic-graph
‰ Có thể chia sẻ thư mục
con và file.
– Một file chia sẻ có thể có
nhiều tên (aliasing)
‰ Hiện thực chia sẻ
– Symbolic link: một con trỏ
đến file hoặc thư mục khác
ln -s /spell/count 
/dict/count
– Hard link: nhân bản thông
tin trong thư mục chia sẻ
0Nếu file /dict/w/list bị xóa
⇒ dangling pointer
0Giải pháp ???
/spell/count
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.22-
File system mounting
‰ Để có thể truy xuất, file system phải được gán lắp
(mount) 
‰ Một file system được gắn tại một thư mục, gọi là mount 
point.
‰ Các bước tiến hành gán lắp: mount /device/dsk /users
– Cung cấp tên thiết bị và mount point
– Kiểm tra xem thiết bị có chứa một file system hợp lệ không?
– Gán lắp file system vào vị trí mount point
‰ Nếu mount-point có chứa file?
– Các file của thư mục mount point sẽ không nhìn thấy được, trừ
phi un-mount file system.
‰ Có thể gắn lắp các file system khác nhau tại các mount 
point khác nhau.
12
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.23-
File system mounting (t.t)
Existing Un-m ounted 
partition
(/device/disk)
M ount 
Point
Vùng không nhìn thấy khi /device/disk được mount
Lệnh gán lắp: mount /device/dsk /users
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.24-
Chia sẻ file 
‰ Nhu cầu chia sẻ file trong hệ thống multi-user rất
lớn
‰ Việc chia sẻ cũng có thể thực hiện qua cơ chế bảo
vệ, kiểm soát nghiêm ngặt
‰ Trên hệ thống phân bố (distributed systems), các
file có thể được chia sẻ qua mạng máy tính
‰ Network File System (NFS) là phương pháp chia sẻ
file rất phổ biến dùng cơ chế RPC (mô hình client-
server)
‰ Một file system từ xa cũng phải được mount trước
khi sử dụng
– mount ditlab.hcmut.edu.vn:/oscourse /home/osbook
– Khi file system đã được mount, mọi truy xuất đến file/thư
mục trên đó đều như bình thường, không phân biệt là local 
hay remote nữa.
– Vấn đề: naming (DNS, NIS, LDAP, Active Directory, ...)
13
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.25-
Ví dụ mount remote file-system 
/
hom e
paper osbook
/
oscourse
DFS DSM
Local Client Rem ote Server
export
M ount
DFS DSM /hom e/osbook/DSM
/OS/DSM
ditlab.hcm ut.edu.vn
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.26-
Automounter trên NFS
14
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.27-
Bảo vệ (protection)
‰ Chủ nhân của một file phải được cung cấp khả năng
kiểm soát, điều khiển quá trình truy cập file
– Các tác vụ có thể thực hiện trên file?
– Những ai được quyền thực hiện thao tác trên file?
‰ Các kiểu truy xuất file
– Read
– Write
– Execute
– Append
– Delete
– List
‰ Để kiểm soát quá trình truy cập, cách tiếp cận thông
thường là gán kèm theo mỗi file một access-control list 
(ACL)
Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.28-
Access-control list và group
‰ Các chế độ truy cập: read, write, execute
‰ Ba nhóm user: owner, group, universe (public)
– User name và user identifier (user ID)
– Group name và group identifier (group ID)
‰ Ví dụ trong UNIX: có 3 field, mỗi field có 3 bits 
– Field : read, write, execute
– Bit : r(4), w(2), x(1)
RWX
owner access 7 ⇒ 1 1 1
RWX
group access 6 ⇒ 1 1 0
RWX
public access 1 ⇒ 0 0 1

File đính kèm:

  • pdfBài giảng Hệ điều hành (Operating Systems) - Nguyễn Phan Trung - Chương 8 File-System Interface.pdf