Giáo trình Hệ điều hành - Chương 6: Quản lý thiết bị I/O (Nhập/xuất) - Khoa Công nghệ Thông tin - Trường ĐH Bách Khoa TP. HCM
6.1 Các nguyên tắc cơ bản về phần cứng thiết bị I/O
6.2 Các nguyên tắc cơ bản về phần mềm thiết bị I/O
6.3 Các cấp chức năng cơ bản của hệ thống phần mềm I/O
6.4 Đĩa cứng
6.5 Mạch ₫ồng hồ
6.6 Terminal giao tiếp trên cơ sở từng ký tự
6.7 Giao tiếp người dùng trên cơ sở ₫ồ họa
6.8 Terminal mạng
6.9 Thiết bị quản lý việc dùng năng lượng
Tài liệu tham khảo : chương 5, sách "Modern Oper
6.2 Các nguyên tắc cơ bản về phần mềm thiết bị I/O
6.3 Các cấp chức năng cơ bản của hệ thống phần mềm I/O
6.4 Đĩa cứng
6.5 Mạch ₫ồng hồ
6.6 Terminal giao tiếp trên cơ sở từng ký tự
6.7 Giao tiếp người dùng trên cơ sở ₫ồ họa
6.8 Terminal mạng
6.9 Thiết bị quản lý việc dùng năng lượng
Tài liệu tham khảo : chương 5, sách "Modern Oper
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Hệ điều hành - Chương 6: Quản lý thiết bị I/O (Nhập/xuất) - Khoa Công nghệ Thông tin - Trường ĐH Bách Khoa TP. HCM", để 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:
- giao_trinh_he_dieu_hanh_chuong_5_quan_ly_thiet_bi_io_nhapxua.pdf
Nội dung text: Giáo trình Hệ điều hành - Chương 6: Quản lý thiết bị I/O (Nhập/xuất) - Khoa Công nghệ Thông tin - Trường ĐH Bách Khoa TP. HCM
- 6.1 Các nguyên tắc cơ bản về phần cứng thiết bị I/O Thiết bị I/O của máy tính rất ₫a dạng về chủng loại và chức năng, mặc dù vậy, chúng thường ₫ược xây dựng theo nguyên tắc chung như sau : Connector giao tiếp theo 1 chuẩn xác ₫ịnh (SCSI, Bộ phận ₫iện Bộ phận thừa SATA, IDE, USB, tử₫iều khiển hành (các COM, ) ₫ể (Adapter hay thành phần cơ phục vụ một Device khí, ₫iện, ) chuẩn nghi thức Controller) giao tiếp xác ₫ịnh (protocol) Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 2
- 6.1 Các nguyên tắc cơ bản về phần cứng thiết bị I/O Cũng có 1 vài ngoại lệ : Thiết bị clock : nó không có dữ liệu, chỉ kích hoạt tín hiệu ngắt quảng theo chu kỳ xác ₫ịnh trước. Màn hình có nội dung hiển thị nằm trong RAM. Máy tính chỉ cần dùng các lệnh máy truy xuất vùng RAM tương ứng, màn hình sẽ hiển thị ngay lập tức kết quả bị hiệu chỉnh. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 4
- 6.1 Các nguyên tắc cơ bản về phần cứng thiết bị I/O Thiết bị I/O có thể giao tiếp với bất kỳ thiết bị nào khác. Để máy tính có thể giao tiếp với thiết bị I/O, người ta thường dùng 1 bộ phận tương thích với bộ phận ₫iều khiển của thiết bị, ta gọi bộ phận này bên máy tính là device controller : Bộ phận ₫iện tử Bộ phận Device ₫iều khiển thừa hành RAM CPU Controller (Adapter (các thành hay phần cơ Device khí, Controller) ₫iện, ) Bus Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 6
- Các thanh ghi I/O Mỗi thanh ghi cần có ₫ịa chỉ truy xuất duy nhất. Có 3 phương pháp gán ₫ịa chỉ cho các thanh ghi của 1 controller : Địa chỉ I/O : máy có 2 loại ₫ịa chỉ khác nhau : ₫ịa chỉ ô nhớ dành ₫ể truy xuất các ô nhớ trong RAM, ₫ịa chỉ I/O dành truy xuất các thanh ghi của các mạch controller. Thí dụ lệnh mov al, [f5] sẽ ₫ọc nội dung ô nhớ RAM ở ₫ịa chỉ F5H vào thanh ghi al của CPU, còn lệnh in al, f5 sẽ ₫ọc nội dung thanh ghi của controller nào ₫ómàcó ₫ịa chỉ (port) là F5H. Địa chỉ memory-mapped I/O : máy chỉ có 1 loại ₫ịa chỉ và 1 loại lệnh ₫ể truy xuất các ô nhớ, mỗi thanh ghi I/O phải ₫ược thiết kế sao cho nó chiếm 1 ₫ịa chỉ ô nhớ xác ₫ịnh, muốn truy xuất thanh ghi I/O, CPU sẽ dùng lệnh truy xuất ô nhớ như bình thường. Thí dụ lệnh mov al, [f5] sẽ ₫ọc nội dung ô nhớ RAM hay thanh ghi I/O ở ₫ịa chỉ F5H tùy thuộc vào ₫ịa chỉ này ₫ang ₫ược dùng cho phần tử nào. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 8
- Kỹ thuật DMA Mỗi lần cần di chuyển dữ liệu từ thiết bị I/O (₫ang nằm trong thanh ghi data in của controller), CPU phải thực hiện 2 lệnh máy liên tiếp : 1. Lệnh in (hay mov) ₫ể di chuyển dữ liệu từ controller vào thanh ghi của CPU. 2. Lệnh mov ₫ể di chuyển dữ liệu từ thanh ghi CPU ra ô nhớ RAM xác ₫ịnh. Device RAM CPU Việc di chuyển dữ liệu giữa máy Controller tính và thiết bị I/O như trên là chưa ₫ược hiệu quả vì phải di chuyển 2 1 qua phần tử trung gian (CPU). Để khắc phục nược ₫iểm này, ta có thể sử dụng kỹ thuật DMA (Direct Bus Memory Access) Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 10
- Kỹ thuật ngắt quảng (Interrupt) Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 12
- 6.2 Các nguyên tắc cơ bản về phần mềm thiết bị I/O Đệm dữ liệu nhấp/xuất : khi dữ liệu từ 1 thiết bị I/O vào máy tính, HĐH chưa biết dữ liệu này sẽ ₫ược ứng dụng nào dùng, mà biết ứng dụng nào ₫i nữa thì cũng khó lòng ₫òi hỏi phần mềm ₫óxử lý kịpthời dữ liệu nhập. Do ₫óhệ thống phần mềm I/O cần ₫ệm dữ liệu ở 1 nơi nào ₫órồi cung cấp cho ứng dụng khi có yêu cầu. Thiết bị dùng chung (shared) hay thiết bị dùng riêng (delicated) : thí dụ disk có thể phục vụ nhiều ứng dụng ₫ồng thời, còn băng từ thì chỉ phục vụ 1 ứng dụng tại 1 thời ₫iểm, nếu không thời gian ₫áp ứng sẽ bị trì hoản rất lâu, nhiều khi là vô tận. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 14
- Lập trình thực hiện I/O (programmed I/O) Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 16
- Dùng kỹ thuật DMA (DMA) Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 18
- 6.4 Đĩa cứng & CDROM Cấu trúc của một ổ ₫ĩa cứng Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 20
- Đĩa cứng RAID 0 Ta có thể xem disk hiện thực y như góc nhìn truy xuất từ bên ngoài là SLED (Single Large Expensive Disk). Đĩa SLED thường không có tốc ₫ộ truy xuất cao và ₫ộ tin cậy thấp. Để khắc phục 2 nhược ₫iểm trên, ngườ i ta thường dùng k ỹ thuật RAID (Redudant Array of Inpependant Disks). Có 6 dạng RAID khác nhau như sau : RAID 0 : gộ p k sector thành 1 strip, dùng n disk thô ₫ể hiện thực disk luận lý nh ư sau : phân bổ các strip theo kiểu round-robin như hình dưới ₫ây. Nếu máy tính truy xuất khối dữ liệu dài n strip, controller trên RAID0 sẽ biết ₫ược khối dữ liệu n strip này nằm trên n disk thô khác nhau, nó s ẽ ra lệnh n disk ₫ồng thờ i, mỗi disk thô truy xuất 1 trip. Dữ liệu truy xuất ₫ược sẽ ₫ượ c hợp lại/phân ra bởi controller. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 22
- Đĩa cứng RAID 2 RAID 1 sử dụng quá nhiều disk thô. Để khắc phục nhược ₫iểm này, ta có thể dùng RAID 2. RAID 2 : ₫ể lưu 32 bit dữ liệu, controller sẽ ₫ổi 32 bit data thành mã sửa sai Hamming 39 bit, từ ng bit sẽ ₫ược ghi lên 1 disk thô khác nhau ₫ồng thời. Như vậy về mặt tốc ₫ộ, ta nâng lên ₫ược 32 lần so với ₫ĩa SLED. Về ₫ộ tin cậy, nếu có lỗi ở 1 disk thô nào ₫ó, nhờ mã Hamming, controller sẽ tự sửa sai ₫ể xác ₫ịnh 32 bit dữ liệu gốc. Chi phí giảm từ 2/1 ở RAID 1 xu ống còn 39/32 ở RAID 2. Bit 39 Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 24
- Đĩa cứng RAID 4 RAID 4 : giống như RAID 0, nhưng tăng cường th m 1 disk thơ ₫ể chứa strip partity của n strip nằm tr n n disk thĩ chứa dữ liệu. : ₫ể lưu 32 bit dữ liệu, controller sẽ dùng 33 disk thô : 32 disk chứa 32 bit data, disk còn lại chứa bit phát hiện lỗi (parity). Như vậy về mặt tốc ₫ộ, ta nâng lên ₫ược 32 lần so với ₫ĩa SLED. Về ₫ộ tin cậy, nếu có lỗi ở 1 disk thô nào ₫ó, nhờ bit parity ta phát hiện ₫ược lỗi, rồi nhờ tín hiệu báo lỗi ở disk thứ i, controller sẽ tự sửa sai bit i ₫ể xác ₫ịnh 32 bit dữ liệu gốc. Chi phí giảm từ 2/1 ở RAID 1 xuống còn 39/32 ở RAID 2 và còn 33/32 ở RAID 3. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 26
- Kỹ thuật ghi tin trên CDROM Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 28
- 6.5 Mạch ₫ồng hồ Dùng phần mềm ₫ể hiện thực n mạch ₫ếm giờ ₫ộc lập ms 15ms 16ms 3ms 7ms 13ms Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 30
- 6.7 Giao tiếp người dùng trên cơ sở ₫ồ họa Màn hình ₫ồ họa có khả năng hiển thị c*r pixel cơ bả n (1024*768). Thông tin ₫iều khiển hiển thị 1 pixel dài n bit (24bit = 3 byte cho chế ₫ộ TrueColor). Ma trận thông tin hiển thị cho c*r pixel ₫ược lưu trong bộ nhớ “Video RAM”, CPU có thể truy xuất trực tiếp từng ô nhớ trong video RAM y như truy xuất ô nh ớ trong RAM chứa chương trình và dữ liệu ⇒ việc cập nhật thông tin hi ển thị ₫ồ họa rất nhanh chóng, có thể chiế u phim full HD. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 32
- Màn hình ở chế ₫ộ ₫ồ họa Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 34
- Màn hình ở chế ₫ộ ₫ồ họa Thường dùng font outline ₫ể miêu tả ₫ường vi ền từng ký tự ₫ược hiển thị trong chế ₫ộ ₫ồ họa. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 36
- Các Terminal mạng làm việc với cùng 1 máy tính Kiến trúc hệ thống các terminal SLIM (Stateless Low-level Interface Machine). Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 38
- 6.9 Thiết bị quản lý việc dùng năng lượng Ngoài việc chế tạocác thiết bị phần cứng sao cho chúng sử dụng ít ₫iện năng, vai trò của HĐH và ứng dụng cũng rất quan trọng trong việc giảm thiểu việc tiêu tốn ₫iện năng. Về phần cứng (CPU, memory, thiết bị I/O), chúng ₫ược thiết kế và chế tạo sao cho có thểởnhiều trạng thái khác nhau như : 1. On : ₫ang hoạt ₫ộng ⇒ tốn năng lượng nhất. 2. Sleeping : ngủ chờ ⇒ ít tốn năng lượng. 3. Hibernating : ng ủ ₫ ông ⇒ tốn ít năng lượng hơn nữa, nhưng khi muốn quay về on, nó s ẽ tiêu tốn năng lượng và thời gian hơn là từ sleeping v ề on. 4. Off : tắ t ⇒ không tiêu tốn năng lượng. Nhi ệm v ụ củ a HĐH và ứng dụng là ₫iều khiển các thiết bị phần cứng ₫ể chúng ở trạng thái phù hợp theo thời gian sao cho tổng chi phí tiêu thụ năng lượng là nhỏ nhất. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 40
- Tiết kiệm năng lượng cho màn hình Tắt màn hình sau 1 thời gian nội dung không biến ₫ộng, người dùng có thể thiết lập khoảng thời gian này sao cho hợp lý. Chia màn hình ra nhiều zone ₫ộc lập, tại 1 thời ₫iểm nào ₫ó, nếu chỉ có 1 cửa sổ nhỏ ₫ang tác ₫ộng và làm việc với người dùng, máy có thể tắt các zone khác. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 42
- Tiết kiệm năng lượng cho CPU Khi CPU về trạng thái rãnh (hoặc chờ I/O hoặc không có process ₫ể chạy), nó nên chuyển về trạng thái sleep. Giảm tần số chạy của CPU ₫ể giảm mức tiêu thụ ₫iện của nó. Các ứng có deadline biết trước : o thí dụ trình xem phim cần ₫ọc/giải mã và hiển thị 25 frame/s, tức thờ i gian xử lý 1 frame ảnh là 40ms. Nh ưng CPU nhanh, nó có thể chỉ cầ n 20ms ₫ể xử lý xong 1 frame. Trong trường hợp này, ta giả m tốc ₫ộ chạ y CPU xuống 2 lần ₫ể giảm mức tiêu hao năng lượng 4 lần. o Hoặc nếu người dùng nhập liệu với tốc ₫ộ 1ký tự/s, còn ứng dụng chỉ cần 100ms là xử lý xong việc nhậ p 1 ký tự. Trong trường hợ p này, ta giảm tố c ₫ộ chạy CPU xuống 10 lần ₫ể giảm mức tiêu hao năng lượng 100 lần. Môn : Hệ ₫iều hành Khoa Công nghệ Thông tin Chương 6 : Quản lý các thiết bị I/O Trường ĐH Bách Khoa Tp.HCM Slide 44