Bài giảng Hệ điều hành - Chương 6: Quản lý các thiết bị I/O

pdf 45 trang cucquyet12 7840
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: Quản lý các thiết bị I/O", để 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:

  • pdfbai_giang_he_dieu_hanh_chuong_6_quan_ly_cac_thiet_bi_io.pdf

Nội dung text: Bài giảng Hệ điều hành - Chương 6: Quản lý các thiết bị I/O

  1. MÔN HỆ ĐIỀU HÀNH Chương 6 QUẢN LÝ THIẾT BỊ I/O (NHẬP/XUẤT) 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 Operating Systems", Andrew S. Tanenbaum: , 2nd ed, Prentice Hall 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 1
  2. 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
  3. 6.1 Các nguyên tắc cơ bản về phần cứng thiết bị I/O ‰ Về cách thức giao tiếp dữ liệu với thế giới bên ngoài, các thiết bị I/O thường thuộc 1 trong 2 loại : thiết bị block và thiết bị ký tự. ƒ Thiết bị block : giao tiếp với bên ngoài từng lần 1 block dữ liệu với ₫ộ dài cố ₫ịnh, mỗi block có ₫ịa chỉ cố ₫ịnh và ₫ộc lập, ta chỉ cần biết ₫ịa chỉ của khối thông tin là có thể truy xuất ₫ược nó bất kỳ lúc nào. ƒ Thiết bị ký tự : giao tiếp với bên ngoài từng lần 1 chuỗi byte có ₫ộ dài tùy ý (stream), tuy nhiên stream không có ₫ịa chỉ, nghĩa là ta chỉ có thể truy xuất dữ liệu theo dạng tuần tự từ ₫ầu ₫ến cuối, không thể quay lại quá khứ ₫ược. Đa số các thiết bị I/O mà ta dùng với máy tính ₫ều thuộc loại thiết bị ký tự (bàn phím, chuột, card mạng, scanner, printer, ) 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 3
  4. 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
  5. 6.1 Các nguyên tắc cơ bản về phần cứng thiết bị I/O Các thiết bị I/O có tốc ₫ộ giao tiếp rất khác nhau tùy tính chất sử dụng của chú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 5
  6. 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
  7. Các thanh ghi I/O Mỗi device controller ₫ều có những ô nhớ chứa các thông tin hoạt ₫ộng, ta gọi các ô nhớ này là các thanh ghi (register). Dựa vào nội dung mà thanh ghi chứa, có 4 loại thanh ghi : ƒ Thanh ghi lệnh : thanh ghi chứa mã lệnh chức năng mà CPU ghi vào ₫ể bắt controller thực hiện. Chiều di chuyển thông tin của thanh ghi này là từ CPU ₫ến controller (OUT). ƒ Thanh ghi trạng thái : thanh ghi chứa các bit thông tin miêu tả trạng thái hiện hành của thiết bị I/O tương ứng (bận, rãnh, ). Chiều di chuyển thông tin của thanh ghi này là từ controller về CPU (IN). ƒ Thanh ghi dữ liệu xuất : chứa dữ liệu mà CPU muốn xuất ra thiết bị I/O. Chiều di chuyển thông tin của thanh ghi này là từ CPU ₫ến controller (OUT). ƒ Thanh ghi dữ liệu nhập : chứa dữ liệu mà thiết bị I/O gởi về máy tính. Chiều di chuyển thông tin của thanh ghi này là từ controller về CPU (IN). 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 7
  8. 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
  9. Các thanh ghi I/O ƒ Dùng hổn hợp 2 loại ₫ịa chỉ I/O và ₫ịa chỉ memory-mapped 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. Tùy theo tính chất sử dụng của từng thanh ghi, ta sẽ dùng ₫ịa chỉ I/O (port) hay ₫ịa chỉ memory ₫ể truy xuất nó rồi dùng loại lệnh tương ứng ₫ể truy xuất nó khi cần thiế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 9
  10. 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
  11. Kỹ thuật 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 11
  12. 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
  13. 6.2 Các nguyên tắc cơ bản về phần mềm thiết bị I/O ƒ Độc lập thiết bị : ứng dụng có thể truy xu ất bất kỳ thiết bị nào, qui trình truy xuất phải ₫ồng nhất, không phụ thuộc vào tính chất vật lý hay loại thiết bị. Sort output ƒ Đặt tên thiết bị ₫ồng nhất : tên thiết bị là 1 chuỗi hay 1 số ngyên giống như tên 1 file. ƒ Che dấu việc xử lý lỗi : nếu có lỗi trong khi truy xuất I/O, hệ thống phần mềm I/O phải xử lý tốt nhất và ở cấp thấp nhất rồi cố gắng che dấu lỗi càng nhiều càng tốt. ƒ Chuyển ₫ổi cung cách nhập/xuất dữ liệu dạng bất ₫ồng bộ thành dạng ₫ồng bộ : Ở cấp vật lý, mỗi lần cần ₫ọc 1 sector ₫ĩa, CPU sẽ xuất lệnh ₫ọc ra controller, chờ ngắt khi có dữ liệu, ₫ọc khối dữ liệu vào bộ nhớ. Ở cấp ứng dụng, nên cung cấp 1 hàm chức năng, ứng dụng gọi hàm này, khi hàm return kết quả (lâu hay mau), ứng dụng ₫ã có dữ liệu ₫ể xử lý tiếp. 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 13
  14. 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
  15. 3 cách thực hiện I/O khác nhau 1. Lập trình thực hiện I/O (programmed I/O) : thí dụ sau khi nhận chuỗi ký tự cần in, HĐH sẽ lặp kiểm tra trạng thái máy in, nếu rãnh thì xuất ra 1 ký tự cho ₫ến hết chuỗi. 2. Dùng cơ chế ngắt (interrupt) : thí dụ sau khi nhận chuỗi ký tự cần in, HĐH sẽ khởi ₫ộng chế ₫ộ ph ục v ụ ng ắt từ máy in rồi làm việc khác. Mỗi khi máy in rãnh, nó tạo tín hiệu yêu cầ u ngắt gởi tới CPU, máy sẽ thực hiện thủ tục ₫áp ứng ngắt, thủ tục này sẽ kiểm tra xem còn ký tự cần in không ? Nếu hết thì thôi, n ều còn thì xuất ký tự kế tiếp ra máy in rồi quay lại nơi ₫ang xử lý ₫ể tiếp tục công việc. 3. Dùng kỹ thuật DMA (DMA) : thí dụ sau khi nhận chuỗi ký tự cần in, HĐH sẽ khởi tạo 1 session DMA cho DMA controller biết. DMA controller sẽ thực hiện xuất từng ký tự ra máy in khi cần, không có ₫oạn code nào của HĐH hay của ứng d ụng liên quan ₫ến việc xuất ký tự cụ thể 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 15
  16. 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
  17. Dùng cơ chế ngắt (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 17
  18. 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
  19. 6.3 Các cấp chức năng cơ bản của hệ thống phần mềm I/O ứng dụng thực hiện 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 19
  20. 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
  21. 6.4 Đĩa cứng & CDROM Theo góc nhìn từ ngoài, disk vật lý là không gian dữ liệu 3 chiều, mỗi disk = nhiều cylinder, mỗi cylinder gồm sector nhiều track (head — vòng tròn chứa tin - có cùng ₫ường kính), mỗi track chứa nhi ều cung chứa tin nhỏ ₫ược truy xuất ₫ộc lập nhau (sector). track Sector là ₫ơn vị truy xuất tin nhỏ nhất ở cấp vật lý (từ ngoài ta không thể truy xuất từng byte dữ liệu trên disk ₫ược). Muốn truy xuất 1 sector, ta phải xác ₫ịnh tọa ₫ộ 3 chiều của nó (C,H,S) → rất khó tư duy. 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 21
  22. Đĩ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
  23. Đĩa cứng RAID 1 RAID 0 ₫ã tăng tốc ₫ộ truy xuất lên n lần, nhưng ₫ộ tin cậy sẽ bị giảm ₫i n lần. Để khắc phục nh ược ₫iểm này, ta có thể dùng RAID 1. RAID 1 : dùng cơ chế Master/Miror. Ngoài n disk thô có sẵn (master), dùng thêm n disk thô n ữa (slave). Mỗi lần cần ghi thông tin, controller sẽ double dữ liệu và yêu cầu ghi ₫ồng thời lên cả master lẫn slave. Mỗi khi cần ₫ọc thông tin, controller chỉ cần yêu cầu master thực hiện. Chỉ trong trường hợp master có trục trặc, controller mới switch vai trò của master và slave cho nhau rồi thực hiện lại việc ₫ọc dữ liệu (bây giờ trên các disk thô tốt nên sẽ thành công). Người quản trị chỉ cần thay thế bộ phận bị lỗi và copy dữ liệ u từ bộ phận còn tốt sang là hệ thống sẽ trở l ại trạng thái bình thường như xư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 23
  24. Đĩ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
  25. Đĩa cứng RAID 3 RAID 3 : ý tưởng gần giống với RAID 2 : ₫ể 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. Bit 32 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 25
  26. Đĩa cứng RAID 4 RAID 4 : giống như RAID 0, nhưng tăng cường thm 1 disk thơ ₫ể chứa strip partity của n strip nằm trn 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
  27. Đĩa cứng RAID 5 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 27
  28. 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
  29. 6.5 Mạch ₫ồng hồ 4GHz Mạch ₫ếm xuống ms Mạch giữ giá trị cần ₫ếm giây phút giờ ngày 1000 60 60 24 Phần trong hình chữ nhật xanh thường ₫ược lập trình ₫ể giảm nhẹ phần 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 29
  30. 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
  31. 6.6 Terminal giao tiếp trên cơ sở từng ký tự Terminal và mạch ₫iều khiển bên máy tính dùng chuẩn giao tiếp RS- 232 (COM1, COM2) ₫ể giao tiếp nhau, tín hiệu ₫ược truyền/nhận từng bit theo theo gian. M ỗi lần 1 ký tự ASCII (1byte) cần truyền, controller sẽ ₫ổi ký tự thành 8 bit rồi gở i từng bit ra terminal. Terminal và máy tính là 2 thiết b ị ₫ộc lập. Terminal thường có khả năng hiển thị ₫ược 25 hàng, mỗi hàng 80 ký 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 31
  32. 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
  33. Màn hình ở chế ₫ộ văn bản B000:0 ‘A’ AB ớ B000:1 xA 12 B000:2 ‘B’ B000:3 xB 160 ô nh 160 ô B000:A0 ‘1’ B000:A1 x1 B000:A2 ‘2’ B000:A3 x2 Màn hình văn bản Video RAM 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 33
  34. 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
  35. Màn hình ở chế ₫ộ ₫ồ họa Hàm API Windows BitBlt() cho phép copy 1 vùng bitmap gốc sang vùng vẽ : a. Trước khi hàm BitBlt thực thi. b. Sau khi hàm BitBit thực thi. 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 35
  36. 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
  37. 6.8 Terminal mạng X-Terminal là thiết bị ₫ầu cuối có khả năng hiển thị ₫ồ họa với tốc ₫ộ rất cao, ₫ược n ối kết với máy tính thông qua kỹ thuật m ạng máy tí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 37
  38. 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
  39. 6.9 Thiết bị quản lý việc dùng năng lượng 1. Máy ENIAC gồm 18.000 ₫èn ₫iện tử, tốn 140.000w ₫iện ⇒ quá tốn ₫iện. 2. Máy PC dùng transistor nên tốn rất ít ₫iện, khoảng 400w, trong ₫ó máy dùng khoảng 85%, còn lãng phí 15% (60w). Tuy nhiên nếu 1 tỉ máy PC ₫ồng thời chạy trên toàn thế giới, con người ₫ã lãng phí 60 tỉ Watt = 60.000 Mega Watts = công suất phát của 60 nhà máy ₫iện nguyên tử có qui mô trung bình ⇒ quá lãng phí ₫iện. 3. Máy laptop và các thiết bị di ₫ộng dùng pin charge, ₫ể hạn chế trọng lượng của máy, ta phải hạn ch ế kích thước và trọng lượng của pin ⇒ thời gian cung cấp năng lượng của pin rất h ạn chế (vài ba giờ ho ạt ₫ộng). Hơn nữa năng lượng của pin ₫ược nạp từ nă ng lượng ₫ iện, do ₫ócần hạn chế việc sử dụng năng lượng của các thành phần hoạt ₫ộng của máy xu ố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 39
  40. 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
  41. 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 41
  42. 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
  43. Tiết kiệm năng lượng cho ₫ĩa cứng ƒ Khi quay, ₫ộng cơ quay ₫ĩa tiêu tốn rất nhiều ₫iện năng. Do ₫ó nên tắt ₫ộng cơ quay khi không cần thiết, thí dụ sau 1 khoảng thời gian không truy xuất ₫ĩa, người dùng có thể thiết lập khoảng thời gian này sao cho hợp lý. Lưu ý khi cần truy xuất lại, ₫ộng cơ phải ₫ược khởi ₫ộng lại và chờ 1 thời gian ₫ể tốc ₫ộ ổn ₫ịnh, ₫iều này sẽ tiêu tốn ₫iện năng và thời gian chờ nhiều. ƒ Có thể dùng Cache lớn ₫ể hạ thấp tần suất truy xuất ₫ĩa, nhờ ₫ó việc tắt ₫ộng cơ quay sẽ thuận lợi và có ích hơn nhiều. ƒ Có thể thông báo cho ứng dụng biết trạng thái “tắt ₫ộng cơ quay” cho ứng dụng ₫ể ứng dụng delay việc truy xuất ₫ĩa nếu có thể. 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 43
  44. 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
  45. Tiết kiệm năng lượng cho RAM ƒ Khi không cần thiết, hãy giải phóng nội dung của Cache rồi off nó. ƒ Khi không cần thiết, hãy lưu nội dung trong RAM lên ₫ĩa rồi off nó (Hibernation). 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 45