Bài giảng Kỹ thuật Máy tính - Chương 12: Hệ thống Xuất/Nhập (i/o) - Nguyễn Thanh Sơn
Thiết bị phần cứng I/O
Giao diện I/O cho ứng dụng
Các dịch vụ của I/O subsystem
Hiệu suất I/O
Giao diện I/O cho ứng dụng
Các dịch vụ của I/O subsystem
Hiệu suất I/O
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 12: Hệ thống Xuất/Nhập (i/o) - 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_12_he_thong_xuatnhap_io_n.pdf
Nội dung text: Bài giảng Kỹ thuật Máy tính - Chương 12: Hệ thống Xuất/Nhập (i/o) - Nguyễn Thanh Sơn
- Nội dung Thiết bị phần cứng I/O Giao diện I/O cho ứng dụng Các dịch vụ của I/O subsystem Hiệu suất I/O BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 2
- Thiết bị phần cứng I/O Kết nối giữa hệ thống máy tính và các thiết bị I/O Port (connection point) Bus (daisy chain, shared direct access) Điều khiển Controller (device controller, SCSI host adapter) Giao tiếp giữa CPU và thiết bị I/O I/O port: dùng lệnh I/O để tác động lên các thanh ghi dữ liệu / trạng thái / lệnh của controller. Memory-mapped I/O BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 4
- Một số I/O port trong PC controller controller controller BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 6
- Các kỹ thuật thực hiện I/O (tt.) Kỹ thuật I/O dùng ngắt quãng (interrupt-driven I/O) CPU có một ngõ Interrupt Request (IR), được kích hoạt bởi thiết bị I/O Nếu ngắt xảy ra (IR = active), CPU chuyển quyền điều khiển cho trình phục vụ ngắt (interrupt handler) Các ngắt có thể che được (maskable) hoặc không che được (non-maskable) Hệ thống có một bảng vector ngắt chứa địa chỉ các trình phục vụ ngắt Ngắt cũng có thể dùng xử lý các sự kiện khác trong hệ thống (lỗi chia cho 0, lỗi vi phạm vùng BK nhớ, ) TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 8
- PC interrupt (1) IRQ 0 INTR Programmable IRQ 1 processor INTA Interrupt Controllers (2) IRQ 15 local bus 1 byte interrupt number (k) (3) (4) Take exception to address k*4 BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 10
- Các kỹ thuật thực hiện I/O (tt.) Kỹ thuật I/O dùng direct memory access (DMA) Các kỹ thuật polling và interrupt-driven I/O không thích hợp khi thực hiện di chuyển khối lượng lớn dữ liệu. Kỹ thuật DMA cần có phần cứng hỗ trợ đặc biệt, đó là DMA controller Kỹ thuật DMA thực hiện truyền dữ liệu trực tiếp giữa thiết bị I/O và bộ nhớ mà không cần sự can thiệp của CPU. BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 12
- Giao diện I/O cho ứng dụng OS cung cấp một giao diện I/O chuẩn hóa, thuần nhất cho các ứng dụng. Ví dụ: một ứng dụng in tài liệu ra máy in mà không cần biết hiệu máy in, đặc tính máy in, Giao diện làm việc là các I/O system call của OS. Trình điều khiển thiết bị là “cầu nối” giữa kernel và các bộ điều khiển thiết bị (device controller). BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 14
- Đặc tính của các thiết bị I/O BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 16
- System call yêu cầu I/O Blocking: process bị suspended cho đến khi I/O hoàn tất. Dễ dàng sử dụng Không hiệu quả trong một số trường hợp Nonblocking: process sẽ tiếp tục thực thi ngay sau lệnh gọi I/O. Ví dụ: data copy (buffered I/O) Thường hiện thực với multithreading Khó kiểm soát kết quả thực hiện I/O Asynchronous: process vẫn thực thi trong lúc hệ thống đang thực hiện I/O. Khó sử dụng BK TP.HCM I/O subsystem báo hiệu cho process khi I/O hoàn tất Khoa Khoa học & Kỹ thuật Máy tính 18
- Chu trình của một yêu cầu I/O User Kernel Hardware BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 20
- Ví dụ: remote login I/O system call subdaemon for the to send the character remote login session to the remote machine BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 22