CÀI ĐẶT HỆ THỐNG NHẬP XUẤT ĐĨA

Một phần của tài liệu Giao Trinh He Dieu Hanh (Trang 74 - 78)

QUẢN LÝ NHẬP XUẤT

IV. CÀI ĐẶT HỆ THỐNG NHẬP XUẤT ĐĨA

1) Phần cứng đĩa:

Hầu như tất cả các máy tính đều có đĩa để lưu trữ thông tin. Đĩa có ba ưu điểm chính so với bộ nhớ chính: dung lượng lưu trữ lớn hơn rất nhiều, giá thành trên một bit rẻ, thông tin không bị mất khi không còn cung cấp điện. Có các loại đĩa như: đĩa từ (gồm đĩa mềm, đĩa cứng), đĩa quang (CD-ROM, CD-Write, DVD)… Đĩa được chia thành các cylinder, track, sector trên các mặt đĩa. Mỗi sector có số byte như nhau dù là ở track ngoài cùng hay ở track phía trong.

Đối với ổ đĩa cứng, có một đặc điểm là bộ controller có khả năng tìm kiếm cùng lúc trên hai hoặc nhiều đĩa.Trong khi controller và phần mềm chờ cho tìm kiếm hoàn thành trên đĩa này thì controller có thể bắt đầu một tìm kiếm khác trên một ổ đĩa khác trong một máy tính.

Tốc độ của toàn hệ thống phụ thuộc một phần vào tốc độ truy xuất đĩa.

Do đó việc xây dựng tốt một dịch vụ truy xuất đĩa trong hệ điều hành là rất cần thiết. Tốc độ truy xuất đĩa gồm 3 phần. Để truy xuất các khối trên đĩa, trước tiên phải di chuyển đầu đọc đến track hay cylinder thích hợp, thao tác này được gọi là seek và thời gian thực hiện thao tác này gọi là seek-time. Khi đã đến đúng track thì còn phải chờ cho đến khi khối cần thiết đến nằm dưới đầu đọc. Thời gian chờ này được gọi là latency time. Cuối cùng là thời gian vận chuyển dữ liệu giữa đĩa và bộ nhớ chính gọi là transfer-time. Tổng thời gian cho dịch vụ đĩa là tổng của ba thời gian trên. Trong đó seek-timelatency-time là mất nhiều thời gian nhất. Do đó để giảm thiểu thời gian truy xuất, hệ điều hành đưa ra các thuật toán lập lịch truy xuất đĩa.

2) Các thuật toán đọc đĩa:

Lập lịch FCFS (first come first served): phương pháp pháp lập lịch đơn giản nhất là FCFS. Thuật toán này rất dễ lập trình nhưng không cung cấp được một dịch vụ tốt. Ví dụ: cần phải đọc các khối theo thứ tự sau: 98,183, 37, 122, 14, 124, 65 và 67. Giả sử đầu đọc hiện tại đang ở vị trí 53. Như vậy đầu đọc lần lượt đi qua các khối 53, 98, 183, 37, 122, 14, 124, 65 và 67 như sơ đồ sau:

Lập lịch SSTF: (shortest seek-time first): 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 như sau: 98, 183, 37, 122, 14, 124, 65 và 67. Giả sử hiện tại đầu đọc đang ở tại vị trí 53. Như vậy đầu đọc lần lượt đi qua các khối 53, 65, 67, 37, 14, 98, 122, 124 và 183 như sơ đồ sau:

Với ví dụ này, thuật toán SSTF làm giảm số khối mà đầu đọc phải di chuyển là 208 khối.

Lập lịch 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 sau: 98, 183, 37, 122, 14, 124, 65 và 67. Giả sử hiện tại đầu đọc đang ở tại vị trí 53. Như vậy đầu đọc lần lượt đi qua các khối 53, 37, 14, 0, 65, 67, 98, 122, 124 và 183 như sơ đồ sau:

Thuật toán này còn được gọi là thuật toán thang máy.

Lập lịch C-SCAN: thuật toán này tương tự 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 sau: 98, 183, 37, 122, 14, 124, 65 và 67. Giả sử hiện tại đầu đọc đang ở tại vị trí 53. Như vậy đầu đọc lần lượt đi qua các khối 53, 65, 67, 98, 122, 124, 183, 199, 0, 14 và 37 như sơ đồ sau:

Lập lịch LOOK: Ta nhận xét thấy rằng cả hai thuật toán lập lịch SCAN và C-SCAN luôn luôn di chuyển đầu đọc của đĩa từ đầu này sang đầu kia.

Nhưng thông thường thì đầu đọc chỉ chuyển đến khối 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. Như sơ đồ sau:

Lựa chọn thuật toán lập lịch: Với các thuật toán lập lịch trên, vấn đề đặt ra là phải lựa chọn thuật toán nào thích hợp cho hệ thống. Thuật toán SCAN và C-SCAN thích hợp cho những hệ thống phải truy xuất dữ liệu khối lượng lớn.

Nhưng nếu số khối cần truy xuất là liên tục thì FCFS là thuật toán tốt.

CHƯƠNG VI

Một phần của tài liệu Giao Trinh He Dieu Hanh (Trang 74 - 78)

Tải bản đầy đủ (PDF)

(96 trang)