วันอาทิตย์ที่ 19 สิงหาคม พ.ศ. 2550

ขบวนการอินเตอร์รัพท์


ขั้นตอนการเกิดและตอบรับอินเตอร์รัพท์โดยทั่วไปจะเป็นดังนี้
1. วงจรภายนอกส่งสัญญาณ INT มายังซีพียู
2. ถ้าซีพียูทำคำสั่ง enable interrupt มาแล้ว ซีพียู จะตอบรับ ด้วย interrupt acknowledge cycle
3. วงจรภายนอกส่ง อินเตอร์รัพท์เวคเตอร์ ให้ซีพียู
4. ซีพียู เอา อินเตอร์รัพท์เวคเตอร์ นั้นมาเ ป็นตัวชี้ตำแหน่ง ของ คำสั่งใหม่ ที่จะต้องไปทำ (ก่อนกระโดดไป ซีพียู ตัองเก็บ สถานะของตัวเอง ขณะนั้นไว้)
5. กระโดดไปทำยังตำแหน่งนั้น
6. ตอนจบ ของ โปรแกรม interrupt service routine จะต้อง มีคำสั่ง ให้ซีพียู เรียก สถานะที่เก็บไว้ กลับมา แล้ว กระโดด กลับมายัง ตำแหน่งเดิม ก่อนหน้าจะถูก อินเตอร์รัพท์ (กลไก การเก็บสถานะเดิม ก่อน อินเตอร์รัพท์ และ กลไก การกลับมา สู่โปรแกรมเดิม จะขึ้นกับ รายละเอียด ของซีพียู แต่ละตัว)

ไม่มีความคิดเห็น: