Bài giảng môn Hệ điều hành - Chương 7: Quản lý hệ thống File
7.1 Giới thiệu hệthống file
7.2 Giao tiếp sửdụng phân hệquản lý file
7.3 Giao tiếp sửdụng phân hệquản lý thưmục
7.4 Hiện thực file
7.5Hiện thực thưmục
7.6 Quản lý các cluster chưa dùng
7.7 Các việc quản lý khác trên hệthống file
7.8 Quản lý hệthống file trên máy PC
ó 4 yêu cầu ₫ọc/ghi sau ₫ây của 4 ứng dụng ₫ộc lập : P1 yêu cầu truy xuất cylinder 1000. P2 yêu cầu truy xuất cylinder 0. P3 yêu cầu truy xuất cylinder 999. P4 yêu cầu truy xuất cylinder 1. Nếu lập lịch phục vụ P1 → P2 → P3 → P4 thi cần step motor 1000+1000+999+998 = 3997 lần. Nếu lập lịch phục vụ P2 → P4 → P3 → P1 thi cần step motor 0+1+998+1 =1000 lần, ít hơn 4 lần so với cách lập lịch trước. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 49 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Tính tin cậy & sẵn sàng trong truy xuất file 1. Trang bị disk của hãng nổi tiếng, uy tín về thương hiệu → giá cao hơn nhiều so với sự mong ₫ợi. 2. Dùng cơ chế dư thừa : copy, backup các file tường minh bởi người dùng. copy, backup các file tự ₫ộng bởi HĐH. dùng cơ chế master/mirror phần cứng. Card ₫iều khiển yêu cầu ₫ọc/ghi ₫ọc/ghi Card ₫iều khiển yêu cầu ₫ọc/ghi ₫ọc master slaveghi ₫ổi vai trò khi master hư Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 50 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Bảo mật trong truy xuất file 1. Quản lý người dùng bằng Account : mỗi người ₫ược cấp 1 account. Hệ thống sẽ phục vụ người dùng thông qua qui trình 2 bước : Xác nhận người dùng : hệ thống sẽ yêu cầu người dùng cung cấp 1 số thông tin ₫ể xác ₫ịnh mình là ai, có hợp pháp không (thí dụ username+password của account). Nếu hệ thống xác nhận người dùng là hợp pháp, hệ thống sẽ biết người dùng ₫ó ₫ang dùng Account nào (thứ i trong danh sách quản lý). Phục vụ người dùng : mỗi lần người dùng i ra lệnh (₫ọc/ghi/xóa/... file A), hệ thống sẽ kiểm tra lệnh ₫ó có tương thích với quyền ₫ược ghi nhận trong account tương ứng với user không. Nếu không thì báo sai, nếu có thì phục vụ. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 51 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Bảo mật trong truy xuất file 2. Ma trận ₫ặc tả quyền truy xuất tài nguyên của các user : Hàng i ghi nhận các quyền của user i trên các tài nguyên. Cột j ghi nhận các quyền của từng user trên tài nguyên j. Khi có lệnh của user i trên tài nguyên j, hệ thống sẽ xem phần tử (i,j) có cho phép chức năng tương ứng không ? Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 52 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Bảo mật trong truy xuất file Ma trận ₫ặc tả quyền truy xuất tài nguyên của các user : 1. Kích thước rất lớn, nhất là số lượng cột của ma trận. 2. Thay ₫ổi nhanh chóng, từng cột có thể ₫ược thêm vào/xóa ₫i rất nhanh theo thời gian khi file tương ứng ₫ược tạo ra/xóa ₫i. Dùng ma trận ₫ặc 2 chiều là không thích hợp. Cần tìm cách biểu diễn ma trận quyền truy xuất sao cho 2 vấn ₫ề trên ₫ược ₫ược khắc phục. Lưu ý ma trận ₫ặc tả quyền truy xuất là ma trận rất thưa vì tuyệt ₫ại ₫a số các phần tử trong ma trận ₫ều có giá trị NULL. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 53 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Bảo mật trong truy xuất file 3. Biểu diễn ma trận quyền truy xuất bằng các danh sách liên kết theo hàng : 1. Kết hợp mỗi user 1 danh sách liên kết (Capability), mỗi phần tử trong danh sách cho biết file nào ₫ược truy xuất và các hoạt ₫ộng cụ thể nào (Read/Write/Execute,...) ₫ược phép trên file ₫ó. Hệ ₫iều hành Novell Netware dùng cách này. 2. Trong thực tế số lượng phần tử trong danh sách Capability kết hợp với từng user vẫn còn rất lớn, người ta tối giản thêm bằng cách gom các file trong cùng thư mục thành 1 phần tử, phần tử này là thư mục với nghĩa : nếu user i có các quyền nào ₫ó trên thư mục xác ₫ịnh thì cũng sẽ có các quyền ₫ó trên mọi phần tử con của nó trong cây gia phả. Với cách tồi giản này, danh sách các phần tử ₫ược phép truy xuất bởi từng user sẽ giảm thiểu rất lớn, chỉ cần vài 3 phần tử là ₫ủ. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 54 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Bảo mật trong truy xuất file 4. Biểu diễn ma trận quyền truy xuất bằng các danh sách liên kết theo cột : 1. Kết hợp mỗi tài nguyên 1 danh sách liên kết (ACL — Access Control List), mỗi phần tử trong danh sách cho biết user nào ₫ược truy xuất và các hoạt ₫ộng cụ thể nào (Read/Write/Execute,...) mà user ₫ó ₫ược phép trên tài nguyên tương ứng. Hệ ₫iều hành Windows, Linux dùng cách này. 2. Trong thực tế số lượng phần tử trong danh sách ACL kết hợp với từng tài nguyên vẫn còn lớn, hơn nữa thường có nhiều user có cùng khả năng trên tài nguyên, do ₫ó Unix ₫ã tối giản ACL bằng bảng tra gồm 3 phần tử như sau : Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 55 Chương 7 : Quản lý hệ thống file 7.7 Các việc quản lý khác trên hệ thống file Bảo mật trong truy xuất file 4. Biểu diễn ma trận quyền truy xuất bằng các danh sách liên kết theo cột : Owner Group Other Read Write Execute 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 Bảng tra trên dài 9 bit, ₫ây là field Protection trong i-node chứa các thông tin thuộc tính của file tương ứng. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 56 Chương 7 : Quản lý hệ thống file 7.8 Quản lý hệ thống file trên máy PC BR BR BR BR MBR Partition 2 Partition 1 Partition 3 Partition 4 Cấu trúc 1 ₫ĩa cứng PC Trình bootstrap bằng mã máy, có nhiệm vụ tìm partition active và nạp BR của partition này vào máy và giao ₫iều khiển cho nó 446 byte 16 byte 16 byte 16 byte 16 byte Mỗi ₫ĩa cứng có thể chia tối ₫a 4 partition ₫ộc lập, thông tin về 1 partition ₫ược lưu trong 1 record 16 byte. Mỗi khi boot máy, ROM BIOS sẽ ₫ọc MBR vào RAM và chạy nó. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 57 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Cấu trúc record ₫ặc tả partition của bảng quản lý các partition : Byte Offset Length Sample Value Field Name and Definition 0x0 BYTE 0x80 80. Active partition, 00 : No Active. 0x1 BYTE 0x01 Starting Head. 0x2 6 bits 0x01 * Starting Sector. Only bits 0-5 are used. 0x3 10 bits 0x00 * Starting Cylinder. 0x4 BYTE 0x07 System ID. Defines the volume type. values. 0x5 BYTE 0xFE Ending Head. 0x6 6 bits 0xBF * Ending Sector. Only bits 0-5 are used. 0x7 10 bits 0x09 * Ending Cylinder. 0x8 DWORD 0x3F000000 Relative Sectors. 0xC DWORD 0x4BF57F00 Total Sectors. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 58 Chương 7 : Quản lý hệ thống file Cấu trúc BootSector của partition FAT32 : Byte Offset Field Length Field Name 0x00 3 bytes Jump Instruction 0x03 LONGLONG OEM ID 0x0B 53 bytes BPB (BIOS Parameter Block) 0x40 26 bytes Extended BPB 0x5A 420 bytes Bootstrap Code 0x01FE WORD End of Sector Marker Quản lý hệ thống file trên máy PC Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 59 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Cấu trúc BPB của FAT32 : Byte Offset Length Sample Value Field Name and Definition 0x0B WORD 0x0002 Bytes Per Sector. (512byte) 0x0D BYTE 0x08 Sectors Per Cluster. 0x0E WORD 0x0200 Reserved Sectors. 0x10 BYTE 0x02 Number of FATs. 0x11 WORD 0x0000 this field must be set to zero. 0x13 WORD 0x0000 this field must be set to zero. 0x15 BYTE 0xF8 Media Descriptor. (0xF8 -> hard disk) 0x16 WORD 0x0000 this field must be set to zero. 0x18 WORD 0x3F00 Sectors Per Track. 0x1A WORD 0xFF00 Number of Heads. 0x1C DWORD 0xEE39D700 Hidden Sectors (before the boot sector) 0x20 DWORD 0x7F324E00 Large Sectors (total number of sectors) 0x24 DWORD 0x83130000 Sectors Per FAT (FAT32 only). Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 60 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Cấu trúc BPB của FAT32 (tt) : Byte Offset Length Sample Value Field Name and Definition 0x28 WORD 0x0000 Extended Flags 0x2A WORD 0x0000 File System Version (FAT32 only). 0x2C DWORD 0x02000000 Root Cluster Number 0x30 WORD 0x0100 File System Information Sector Number 0x34 WORD 0x0600 Backup Boot Sector 0x36 12 bytes 0x0000... Reserved Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 61 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Cấu trúc Extended BPB của FAT32 : Byte Offset Length Sample Value Field Name and Definition 0x40 BYTE 0x80 hard disks -> 0x80 0x41 BYTE 0x00 Reserved 0x42 BYTE 0x29 Extended Boot Signature 0x43 DWORD 0xA88B3652 Volume Serial Number 0x47 11 bytes NO NAME Volume Label 0x52 LONGLONG FAT32 System ID, chuỗi “FAT32”. Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 62 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Cấu trúc thông tin của partition FAT32 : Truy xuất các cluster dữ liệu của từng file dựa vào entry thư mục và bảng FAT Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 63 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Cấu trúc entry thư mục (entry chính) của partition FAT32 : Cấu trúc entry thư mục (entry nới rộng) của partition FAT32 : Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn : Hệ ₫iều hành Slide 64 Chương 7 : Quản lý hệ thống file Quản lý hệ thống file trên máy PC Thí dụ về các entry thư mục FAT32 ₫ược dùng ₫ể quản lý file có tên là “The quick brown fox jumps over the lazydog”
File đính kèm:
- Bài giảng môn Hệ điều hành - Chương 7 Quản lý hệ thống File.pdf