Bài giảng Hệ điều hành máy tính: Lecture 2 trình bày về Hệ thống máy tính. Nội dung cụ thể của chương này gồm có: Kiến trúc cơ bản của hệ thống máy tính, cơ chế vận hành của hệ thống, cấu trúc hệ thống xuất nhập (I/O), cấu trúc và phân cấp hệ thống lưu trữ,...
Hệ thống máy tính Kiến trúc hệ thống máy tính Cơ chế vận hành hệ thống Cấu trúc hệ thống xuất nhập (I/O) Cấu trúc phân cấp hệ thống lưu trữ BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Kiến trúc PC Keyboard Disks Mouse Disk Controller Display Printer USB Controller Graphic Adapter CPU MEMORY Đệm liệu (local buffer BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Chu trình hoạt động CPU Start Fetch Next Instruction Execute Instruction HALT Chu trình đơn giản – Không ngắt quãng Interrupts disabled Start Fetch Next Instruction Execute Instruction Interrupts enabled Check for interrupt; Process interrupt HALT BK Chu trình có điều khiển ngắt quãng TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Ngắt quãng Phân loại: ngắt quãng BK Program: tràn số học, chia cho 0, truy cập nhớ bất hợp pháp Timer: cho phép CPU thực thi tác vụ đó theo định kỳ I/O: kết thúc tác vụ I/O, xảy lỗi I/O Hardware failure: Hư hỏng nguồn, lỗi memory parity,… Trap (software interrupt): yêu cầu dịch vụ hệ thống (gọi system call),… Lược đồ thời gian process có yêu cầu tác vụ I/O TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Xử lý ngắt quãng User Program Interrupt vector table 0 00ffe23f interrupt 0x21 routine i 21 00ffe23f ret int 0x21 i+1 N ffffffff M Interrupt handler BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Q trình xử lý ngắt qng I/O interrupts Không có ngắt quãng BK TP.HCM Có ngắt quãng (Hình chỉ minh họa I/O interupt) Khoa Khoa học & Kỹ thuật Máy tính Hệ thống I/O BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Các kỹ thuật thực I/O Polling, ví dụ CPU đọc liệu: Để đọc liệu từ thiết bị I/O (thông qua I/O port), CPU thiết lập bit (bit 1) ghi điều khiển (control register) để báo hiệu lệnh đọc cho I/O controller I/O controller đọc word liệu từ thiết bị I/O, xóa bit điều khiển (bit 0) I/O controller không gây ngắt xong việc CPU phải đọc status bit (polling) để kiểm tra trạng thái thiết bị I/O Khi I/O controller sẵn sàng, CPU đọc word liệu từ ghi liệu (data register); CPU gửi lệnh đọc word kế BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Các kỹ thuật thực I/O (tt.) Interrupt-driven I/O CPU không poll mà I/O controller gây ngắt quãng sẵn sàng cho tác vụ I/O Trong lúc thiết bị I/O thực thi lệnh, CPU có thể thực thi công việc khác X X Polling interrupt-driven I/O đều tiêu tốn thời gian xử lý CPU vì CPU phải copy byte liệu đọc/ghi memory (programmed I/O, PIO) Thích hợp cho thiết bị I/O có tốc độ không cao (keyboard, mouse) BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Các kỹ thuật thực I/O (tt.) Direct Memory Access (DMA) CPU gửi yêu cầu đến module DMA (= DMA controller) Module DMA chuyển khối liệu nhớ thiết bị I/O mà không cần CPU can thiệp Khi xong tác vụ gửi / nhận thì phát khởi ngắt quãng CPU chỉ tham gia vào giai đoạn khởi đầu kết thúc việc truyền / nhận liệu Trong truyền / nhận liệu, CPU có thể thực thi cơng việc khác Thích hợp cho thiết bị có tốc độ cao (đĩa) BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 10 Hệ thống lưu trữ BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính Hệ thống lưu trữ Lưu trữ dạng thức I/O quan trọng Bộ nhớ (main memory, primary memory) CPU chỉ có thể truy cập trực tiếp ghi (registers) nhớ ROM, RAM Bộ nhớ phụ (secondary storage) Hệ thống lưu trữ thông tin bền vững (nonvolatile storage) Đĩa từ (magnetic disk): đĩa mềm, đĩa cứng, băng từ Đĩa quang (optical disk): CD-ROM, DVD-ROM Flash ROM: USB disk BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 12 Phân cấp hệ thống lưu trữ Tốc độ cao Vd: file-system data Giá thành thấp Dung lượng lớn BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 13 Dual mode • Mục đích: bảo vệ hệ điều hành chương trình ứng dụng Giải pháp Kỹ thuật dual mode: cần có phần cứng hỗ trợ User mode – thực thi với quyền hạn user bình thường Kernel mode (còn gọi supervisor mode, system mode, monitor mode) – có toàn quyền truy xuất tài nguyên hệ thống BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 14 Dual mode (tt) Phần cứng có thêm mode bit để kiểm soát mode hành: mode bit = 0: kernel mode mode bit = 1: user mode Khi CPU bị ngắt (do thiết bị ngoại vi, lỗi xảy ra,…), CPU chuyển sang kernel mode thực thi interrupt service routine tương ứng BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 15 Bảo vệ phần cứng – Lệnh I/O Giải pháp: lệnh I/O đều privileged instruction User mode program không thực thi lệnh I/O ( trap), phải thông qua lời gọi system call System call Là phương thức để process yêu cầu dịch vụ hệ điều hành System call gây ngắt mềm (trap), quyền điều khiển chuyển đến trình phục vụ ngắt tương ứng, đồng thời thiết lập mode = (kernel mode) Hệ điều hành kiểm tra tính hợp lệ, đắn đối số, thực yêu cầu trả quyền điều khiển về lệnh sau lời gọi system call, mode = BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 16 Bảo vệ phần cứng – Bộ nhớ Vd: bảo vệ nhớ dùng ghi - Truy cập nhớ vùng xác định ghi base ghi limit sinh trap - Lệnh nạp giá trị cho ghi base ghi limit đều privileged instruction (b) (a) BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 17 Bảo vệ phần cứng – CPU Bảo vệ CPU Bảo đảm OS trì quyền điều khiển Tránh trường hợp CPU bị kẹt vòng lặp vô hạn Cơ chế thực dùng timer để kích khởi ngắt quãng định kỳ Bộ đếm timer giảm dần sau xung clock Khi đếm timer thì ngắt timer kích hoạt hệ điều hành nắm quyền điều khiển Lệnh nạp giá trị đếm timer privileged instruction BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 18 Timer Có thể sử dụng timer để thực time-sharing Thiết lập timer gây ngắt định kỳ N ms (N: time slice, quantum time) định thời CPU sau lần ngắt Có thể dùng timer để tính thời gian trơi qua (elapse time) BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 19 ... tính Xử lý ngắt quãng User Program Interrupt vector table 0 00ffe23f interrupt 0x21 routine i 21 00ffe23f ret int 0x21 i+1 N ffffffff M Interrupt handler BK TP.HCM Khoa Khoa học & Kỹ thuật... từ Đĩa quang (optical disk): CD-ROM, DVD-ROM Flash ROM: USB disk BK TP.HCM Khoa Khoa học & Kỹ thuật Máy tính 12 Phân cấp hệ thống lưu trữ Tốc độ cao Vd: file-system data Giá thành thấp Dung... yêu cầu dịch vụ hệ điều hành System call gây ngắt mềm (trap), quyền điều khiển chuyển đến trình phục vụ ngắt tương ứng, đồng thời thiết lập mode = (kernel mode) Hệ điều hành kiểm tra