Bài giảng Hệ điều hành - Chương 6: Cấu trúc lưu trữ đĩa - Trường Đại học Kinh tế quốc dân

ppt 41 trang Hùng Dũng 05/01/2024 90
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 6: Cấu trúc lưu trữ đĩa - Trường Đại học Kinh tế quốc dân", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_he_dieu_hanh_chuong_6_cau_truc_luu_tru_dia_truong.ppt

Nội dung text: Bài giảng Hệ điều hành - Chương 6: Cấu trúc lưu trữ đĩa - Trường Đại học Kinh tế quốc dân

  1. Hệ điều hành Chương 6: Cấu trúc lưu trữ đĩa Dang Minh Quan: Institute of IT for Economics-NEU, 2011 1
  2. Tổng quan • Cấu trúc đĩa • Điều phối đĩa • Quản lý đĩa • SWAP • RAID Dang Minh Quan: Institute of IT for Economics-NEU, 2011 2
  3. Cấu trúc đĩa • Đĩa có ba ưu điểm chính hơn sử dụng bộ nhớ chính để lưu trữ : – Dung lượng lưu trữ lớn hơn rất nhiều. – Giá trên một bit rẻ hơn. – Thông tin không bị mất đi khi không còn cung cấp điện. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 3
  4. Cấu trúc đĩa Dang Minh Quan: Institute of IT for Economics-NEU, 2011 4
  5. Điều phối đĩa • Tốc độ đĩa bao gồm ba phần. – seek time : di chuyển đầu đọc đến track hay cylinder thích hợp – latency time : chờ cho đến khi khối cần thiết đến dưới đầu đọc – transfer time : vận chuyển dữ liệu giữa đĩa và bộ nhớ • seek time và latency time là mất nhiều thời gian nhất Dang Minh Quan: Institute of IT for Economics-NEU, 2011 5
  6. Thuật toán FCFS • Ví dụ : cần phải đọc các khối tạI các cylinder theo thứ tự như sau : – 98, 183, 37, 122, 14, 124, 65, và 67 • Giả sử hiện tại đầu đọc đang ở vị trí 53. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 6
  7. Thuật toán SSTF • Thuật toán này sẽ di chuyển đầu đọc đến các khối cần thiết theo vị trí lần lượt gần với vị trí hiện hành của đầu đọc nhất. • Ví dụ : cần đọc các khối tạI các cylinder như sau : 98, 183, 37, 122, 14, 124, 65, và 67. Giả sử hiện tại đầu đọc đang ở vị trí 53. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 7
  8. Thuật toán SCAN • Theo thuật toán này, đầu đọc sẽ di chuyển về một phía của đĩa và từ đó di chuyển qua phía kia. • Ví dụ : cần đọc các khối tạI các cylinder như sau : 98, 183, 37, 122, 14, 124, 65, và 67. Giả sử hiện tại đầu đọc đang ở vị trí 53. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 8
  9. Thuật toán CSCAN • Thuật toán này tương tự như thuật toán SCAN, chỉ khác là khi nó di chuyển đến một đầu nào đó của đĩa, nó sẽ lập tức trở về đầu bắt đầu của đĩa. • Ví dụ : cần đọc các khối tạI các cylinder như sau : 98, 183, 37, 122, 14, 124, 65, và 67. Giả sử hiện tại đầu đọc đang ở vị trí 53. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 9
  10. Thuật toán LOOK • Thông thường thì đầu đọc chỉ chuyển đến cylinder xa nhất ở mỗi hướng chứ không đến cuối. Do đó SCAN và C-SCAN được chỉnh theo thực tế và gọi là lập lịch LOOK. • Ví dụ : cần đọc các khối tạI các cylinder như sau : 98, 183, 37, 122, 14, 124, 65, và 67. Giả sử hiện tại đầu đọc đang ở vị trí 53. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 10
  11. Định dạng đĩa • Một đĩa từ tính mới chỉ là một phiến trắng • Trước khi một đĩa có thể lưu trữ dữ liệu, nó phải được chia thành các sector để bộ điều khiển đĩa có thể đọc và viết. • Định dạng cấp thấp điền vào đĩa với một cấu trúc dữ liệu đặc biệt cho từng sector. • Cấu trúc dữ liệu cho một sector thường bao gồm một tiêu đề, một vùng dữ liệu (thường là 512 byte), và mã kết thúc. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 11
  12. Định dạng đĩa • Các tiêu đề và mã kết thúc chứa thông tin được sử dụng bởi bộ điều khiển đĩa, chẳng hạn như số hiệu của sector và một mã sửa lỗi (ECC). • Khi bộ điều khiển viết dữ liệu vào một sector trong quá trình I / 0 bình thường, ECC được cập nhật với một giá trị tính từ tất cả các byte trong khu vực dữ liệu. • Khi dữ liệu khu vực được đọc, ECC được tính toán lại và so sánh với giá trị được lưu trữ. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 12
  13. Định dạng đĩa • Trước khi có thể sử dụng một đĩa để chứa các tập tin, hệ điều hành vẫn cần phải ghi lại các cấu trúc dữ liệu riêng của mình trên đĩa. • Bước đầu tiên là phân vùng đĩa thành một hoặc nhiều nhóm các cylinder. Hệ điều hành coi mỗi phân vùng như thể là một đĩa riêng biệt. • Tiếp theo, hệ điều hành lưu trữ các cấu trúc dữ liệu ban đầu về hệ thống file vào đĩa. Các cấu trúc dữ liệu này có thể bao gồm bản đồ không gian còn dư và không gian đã phân bổ (một FAT hoặc inodes) và một thư mục trống ban đầu. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 13
  14. Khối khởi động • Hầu hết các hệ thống lưu trữ một chương trình bootstrap nhỏ trong ROM khởi động, chương trình này có nhiệm vụ là lấy một chương trình bootstrap đầy đủ từ đĩa. • Chương trình tải và khởi động hệ điều hành đầy đủ được lưu trữ trong các khối khởi động tại một vị trí cố định trên đĩa. Một đĩa có một phân vùng khởi động được gọi là một đĩa khởi động hoặc ổ đĩa hệ thống. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 14
  15. Khối khởi động • Windows 2000 – Hệ thống Windows 2000 đặt mã khởi động của nó trong sector đầu tiên trên đĩa cứng (gọi là Master Boot Record hoặc MBR) – Ngoài việc chứa mã khởi động, MBR có chứa một bảng danh sách các phân vùng cho đĩa cứng và có một cờ cho biết phân vùng hệ thống khởi động – Một khi hệ thống xác định được phân vùng khởi động, nó đọc sector đầu tiên từ phân vùng (được gọi là sector khởi động) và tiếp tục với phần còn lại của quá trình khởi động, trong đó bao gồm tải các hệ thống con khác nhau và hệ thống dịch vụ. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 15
  16. Khối khởi động Dang Minh Quan: Institute of IT for Economics-NEU, 2011 16
  17. Khối hỏng • Bởi vì đĩa có bộ phận chuyển động với dung sai nhỏ (nhớ lại rằng các đầu đĩa bay ngay trên bề mặt đĩa), chúng rất dễ bị lỗi. • Trên các ổ đĩa đơn giản, chẳng hạn như một số đĩa với bộ điều khiển IDE, khối xấu xử lý bằng tay – format, chkdsk. • Một số bộ điều khiển có thể hướng dẫn để thay thế một khối xấu bằng cách trượt qua sector. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 17
  18. Không gian swap • Không gian swap được sử dụng theo nhiều cách khác nhau tùy thuộc vào hệ điều hành sử dụng các thuật toán quản lý bộ nhớ khác nhau. • Hệ thống sẽ an toàn hơn nếu không gian swap lớn • Trong Linux vừa qua đã đề nghị thiết lập không gian swap gấp đôi dung lượng của bộ nhớ vật lý Dang Minh Quan: Institute of IT for Economics-NEU, 2011 18
  19. Định vị không gian swap • Một không gian swap có thể cư trú tại một file trong hệ thống tập tin bình thường • Cách tiếp cận này, mặc dù dễ dàng nhưng thực hiện không hiệu quả. – Duyệt cấu trúc thư mục và cấu trúc dữ liệu phân bổ đĩa cần có thời gian và cần phải truy cập đĩa nhiều thêm. – Ngoài ra hiện tượng phân mảnh có thể làm tăng thời gian trao đổi do phải tìm nhiều trong quá trình đọc hoặc viết hình ảnh của một tiến trình. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 19
  20. Định vị không gian swap • Không gian swap có thể được tạo ra trong một phân vùng riêng biệt. • Không hệ thống tập tin hoặc cấu trúc thư mục được đặt trong không gian này. Thay vào đó, một bộ quản lý không gian swap riêng biệt được sử dụng để phân bổ và giải phóng các khối từ các phân vùng thô. • Chương trình quản lý này sử dụng các thuật toán tối ưu hóa cho tốc độ chứ không phải là để lưu trữ hiệu quả Dang Minh Quan: Institute of IT for Economics-NEU, 2011 20
  21. Cấu trúc RAID • Ổ đĩa tiếp tục được thu nhỏ hơn và rẻ hơn, do đó, bây giờ là khả thi về mặt kinh tế để đính kèm nhiều đĩa cho một hệ thống máy tính. • Có một số lượng lớn ổ đĩa trong một hệ thống tạo cơ hội để cải thiện tốc độ đọc hoặc ghi dữ liệu, nếu các đĩa được vận hành song song. • Hơn nữa, điều này cung cấp tiềm năng để cải thiện độ tin cậy của dữ liệu lưu trữ • Mảng dự phòng các đĩa độc lập (redundant arrays of independent disks RAIDs), thường được sử dụng để giải quyết các vấn đề hiệu suất và độ tin cậy. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 21
  22. RAID 0 • (Phân chia cấp khối mà không có mã chẵn lẻ hoặc sao lưu) không có dự phòng • Nó cung cấp cải thiện hiệu suất và lưu trữ bổ sung nhưng không có khả năng chịu lỗi. • Bất cứ đĩa hỏng nào sẽ phá hủy mảng các đĩa, và khả năng xảy ra lỗi gia tăng với số các ổ đĩa trong mảng • Số đĩa cho hoạt động đọc: 1 • Số đĩa cho hoạt động viết: 1 Dang Minh Quan: Institute of IT for Economics-NEU, 2011 22
  23. RAID 1 • (phản chiếu mà không cần mã chẵn lẻ hoặc phân chia khối), dữ liệu được viết giống hệt với nhiều đĩa (một "tập hợp được nhân đôi"). • Giả sử có n đĩa trong RAID 1 – Số đĩa cho hoạt động đọc: 1 – Số đĩa cho hoạt động viết: n Dang Minh Quan: Institute of IT for Economics-NEU, 2011 23
  24. RAID 2 • (phân chia cấp bit với mã chẵn lẻ Hamming), tất cả các trục quay đĩa được đồng bộ, và dữ liệu được phân chia như vậy mà mỗi bit tuần tự ở vào một đĩa khác nhau. • Mã chẵn lẻ Hamming được tính toán trên bit tương ứng trên đĩa và được lưu trữ trên ít nhất một đĩa chứa mã chẵn lẻ • Giả sử có n đĩa trong RAID 2 – Số đĩa cho hoạt động đọc: n – Số đĩa cho hoạt động viết: n Dang Minh Quan: Institute of IT for Economics-NEU, 2011 24
  25. RAID 3 • (phân chia cấp byte với mã chẵn lẻ chuyên dụng), tất cả các trục quay đĩa được đồng bộ, và dữ liệu được phân chia vì vậy mỗi byte tuần tự ở vào một đĩa khác nhau. • Mã chẵn lẻ được tính toán trên byte tương ứng trên đĩa và được lưu trữ trên một đĩa chứa mã chẵn lẻ chuyên dụng. • Giả sử có n đĩa trong RAID 3 – Số đĩa cho hoạt động đọc: n – Số đĩa cho hoạt động viết: n Dang Minh Quan: Institute of IT for Economics-NEU, 2011 25
  26. RAID 4 • (phân chia cấp khối với mã chẵn lẻ chuyên dụng) là giống hệt với RAID 5 (xem dưới đây), nhưng giới hạn tất cả các dữ liệu mã chẵn lẻ vào một đĩa đơn, có thể tạo ra một nút cổ chai về hiệu suất. • Giả sử có n đĩa trong RAID 4 – Số đĩa cho hoạt động đọc: 1 – Số đĩa cho hoạt động viết: 2 Dang Minh Quan: Institute of IT for Economics-NEU, 2011 26
  27. RAID 5 • (phân chia cấp khối với mã chẵn lẻ phân tán) phân phối mã chẵn lẻ cùng với các dữ liệu. • Mảng không bị hủy bởi một ổ đĩa hỏng duy nhất. Sau khi ổ đĩa hỏng, bất kỳ lần đọc tiếp theo có thể được tính từ mã chẵn lẻ được phân tán • Giả sử có n đĩa trong RAID 5 – Số đĩa cho hoạt động đọc: 1 – Số đĩa cho hoạt động viết: 2 Dang Minh Quan: Institute of IT for Economics-NEU, 2011 27
  28. RAID 6 • (phân chia cấp khối với mã chẵn lẻ phân phối đôi) cung cấp khả năng chịu lỗi từ hai ổ đĩa hỏng, mảng tiếp tục hoạt động với hai ổ đĩa hỏng. • Giả sử có n đĩa trong RAID 6 – Số đĩa cho hoạt động đọc: 1 – Số đĩa cho hoạt động viết: 3 Dang Minh Quan: Institute of IT for Economics-NEU, 2011 28
  29. RAID 10 • Thuật ngữ RAID 10 được sử dụng miêu tả sự kết hợp của RAID 0 (phân nhỏ) và RAID 1 (phản xạ). • Đĩa được nhân đôi trong cặp cho dự phòng và cải thiện hiệu suất, sau đó dữ liệu được phân nhỏ trên nhiều đĩa cho hiệu suất tối đa. • Giả sử số cho RAID 0 là n, số cho RAID 1 là m – Số đĩa cho hoạt động đọc: 1 – Số đĩa cho hoạt động viết: m Dang Minh Quan: Institute of IT for Economics-NEU, 2011 29
  30. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 30
  31. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 31
  32. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 32
  33. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 33
  34. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 34
  35. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 35
  36. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 36
  37. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 37
  38. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 38
  39. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 39
  40. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 40
  41. Dang Minh Quan: Institute of IT for Economics-NEU, 2011 41