Bài giảng Hệ điều hành - Chương 8: File-System interface cung cấp cho người học các kiến thức: 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,... Mời các bạn cùng tham khảo nội dung chi tiết.
Chương File-System Interface Nội dung Khái niệm 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) Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.2- https://fb.com/tailieudientucntt Khái niệm sở User Abstraction Hardware Resource Process/Thread CPU ⇐ OS ⇒ Address Space Memory Files Disk Mô hình trừu tượng hóa File System Program m er Interface D evice Independent Interface D evice Interface Applications Daemons Servers Shell open() close() read() write() link() sectors seek() rename() tracks readblock() writeblock() Hardware Disk Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.3- Những yêu cầu user Persistence: liệu lưu giữ bền vững Speed: truy xuất liệu nhanh Size: lưu trữ thật nhiều liệu Sharing/protection: user chia sẻ liệu cần thiết bảo vệ liệu riêng tư cần thiết Ease of use: user dễ dàng tìm kiếm, kiểm tra, hiệu chỉnh, cập nhật liệu Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.4- https://fb.com/tailieudientucntt Đặc điểm phần cứng OS Phần cứng cung cấp hỗ trợ sau – Persistence : thiết bò lưu trữ bền vững (non-volatile memory) – Speed : cung cấp khả truy xuất ngẫu nhiên (random access), nâng cao tốc độ đóa (5400 → 7200 → 10K rpm, ) – Size : dung lượng đóa ngày 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 khối liệu (file) Tổ chức cấu trúc quản lý file: thư mục Thực trình ánh xạ file (cái nhìn luận lý user) vào không gian lưu trữ vật lý (trên đóa) Quá trình suốt user – Sharing/Protection : 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.5- Khái niệm sở (t.t) Để quản lý thiết bò lưu trữ cách hiệu quả, OS che dấu chi tiết cấp thấp thiết bò lưu trữ vật lý, đònh nghóa 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 Khoa Coâng Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.6- https://fb.com/tailieudientucntt Các thuộc tính File Name – teân file (human-readable form) Type – binary, text, image, … Location – trỏ đến vò trí file thiết bò lưu trữ Size – kích thước (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 – thông tin dùng cho protection, security, usage monitoring Thông tin file giữ cấu trúc thư mục Cấu trúc lưu trữ 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.7- Các tác vụ file/thư mục Delete Create – Cấp phát không gian lưu trữ – Thêm entry thư mục Write – Tìm file thư mục – Thực tác vụ ghi vò trí trỏ ghi (write pointer) Read – Tìm file thư mục – Thực tác vụ đọc vò trí trỏ đọc (read pointer) Reposition – file seek – Thiết lập trỏ đọc/ghi đến vò trí đònh (tái đònh vò) – Tìm thư mục chứa file cần xóa – Xóa disk blocks file – Xóa entry thư mục Truncate – Giữ lại tất thuộc tính file, ngoại trừ kích thước file = Open(Fi) – Tìm file Fi cấu trúc thư mục Search đóa – Kiểm tra quyền truy cập – Nạp nội dung entry Fi thư mục vào nhớ Close(Fi) – Chuyển nội dung entry Fi nhớ vào đóa Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.8- https://fb.com/tailieudientucntt Các cấu trúc file Không cấu trúc – 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, ) Moïi hệ điều hành phải hỗ trợ cấu trúc – cấu trúc file thực thi (DOS/Windows: exe, com, ) Ai đònh cấu trúc file – Operating System ? – Program ? Khoa Coâng Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.9- Kiểu file – Name, Extension Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.10- https://fb.com/tailieudientucntt Access Methods Sequential Access: truy xuất thông tin – – – – read (đọc tự động dời trỏ file đến vò trí kế tiếp) write trở đầu file, đến cuối file forward/backward n record Direct Access (relative access) – – – – – – – file cấu thành từ 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.11- Cấu trúc thư mục Là tập hợp node lưu giữ thông tin file hệ thống D irectory Files F1 F2 F3 F4 Fn Cả cấu trúc thư mục file nằm đóa Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.12- https://fb.com/tailieudientucntt Ví dụ cấu trúc File-System Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.13- Thông tin thư mục Name Type: file, directory, symbolic link, Address: đòa khối lưu trữ file Current length Maximum length Date last accessed Date last updated Owner ID Protection information Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.14- https://fb.com/tailieudientucntt Các tác vụ thư mục Search: tìm cấu trúc thư mục để lấy thông tin entry file Create: tạo file thêm vào cấu trúc thư mục để quản lý Delete: xóa file List: hiển thò nội dung thư mục Rename: đổi tên file Traverse: duyệt toàn hệ thống file Thực chất, thư mục file đặc biệt, cung cấp ánh xạ tương ứng đònh danh file tất thông tin, liệu khác file Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.15- Mục tiêu tổ chức cấu trúc thư mục Hiệu (efficiency) – đònh vò nhanh chóng file Đặt tên (naming) – thuận tiện cho user Ví dụ – Hai users có file trùng tên (nhưng khác nhau) – Một file có nhiều tên khác Nhóm (grouping) – tổ chức thành nhóm file luận lý dựa thuộc tính file, (ví dụ: file chương trình C, file tài liệu MS Word, file chương trình games, …) Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.16- https://fb.com/tailieudientucntt Cấu trúc single-level Naming Grouping Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.17- Cấu trúc two-level ☺ Khái niệm đường dẫn - path name: single-level ☺ Hai users có file trùng tên ☺ Tìm kiếm hiệu Không hỗ trợ khả grouping Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.18- https://fb.com/tailieudientucntt Cấu trúc thư mục Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.19- Cấu trúc thư mục (t.t) ☺ Tìm kiếm hiệu ☺ Cung cấp khả 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 tương đối ☺ Khái niệm thư mục làm việc (working directory) Ví dụ cd /spell/mail/prog cat list m ail ☺ Xóa thư mục xóa thư mục mail prog copy prt exp count Tổ chức cấu trúc liệu quản lý phức tạp (phần thực hệ thống file) Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.20- https://fb.com/tailieudientucntt 10 Cấu trúc acyclic-graph Có thể chia sẻ thư mục file – Một file chia sẻ có nhiều tên (aliasing) Hiện thực chia sẻ /spell/count – Symbolic link: trỏ đến file thư mục khác ln -s /spell/count /dict/count – Hard link: nhân thông tin thư mục chia sẻ Nếu file /dict/w/list bò xóa ⇒ dangling pointer Giải pháp ??? Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.21- File system mounting Để truy xuất, file system phải gán lắp (mount) Một file system gắn thư mục, gọi 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ò mount point – Kiểm tra xem thiết bò có chứa 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 thư mục mount point không nhìn thấy được, un-mount file system Có thể gắn lắp file system khác mount point khác Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.22- https://fb.com/tailieudientucntt 11 File system mounting (t.t) Existing M ount Point U n-m ounted partition (/device/disk) Vùng không nhìn thấy /device/disk 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.23- Chia sẻ file Nhu cầu chia sẻ file hệ thống multi-user lớn Việc chia sẻ thực qua chế bảo vệ, kiểm soát nghiêm ngặt Trên hệ thống phân bố (distributed systems), file chia sẻ qua mạng máy tính Network File System (NFS) phương pháp chia sẻ file phổ biến dùng chế RPC (mô hình clientserver) Một file system từ xa phải mount trước sử dụng – mount ditlab.hcmut.edu.vn:/oscourse /home/osbook – Khi file system mount, truy xuất đến file/thư mục bình thường, không phân biệt local hay remote – Vấn đề: naming (DNS, NIS, LDAP, Active Directory, ) Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.24- https://fb.com/tailieudientucntt 12 Ví dụ mount remote file-system / / export hom e oscourse M ount paper osbook D FS D SM D FS /O S/D SM D SM /hom e/osbook/D SM ditlab.hcm ut.edu.vn LocalC lient R em ote Server Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.25- Automounter NFS Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.26- https://fb.com/tailieudientucntt 13 Bảo vệ (protection) Chủ nhân file phải cung cấp khả kiểm soát, điều khiển trình truy cập file – Các tác vụ thực file? – Những quyền thực thao tác file? Các kiểu truy xuất file – – – – – – Read Write Execute Append Delete List Để kiểm soát trình truy cập, cách tiếp cận thông thường gán kèm theo file access-control list (ACL) Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.27- Access-control list group Các chế độ truy cập: read, write, execute Ba nhóm user: owner, group, universe (public) – User name vaø user identifier (user ID) – Group name group identifier (group ID) Ví dụ UNIX: có field, field có bits – Field – Bit : read, write, execute : r(4), w(2), x(1) owner access ⇒ group access ⇒ public access ⇒ RWX 111 RWX 110 RWX 001 Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.28- https://fb.com/tailieudientucntt 14 ... Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI.1 2- https://fb.com/tailieudientucntt Ví dụ cấu trúc File-System Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.1 3-. .. https://fb.com/tailieudientucntt Cấu trúc single-level Naming Grouping Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.1 7- Cấu trúc two-level ☺ Khái niệm đường dẫn - path name: single-level ☺ Hai users có file... Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM CuuDuongThanCong.com -XI. 1 8- https://fb.com/tailieudientucntt Cấu trúc thư mục Khoa Công Nghệ Thông Tin – Đại Học Bách Khoa Tp.HCM -XI.1 9- Cấu trúc