Bài giảng Kiến trúc máy tính và hệ điều hành: Bài 6 - Nguyễn Hồng sơn
lượt xem 3
download
Tiếp tục bài 5, Bài giảng Kiến trúc máy tính và hệ điều hành bài 6 giới thiệu nội dung về thực thi chương trình có ngắt: Khái niệm ngắt; Thủ tục ngắt tổng quát; Hoạt động ngắt và Interrupt Handler. Kính mời quý đọc giả tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Kiến trúc máy tính và hệ điều hành: Bài 6 - Nguyễn Hồng sơn
- BAØI 6 THỰC THI CHƯƠNG TRÌNH CÓ NGẮT 1
- Khái niệm Ngắt (Interrupt) Hầu hết các máy tính đều có cơ chế cho phép ngắt quá trình xử lý bình thường của CPU. Có một số loại ngắt phổ biến: Program: phát sinh bởi điều kiện, là kết quả thực thi một chỉ thị, như tràn số học, chia 0… Timer: phát sinh bởi một bộ định thời trong CPU, cho phép OS thực hiện một chức năng thông thường nào đó. I/O: phát sinh bởi I/O controller, báo hoàn tất một công việc hay thông báo một điều kiện lỗi nào đó. Lỗi phần cứng 2
- Khái niệm Ngắt (Interrupt)… Ngắt thể hiện đặc tính kiến trúc của máy tính Các thiết bị ngoài hoạt động chậm hơn rất nhiều so với CPU lãng phí CPU Ví dụ hoạt động in Ngắt là một phương thức nhằm cải thiện hiệu suất, CPU sẽ chuyển đến thực thi chỉ thị khác giữa lúc hoạt động I/O đang diễn ra. 3
- Chương trình I/O tiêu biểu Một chương trình I/O gồm có ba phần cơ bản: Tuần tự các chỉ thị nhằm chuẩn bị cho hoạt động I/O thực sự Lệnh I/O, khi gọi lệnh này chương trình phải đợi thiết bị I/O thực hiện chức năng được yêu cầu. Chương trình có thể đợi theo cách lặp lại thao tác kiểm tra để xác định hoạt động I/O đã được thực hiện hay chưa. Tuần tự chỉ thị làm thủ tục hoàn tất hoạt động I/O, ví dụ dựng các cờ, thiết lập thông báo… 4
- Hoạt động của chương trình không ngắt Main program I/O program 1 4 Call write I/O command 5 2 end Call write Lộ trình thực th c thi 3 5
- Hoạt động của chương trình không ngắt… Hoạt động I/O liên quan đến các thiết bị ngoài với các thao tác cơ-điện mất nhiều thời gian. Chương trình I/O phải đợi cho các thao tác I/O hoàn tất. => Chương trình chính sẽ phải dừng lại mỗi khi gặp một chỉ thị I/O (ví dụ write) trong một thời gian khá dài. 6
- Hoạt động của chương trình có ngắt 1 4 Call write I/O command Thời gian thao tác I/O kết thúc trước 2a khi gặp chỉ thị I/O mới Interrupt Handler 2b 5 Call write end 3a 3b Lộ trình thực th c thi 7
- Hoạt động của chương trình có ngắt… 1 4 Call write I/O command Thời gian thao tác I/O chưa kết thúc đã gặp chỉ thị I/O 2 mới Interrupt Handler 5 Call write end 3 Lộ trình thực thi 8
- Đánh giá 1 1 4 4 Thao Thao cpu đợi 2a tác I/O tác I/O 5 5 2b 2 4 4 Thao 3a tác I/O Thao tác I/O cpu đợi 5 5 3b 3 9
- 1 1 4 4 Thao 2 tác I/O Thao cpu đợi tác I/O cpu đợi 5 5 4 2 3 4 Thao tác I/O cpu đợi Thao cpu đợi tác I/O 5 5 3 10
- Thủ tục ngắt tổng quát Phát sinh tín hiệu ngắt: ví dụ từ I/O module Đáp ứng ngắt từ CPU: treo, chuyển Chương trình 1 Interrupt handler 2 Int req i phục hồi thực thi i+1 M 11
- Chu kỳ chỉ thị có ngắt Chương trình chính không chứa mã lệnh chuyên trách về ngắt CPU & OS chịu trách nhiệm Chu kỳ ngắt (interrupt cycle): CPU kiểm tra phát hiện int req. 12
- bắt đầu nạp chỉ thị kế Chu kỳ lấy chỉ thị kết thúc thực thi Chu kỳ thực thi ngắt bị cấm Cho phép ngắt kiểm tra và Chu kỳ ngắt xử lý ngắt 13
- Sơ đồ trạng thái trong chu kỳ chỉ thị CPU truy xuất MM hay I/O 2 5 7 nhiều nhiều toán hạng kết quả 4 kiểm tra xử lý 1 3 4 6 ngắt ngắt chỉ thị Vetor hay Không kế string ngắt Hoạt động bên trong CPU 14
- Hoạt động ngắt và Interrupt Handler Nếu một ngắt xảy ra, bộ xử lý tiến hành: Dừng hoạt động thực thi hiện hành và lưu ngữ cảnh. Gán địa chỉ của Int handler vào thanh ghi PC Thực thi diễn ra trên chương trình phục vụ ngắt Int Handler ∈ OS Xác định bản chất ngắt Thực hiện các thao tác cần thiết 15
- Đa ngắt Có thể có nhiều ngắt xảy ra đồng thời Có hai giải pháp kiểm soát: cấm các ngắt khác khi đang xử lý một ngắt nào đó xử lý ưu tiên 16
- Int Hand Chương trình chính Int Req bị cấm Int Req Int Hand 17
- Int Hand Int Req Int Req được chấp nhận do ưu tiên cao Int Hand 18
- Ví dụ Ba thiết bị ngoại vi: Line (ưu tiên 1) thời gian cần 10 Đĩa (ưu tiên 2) thời gian cần 10 In (ưu tiên 3) thời gian cần 10 bắt đầu lúc t=0, ngắt in lúc t=10, ngắt thông tin lúc t=15, ngắt đĩa lúc t=20 Trình bày diễn biến của các ngắt? 19
- 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Kiến trúc máy tính: Chương 1 - TS. Nguyễn Qúy Sỹ
46 p | 272 | 52
-
Bài giảng Kiến trúc máy tính: Chương 3 - Cấu trúc phần cứng của máy tính
12 p | 269 | 48
-
Bài giảng Kiến trúc máy tính - ĐH Hàng Hải
95 p | 211 | 32
-
Bài giảng Kiến trúc máy tính (238tr)
238 p | 149 | 23
-
Bài giảng Kiến trúc máy tính: Chương 1 - Phạm Hoàng Sơn
70 p | 138 | 20
-
Bài giảng Kiến trúc máy tính: Chương 1 - ThS. Lê Văn Hùng
17 p | 147 | 11
-
Bài giảng Kiến trúc máy tính - Chương 1: Tổng quan về kiến trúc máy tính
40 p | 32 | 10
-
Bài giảng Kiến trúc máy tính: Chương 1 - ThS. Nguyễn Hằng Phương
24 p | 110 | 9
-
Bài giảng Kiến trúc máy tính và hệ điều hành: Chương 1 - Nguyễn Ngọc Duy
30 p | 57 | 6
-
Bài giảng Kiến trúc máy tính: Chương 7 - ThS. Lê Văn Hùng
18 p | 122 | 5
-
Bài giảng Kiến trúc máy tính - Kiến trúc bộ lệnh
78 p | 83 | 4
-
Bài giảng Kiến trúc máy tính - Chương 1: Giới thiệu
51 p | 78 | 3
-
Bài giảng Kiến trúc máy tính và Hệ điều hành: Chương 3 - Vũ Thị Thúy Hà
89 p | 12 | 3
-
Bài giảng Kiến trúc máy tính và Hệ điều hành: Chương 1 - Vũ Thị Thúy Hà
83 p | 10 | 2
-
Bài giảng Kiến trúc máy tính và Hệ điều hành: Chương 2 - Vũ Thị Thúy Hà
106 p | 4 | 2
-
Bài giảng Kiến trúc máy tính và Hệ điều hành: Chương 4 - Vũ Thị Thúy Hà
64 p | 5 | 2
-
Bài giảng Kiến trúc máy tính và Hệ điều hành: Chương 5 - Vũ Thị Thúy Hà
20 p | 6 | 2
-
Bài giảng Kiến trúc máy tính và Hệ điều hành: Chương 6 - Vũ Thị Thúy Hà
74 p | 14 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn