CÂU HeI VÀ BÀI TgP CHƯƠNG
7.6 .X lý ngMt (Interrupt Handling)
Trong máy tắnh, ựôi khi m)t sZ công vi c nào ựó c!n ựư;c x- lý ngay t8c th`i và như v'y c!n ph i làm ựình trU m)t cơng vi c nào ựó ựang x- lý, vi c làm ựó c"a CPU ta g*i là ngzt. V'y ngzt là m)t s: ki n x y ra m)t cách ng}u nhiên trong máy tắnh và làm ngưng tắnh tu!n t: c"a chương trình (nghĩa là tNo ra m)t l nh nh y). Ph!n l n các nhà s n xuCt máy tắnh (vắ dg như IBM, INTEL) dùng tQ ngzt quãng ựF ám chB s: ki n này, tuy nhiên m)t sZ nhà s n xuCt khác dùng tQ ỘngoNi l Ợ, ỘlriỢ, hay Ộb}yỢ ựF chB ựUnh hi n tư;ng này.
Khi thi t k máy tắnh thì b) ựi=u khiFn c"a CPU là b) ph'n khó th:c hi n nhCt và ngzt quãng lNi là ph!n khó th:c hi n nhCt trong b) ựi=u khiFn. đF nh'n bi t ựư;c m)t ngzt quãng lúc ựang thi hành m)t l nh, ta ph i bi t ựi=u chBnh chu kỳ xung nhUp và ựi=u này có thF nh hưDng ự n hi u qu c"a máy tắnh.
Ngzt quãng ựư;c 8ng dgng trong nhi=u trư`ng h;p, vắ dg như ựF nh'n bi t các sai sót trong tắnh tốn sZ h*c như chia cho 0, ựF 8ng dgng cho nhHng hi n tư;ng th`i gian th:c c!n ựư;c phgc vg t8c thì. Có thF li t kê nhHng cơng vi c sau ựây ựịi hJi ph i có ngzt qng:
NgoNi vi ựịi hJi nh'p hoVc xuCt sZ li u.
Ngư`i l'p trình muZn dùng dUch vg c"a h ựi=u hành.
Cho m)t chương trình chNy tQng l nh. Làm ựiFm dQng c"a m)t chương trình.
Báo tràn sZ li u trong tắnh toán sZ h*c. Trang b) nh th:c s: khơng có trong b) nh . Báo vi phNm vùng cCm c"a b) nh .
Báo dùng m)t l nh khơng có trong t'p l nh. Báo ph!n c8ng máy tắnh bU hư.
Báo ựi n bU czt.
Thông thư`ng trong máy tắnh ngzt quãng không x y ra thư`ng xuyên nhưng b) x- lý ph i ựư;c thi t k sao cho có thF lưu giH trNng thái c"a nó trư c khi bU ngzt quãng ựi phgc vg m)t công vi c gì ựó ựịi hJi t8c thì. Sau khi th:c hi n xong cơng vi c ựó thì chương trình x- lý ngzt ph i khôi phgc lNi nguyên trNng thái c"a nó trư c khi ngzt quãng x y ra ựF có thF ti p tgc cơng vi c.
Khi thi t k máy tắnh, ựF ựơn gi n ngư`i ta có thF thi t k b) x- lý chB chCp nh'n ngzt sau khi th:c hi n xong l nh ựang chNy. Trong trư`ng h;p ựơn gi n này, khi m)t ngzt x y ra, b) x- lý thi hành các bư c sau ựây:
1. Th:c hi n xong l nh ựang làm. 2. Lưu trH trNng thái hi n tNi.
3. Nh y ự n chương trình phgc vg ngzt
4. Khi chương trình phgc vg chCm d8t, b) x- lý khơi phgc lNi trNng thái cũ c"a nó và ti p tgc th:c hi n chương trình mà nó ựang th:c hi n khi bU ngzt.
Chương VII: T ch c B x lý
B ng 7.1 cho ta thCy th8 t: th:c hi n các s: ki n khi x y ra ngzt, D ựây #$%$&!
B ng 7.1. Th:c hi n các vi tác vg khi ngzt