Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
4,83 MB
Nội dung
Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin 2. Hệ thống máy tính 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ữ 2.1 Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Kiến trúc cơ bản của hệ thống máy tính 2.2 CPU CPU Disk controller Disk controller USB controller USB controller Graphics adapter Graphics adapter MEMORY MEMORY Disks Mouse Keyboard Printer Monitor Đệm dữ liệu (local buffer) Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Chu trình hoạt động của CPU 2.3 Start Start Fetch Next Instruction Fetch Next Instruction Execute Instruction Execute Instruction HALT HALT 1. Chu trình đơn giản (không có ngắt quãng) Start Start Fetch Next Instruction Fetch Next Instruction Execute Instruction Execute Instruction HALT HALT 2. Chu trình có điều khiển ngắt quãng Check for interrupt; Process interrupt Check for interrupt; Process interrupt Interrupts enabled Interrupts disabled Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Ngắt quãng Phân loại: ngắt quãng do – Program: tràn số học, chia cho 0, truy cập bộ nhớ bất hợp pháp – Timer: cho phép CPU thực thi một tác vụ nào đó theo đònh kỳ – I/O: kết thúc tác vụ I/O, xảy ra lỗi trong 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),… 2.4 Lược đồà thời gian khi process có yêu cầu các tác vụ I/O Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Quá trình xử lý ngắt quãng 2.5 i i+1 0 M User Program Interrupt handler 0 … … 21 00ffe23f N Interrupt vector table int. 0x21 0 … 00ffe23f interrupt 0x21 routine ret ffffffff 1 2 3 Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Quá trình xử lý ngắt quãng (tt) 2.6 Có ngắt quãng I/O interrupts Không có ngắt quãng Caáu truùc heä thoáng I/O -2.7- Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Các cơ chế thực hiện I/O Polling – Để gửi dữ liệu ra một thiết bò I/O (thông qua I/O port), CPU ghi byte dữ liệu vào thanh ghi dữ liệu (data register), sau đó thiết lập một bit (bit ← 1) của thanh ghi điều khiển (control register) để báo hiệu cho I/O controller. (PIO: programmed I/O) – I/O controller đọc byte dữ liệu từ thiết bò I/O, xóa bit điều khiển (bit ← 0). CPU tiếp tục gửi byte kế. – I/O controller không gây ra ngắt mỗi khi xong việc. CPU phải dùng cơ chế polling để kiểm tra trạng thái thiết bò I/O – Truyền dữ liệu từng byte một 2.8 PIO Các cơ chế thực hiện I/O (tt) Interrupt-driven I/O – CPU không poll mà I/O controller sẽ gây ra ngắt quãng mỗi khi 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. – Polling và interrupt-driven I/O đều tiêu tốn thời gian xử lý của CPU bởi vì CPU phải copy byte dữ liệu được đọc/ghi ↔ memory. – Thích hợp cho các thiết bò I/O có tốc độ không cao (keyboard, mouse) 2.9 X X Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin Các cơ chế thực hiện I/O (tt) Phương pháp thực hiện I/O 2.10 Synchronous Asynchronous - - - : “bypassing” [...]... 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 2.15 Cơ chế caching Caching – nạp trước dữ liệu vào thiết bò lưu trữ tốc độ cao hơn Tại sao phải dùng cache? – Chênh lệch lớn giữa tốc độ CPU và tốc độ bộ nhớ RAM, đóa,… – Khai thác nguyên lý cục bộ (locality) Kích thước cache nhỏ → phải quản lý cache: thay nội dung cache Trong cơ chế caching, một dữ liệu có... lưu trữ -2 .1 3- Hệ thống lưu trữ Lưu trữ là một trong những dạng thức I/O quan trọng – Bộ nhớ chính (main memory, primary memory) CPU chỉ có thể truy cập trực tiếp thanh ghi (registers) và bộ 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 disks): đóa mềm, đóa cứng, băng từ Đóa quang (optical disk): CD-ROM, DVD-ROM Flash... cache: thay nội dung cache Trong cơ chế caching, một dữ liệu có thể được lưu trữ nhiều nơi → phải bảo đảm tính nhất quán dữ liệu: cache coherency problem A: dữ liệu Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin 2.16 Bảo vệ phần cứng – dual mode Cơ chế dual-mode: cần có phần cứng hỗ trợ – User mode – thực thi với quyền hạn của user bình thường – Kernel mode (còn gọi là supervisor mode,... kế tiếp ngay sau lời gọi system call, mode = 1 2.18 Bảo vệ phần cứng – Bộ nhớ Vd: bảo vệ bộ nhớ dùng 2 thanh ghi - Truy cập bộ nhớ ngoài vùng xác đònh bởi thanh ghi base và thanh ghi limit sẽ sinh ra trap - Lệnh nạp giá trò cho các thanh ghi base và thanh ghi limit đều là privileged instruction (b) (a) Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin 2.19 Bảo vệ phần cứng – CPU Bảo vệ... đếm timer bằng 0 thì ngắt timer được kích hoạt → hệ điều hành sẽ nắm quyền điều khiển Lệnh nạp giá trò bộ đếm timer là một privileged instruction Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin 2.20 Timer Có thể sử dụng timer để thực hiện cơ chế time-sharing – Thiết lập timer gây ngắt đònh kỳ N ms (N: time slice, quantum time) và đònh thời CPU sau mỗi lần ngắt Có thể dùng timer để tính... user mode – Khi có ngắt hoặc có lỗi xảy ra, hệ thống sẽ chuyển sang kernel mode Khoa Kỹ thuật Máy tính – Trường Đại học Công nghệ Thông tin 2.17 Bảo vệ phần cứng – I/O Lệnh I/O đều là privileged instruction – Users không được phép tương tác trực tiếp với các thiết bò I/O mà phải thông qua lời gọi system call System call – Là phương thức duy nhất để process yêu cầu các dòch vụ của hệ điều hành – . Next Instruction Fetch Next Instruction Execute Instruction Execute Instruction HALT HALT 1. Chu trình đơn giản (không có ngắt quãng) Start Start Fetch Next Instruction Fetch Next Instruction Execute Instruction Execute Instruction HALT HALT 2 Next Instruction Fetch Next Instruction Execute Instruction Execute Instruction HALT HALT 2. Chu trình có điều khiển ngắt quãng Check for interrupt; Process interrupt Check for interrupt; Process interrupt Interrupts enabled Interrupts disabled Khoa. phải dùng cache? – Chênh lệch lớn giữa tốc độ CPU và tốc độ bộ nhớ RAM, đóa,… – Khai thác nguyên lý cục bộ (locality) Kích thước cache nhỏ → phải quản lý cache: thay nội dung cache Trong cơ