Bài giảng Hệ điều hành - Chương 10: Hệ thống file (Phần 1)

qSự hỗ trợ từ phần cứng và hệ điều hành

qPhần cứng

–Persistence: các thiết bị lưu trữ bền vững (non-volatile memory)

–Speed: cung cấp khả năng truy xuất ngẫu nhiên, nâng cao tốc độ đĩa (5400 ® 7200 ® 10K ® 15K rpm)

–Size: dung lượng lớn, 20M ® 700M ® 40G ® 200G ® 1T byte

qHệ điều hành

–Persistence: lưu trữ dư thừa, back-up phục vụ cho recovery

§Ví dụ: RAID (Redundant Array of Independent Disks)

–Ease of use:

§Gán tên cho một chuỗi các khối dữ liệu ® file

§Hỗ trợ quản lý các file ® thư mục

§User không cần quan tâm đến các chi tiết hardware (giao tiếp với disk controller theo IDE, SCSI,…).

–Sharing/Protection: cho phép thiết lập các quyền truy cập file/thư mục
ppt 32 trang thiennv 07/11/2022 2580
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ điều hành - Chương 10: Hệ thống file (Phần 1)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pptbai_giang_he_dieu_hanh_chuong_10_he_thong_file.ppt

Nội dung text: Bài giảng Hệ điều hành - Chương 10: Hệ thống file (Phần 1)

  1. Các cách truy cập file ❑ Dùng các tác vụ thông thường trên file, – truy cập tuần tự (sequential access) ▪ truy xuất dữ liệu theo thứ tự, từng byte hoặc record – truy cập bất kỳ (random access) ▪ truy xuất dữ liệu, byte hoặc record, tại vị trí bất kỳ – truy cập dùng khóa ▪ truy xuất một record dựa vào key của nó ❑ Memory-mapped file – Giả sử có các system call map và umap – Gọi map để “chiếu” file vào không gian địa chỉ ảo của quá trình – Dùng các tác vụ truy xuất bộ nhớ để truy xuất file – Gọi umap khi xong Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.11
  2. Các thuộc tính của file Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.12
  3. Các tác vụ trên file ❑ Create – Tạo một file mới ❑ Write – Thực hiện tác vụ ghi dữ liệu vào file tại vị trí con trỏ ghi ❑ Read – Thực hiện tác vụ đọc dữ liệu từ file tại vị trí con trỏ đọc ❑ Reposition – Thiết lập con trỏ đọc/ghi đến vị trí do quá trình chỉ định ❑ Delete – Xóa file ❑ Truncate – Giữ lại tất cả các thuộc tính của file, ngoại trừ kích thước file được thiết lập về 0 ❑ Open – Quá trình phải mở file trước khi sử dụng ❑ Close – Quá trình phải đóng file sau khi sử dụng Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.13
  4. Thư mục ❑ Thư mục (directory, folder) là một tiện ích của hệ điều hành để người dùng tổ chức các file của mình – Người dùng có thể xác định file thuộc về hay nằm trong một directory; cách nói khác, directory chứa file Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.14
  5. Các tác vụ trên thư mục Ví dụ từ UNIX ❑ Create – Tạo một directory mới ❑ Delete – Xóa một directory trống ❑ Opendir – Quá trình phải mở directory trước khi đọc nó ❑ Closedir – Quá trình phải đóng directory sau khi đọc nó ❑ Readdir – Đọc entry tới của directory ❑ Link ❑ Unlink ❑ Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.15
  6. Các loại cấu trúc của thư mục – Single-level directory – Multi-level directory – Tree-structured directory – Acyclic-graph directory – General graph directory Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.16
  7. Các loại cấu trúc của thư mục (1) ❑ Single-level directory – Chỉ có một directory cho mọi file trong hệ thống (CDC 6600, IBM MVS, PalmOS) Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.17
  8. Các loại cấu trúc của thư mục (2) Cải tiến cấu trúc single-level directory ❑ Một số mục tiêu – Thuận tiện cho user khi đặt tên file, các user khác nhau có thể đặt tên file trùng nhau – File có thể có nhiều hơn một tên – Hỗ trợ phân nhóm (grouping): tổ chức các files cùng đặc điểm vào chung một nhóm (ví dụ nhóm file mã nguồn ngôn ngữ C, nhóm file Word, ) Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.18
  9. Các loại cấu trúc của thư mục (3) Nếu directory, ngoài file ra, còn có thể chứa directory khác ❑ Two-level directory Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.19
  10. Các loại cấu trúc của thư mục (4) ❑ Tree-structured directory Một cây thư mục trong UNIX Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.20
  11. Các loại cấu trúc của thư mục (5) ❑ Acyclic-graph directory Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.21
  12. Các loại cấu trúc của thư mục (6) ❑ General-graph directory – Vấn đề: cycle có thể xuất hiện → dùng giải thuật kiểm tra chu trình mỗi khi tạo file? Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.22
  13. Đường dẫn ❑ Dùng đường dẫn (path name) đến một file để đặc tả vị trí của file trong cây hay rừng directory Ví dụ – UNIX, LINUX /usr/ast/mailbox – DOS, Windows \usr\ast\mailbox ❑ Đường dẫn tuyệt đối ❑ Thư mục hiện thời (current directory, working directory) ❑ Đường dẫn tương đối Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.23
  14. File system mounting (1) ❑ Phải gắn (mount) file system để có thể truy xuất file của nó ❑ Thư mục để gắn vào đó một file system được gọi là mount point ❑ Để thực hiện lệnh gắn # mount /device/thedisk /mountpoint hệ điều hành phải thực thi các bước – OS kiểm tra xem file system có hợp lệ hay không – Gắn file system vào vị trí mountpoint ❑ Nếu mount point có chứa file? – Các file chứa trong thư mục mount point sẽ bị che cho đến khi unmount file system. Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.24
  15. File system mounting (2) mount point file system trong partition /dev/hda3 Các file bị che khi file system trong partition /dev/hda3 được mount với lệnh mount /dev/hda3 /users Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.25
  16. File system mounting (3) Sau khi mount, có thể truy cập các file trong partition /dev/hda3 Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.26
  17. Chia sẻ file ❑ Nhu cầu chia sẻ file trong hệ thống multi-user ❑ Việc chia sẻ phải thực hiện dưới cơ chế bảo vệ, kiểm soát nghiêm ngặt ❑ Hệ thống đơn: hard link và soft link, thiết lập quyền hạn chia sẻ, ❑ Trên hệ thống mạng, file có thể được chia sẻ qua mạng máy tính – Truy cập file bằng FTP – 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) ▪ File system từ xa phải được gắn (mount) trước khi sử dụng. Ví dụ: mount ditlab.hcmut.edu.vn:/oscourse /home/mydir ▪ Khi file system đã được mount, mọi truy xuất đến file hay thư mục trên đó như bình thường, user không phân biệt là local hay remote. Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.27
  18. Hard link và soft link Trong UNIX ❑ Hard link: ln /dict/count /spell/count ❑ Soft link: ln -s /spell/words/list /dict/all Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.28
  19. Ví dụ mount remote file system / / home oscourse paper mydir IO VM /oscourse/VM IO VM /home/mydir/VM ditlab.hcmut.edu.vn Local Client Remote Server Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.29
  20. Bảo vệ (protection) ❑ Hệ điều hành phải hỗ trợ chủ nhân của file khả năng kiểm soát 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 quyền truy xuất file – Read – Write – Execute – Append – Delete – ❑ Cách tiếp cận thông thường – Mỗi file có một Access-control list (ACL), gồm các cặp ▪ Windows NT/2K/XP, Linux ▪ user có thể là một nhóm Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.30
  21. Access Control List Owner của process B: R File F1: - Mọi quá trình của user A có quyền đọc/ghi - Mọi quá trình của user B có quyền đọc Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.31
  22. Các Access Control Bit ❑ Các chế độ truy cập: read, write, execute ❑ Ba nhóm user: owner, group, other (public) – User name và user identifier (user ID) – Group name và group identifier (group ID) ❑ Ví dụ trong UNIX: mỗi nhóm user có 1 field, mỗi field có 3 bit – Field: read | write | execute – Trị: 0/1 0/1 0/1 r w x owner access 7 1 1 1 group access 6 1 1 0 public access 1 0 0 1 Khoa Khoa Học & Kỹ Thuật Máy Tính – Đại Học Bách Khoa TP HCM 10.A.32