Bài giảng Kỹ thuật Máy tính - Chương 15: Hệ thống tập tin (đĩa cứng-hardisk) - Nguyễn Thanh Sơn
Bên trong đĩa cứng
Các giải thuật định thời truy cập đĩa
Định dạng, phân vùng, raw disk
RAID (Redundant Arrays of Independent
(Inexpensive) Disks)
Các giải thuật định thời truy cập đĩa
Định dạng, phân vùng, raw disk
RAID (Redundant Arrays of Independent
(Inexpensive) Disks)
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kỹ thuật Máy tính - Chương 15: Hệ thống tập tin (đĩa cứng-hardisk) - Nguyễn Thanh Sơn", để 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:
- bai_giang_ky_thuat_may_tinh_chuong_15_he_thong_tap_tin_dia_c.pdf
Nội dung text: Bài giảng Kỹ thuật Máy tính - Chương 15: Hệ thống tập tin (đĩa cứng-hardisk) - Nguyễn Thanh Sơn
- Đĩa cứng: Hệ thống tập tin Bên trong đĩa cứng Các giải thuật định thời truy cập đĩa Định dạng, phân vùng, raw disk RAID (Redundant Arrays of Independent (Inexpensive) Disks) BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 2
- Bên trong đĩa cứng BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 4
- Các tham số của đĩa Thời gian đọc/ghi dữ liệu trên đĩa bao gồm: Seek time: thời gian di chuyển đầu đọc để định vị đúng track/cylinder, phụ thuộc tốc độ/cách di chuyển của đầu đọc Rotational delay (latency): thời gian đầu đọc chờ đến đúng sector cần đọc, phụ thuộc tốc độ quay của đĩa Transfer time: thời gian chuyển dữ liệu từ đĩa vào bộ nhớ hoặc ngược lại, phụ thuộc băng thông kênh truyền giữa đĩa và bộ nhớ Disk I/O time = seek time + rotational delay + transfer time BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 6
- Định danh đĩa (Addressing) OS sẽ quản lý Loại giao tiếp (IDE/SCSI, etc), đĩa nào, số sector . Làm sao xác định tiếp sectors, tracks, etc? Loại đĩa cũ: xác định bởi cylinder/head/sector (CHS) Loại đĩa mới: chỉ số“block” luận lý LBA = logical block address Chỉ số sector được sử dụng như thế nào? Phần mềm quản lý hệ thống file sẽ chuyển đổi định danh block luận lý sang vật lý tương ứng trên đĩa Thuật ngữ Đối với người sử dụng đĩa: “khối” hay “Sector” là như nhau Đối với người sử dụng hệ thống file: “khối” có dung lượng cố định, gồm 1 hay nhiều “sectors” BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 8
- Tăng hiệu suất truy cập đĩa Các giải pháp Giảm kích thước đĩa Tăng tốc độ quay của đĩa Định thời các tác vụ truy xuất đĩa (disk scheduling) để hạn chế di chuyển đầu đọc Bố trí ghi dữ liệu trên đĩa hợply các dữ liệu có liên quan nằm trên các track gần nhau interleaving Bố trí các file thường sử dụng vào vị trí thích hợp Chọn kích thước của logical block Read ahead BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 10
- First Come First Served (FCFS) Hàng đợi: 98, 183, 37, 122, 14, 124, 65, 67 Đầu đọc đang ở cylinder số 53 14 37 53 65 67 98 122 124 183 199 Tổng số track/cylinder đã duyệt qua: 640 BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 12
- SCAN (elevator algorithm) BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 14
- C-LOOK BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 16
- Quản lý đĩa:Phân vùng (partitioning) Phân vùng: chia đĩa thành nhiều vùng (partition), mỗi vùng gồm nhiều block liên tục. Mỗi partition được xem như một “đĩa luận lý” riêng biệt. Định dạng luận lý cho partition: tạo một hệ thống file (FAT, ext2, ) Lưu các cấu trúc dữ liệu khởi đầu của hệ thống file lên partition Tạo cấu trúc dữ liệu quản lý không gian trống và không gian đã cấp phát (DOS: FAT, UNIX: BK inode table) TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 18
- Quản lý đĩa: Raw disk Raw disk: partition không có hệ thống file I/O lên raw disk được gọi là raw I/O đọc hay ghi trực tiếp các block không dùng các dịch vụ của file system như buffer cache, file locking, prefetching, cấp phát không gian trống, định danh file, và thư mục Ví dụ Một số hệ thống cơ sở dữ liệu chọn dùng raw disk BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 20
- Quản lý các khối bị lỗi Tồn tại một số khối (sectors) bị lỗi: Ngay sau khi xuất xưởng: tự sửa bằng cách thay thế với các sectors, tracks dự trữ. Phát hiện sau một thời gian sử dụng trong hệ thống (OS): Ví dụ: Block 87 (logic block) không truy xuất được Điều khiển đĩa phát hiện EEC không đúng, báo Os Os ghi nhận để lần sau khi reboot thông báo điều khiển đĩa thay thế Sau đó vị trí block 87 đã được cập nhật lại BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 22
- Phân mảnh dữ liệu (Data Striping) Tuy gồm nhiều đĩa, nhưng cho người sử dụng cảm giác chỉ một đĩa, nhưng dung lượng lớn Khi có yêu cầu truy xuất thì sẽ tiến hành thủ tục định danh các khối vật lý chứa trên đĩa Cách phân bố lưu trữ trên các đĩa như thế nào thì sẽ xác định các đĩa liên quan đến yêu cầu truy xuất Dữ liệu sẽ được phân mảnh đều trên các vùng lưu trữ, gọi là striping units (đơn vị phân mảnh) Dung lượng mỗi đơn vị phân mảnh phụ thuộc vào mức RAID (RAID level) Các đơn vị phân mảnh được lưu trữ phân tán trên các đĩa theo giải thuật xoay vòng KEY POINT – disks can be (Round Robin) read in parallel, increasing BK the transfer rate TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 24
- Phân mảnh bit – Bit Striping Now here is the same file, and 4 disk RAID using bit striping, and again: Purely for the sake of illustration, blocks are only one byte! Notional File – a series of bits, numbered so that we can distinguish them 1 2 3 4 5 6 7 8 9 10 11 12 13 12 15 16 17 18 19 20 21 22 23 24 Now distribute these bits across the 4 RAID disks using BIT striping: 1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 2 6 10 14 18 22 26 30 34 38 42 46 50 54 58 62 66 70 74 78 82 86 90 94 3 7 11 15 19 23 27 31 35 39 43 47 51 55 59 63 67 71 75 79 83 87 91 95 4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96 BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 26
- Độ tin cậy Thời gian làm việc trung bình (mean-time-to-failure = MTTF) của 1 đĩa cứng khoảng 50,000 giờ (~5.7 năm) Hệ thống gồm nhiều đĩa: MTTF tăng, vì số đĩa nhiều hơn (1-p)n Ngoài ra độ tin cậy cũng được cải thiện vì có lưu trữ thông tin dự trữ BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 28
- Phương thức Parity Mỗi bit dữ liệu liên quan đến bit chẵn/lẻ chứa trên đĩa kiểm tra Nếu tổng các bit 1 của dữ liệu là 0 (chẵn) thìbit chẵn/lẻ là 0 Nếu tổng các bit 1 của dữ liệu là 1 (lẻ) thìbit chẵn/lẻ sẽ là 1 Dữ liệu trên bất cứ đĩa nào bị lỗi đều có thể phục hồi từng bit một BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 30
- Parity Scheme and Reliability In RAID systems the disk array is partitioned into reliability groups A reliability group consists of a set of data disks and a set of check disks The number of check disks depends on the reliability level that is selected Given a RAID system with 100 disks and an additional 10 check disks the MTTF can be increased from 21 days to 250 years! BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 32
- RAID1: Mirrored Disk 0 Disk 1 Block 1 Block 1 Block 2 Block 2 Block 3 Block 3 Block 4 Block 4 Block 5 Block 5 For each disk in the system an identical copy is kept, hence the term mirroring No data striping, but parallel reads of the duplicate disks can be made, otherwise read performance is similar to a single disk Very reliable but the most expensive RAID level Poor write performance as the duplicate disk has to be written to These writes should not be performed simultaneously in case there is a global system failure With 4 data disks, 8 disks are required BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 34
- RAID3: Bit-Interleaved Parity Disk 0 Disk 1 Disk 2 Parity disk Bit 1 Bit 2 Bit 3 P 1-32 Bit 33 Bit 34 Bit 35 P 33-64 Bit 65 Bit 66 Bit 67 P 65-96 Bit 97 Bit 98 Bit 99 P 97-128 Bit 129 Bit 130 Bit 131 P 129-160 Uses bit striping Good read performance for large requests Up to D times the speed of a single disk Poor read performance for multiple small requests Uses a single check disk with parity information Disk controllers can easily determine which disk has failed, so the check disks are not required to perform this task Writing requires a read-modify-write cycle BK Read D blocks, modify in main memory, write D + C blocks TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 36
- RAID Level 5: Block-Interleaved Distributed Parity Uses block striping Good read performance for large requests Up to D times the speed of a single disk Good read performance for multiple small requests that can involve all disks in the scheme Distributes parity information over all of the disks Writing requires a read-modify-write cycle But several write requests can be processed in parallel as the bottleneck of a single check disk has been removed Best performance for small and large reads and large writes With 4 disks of data, 5 disks are required with the parity information distributed across all disks BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 38