เท่าที่เรียนมาก็นะ interrupt ใน Microcontroller คือคำสั่ง ความสามารถในการทำให้ไมโครโปรเซสเซอร์ หยุดพักจากงานที่กระทำอยู่ในปัจจุบัน แล้วกระโดดไปทำงานอีกงานหนึ่งจนเสร็จแล้ว จึงกระโดดกลับมาทำงานชิ้นเดิมที่หยุดพักไว้ต่อไป
CPU จะถูก interrupt หรือในการทำงานของ A/D converter เมื่อแปลงสัญญาณเรียบร้อยแล้ว ก็จะส่งสัญญาณ interrupt ไปแจ้งให้
ไมโครคอนโทรลเลอร์ทราบ เมื่อซอฟต์แวร์หรือฮาร์ดแวร์ต้อง การให้ไมโครคอนโทรลเลอร์พักจากงานที่ทำอยู่เพื่อมาทำงานตามการร้องขอของตน ก่อน ซอฟต์แวร์หรือฮาร์ดแวร์เหล่านี้จะทำการส่งสัญญาณที่เรียกว่า interrupt request ให้แก่ไมโครคอนโทรลเลอร์
เมื่อไมโครคอนโทรลเลอร์ได้รับสัญญาณ interrupt request แล้ว จะทำการสนองตอบสัญญาณโดยการข้ามไปทำการประมวลผลโปรแกรมย่อยที่เรียกว่า interrupt service routine
แต่ถ้าเกี่ยวกับคอมละก้อนะ
Interrupt มีผลต่อระบบ Computer System คือ
- เก็บ content ของ CPU registers
- ตรวจสอบว่ามี error ที่เกิดจากการทำงาน (execute)ของ input operation ล่าสุดหรือไม่
- รับ character จาก device ที่เกี่ยวข้อง
- เก็บ character นั้นใน buffer
- ปรับค่าตัวแปร pointer และตัวแปร counter ของ buffer เพื่อเก็บค่า character ถัดไป
- set flag ใน memory เพื่อแจ้งให้ O.S รู้ว่าได้มีการ input ใหม่เข้ามา
- O.S ส่วนที่เหลือจะรับผิดชอบเกี่ยวกับการประมวลผลข้อมูล(input)นั้น เช่น ส่งข้อมูลไปยังโปรแกรมที่ร้องขอ
- Load content ของ register ที่เก็บไว้
- ส่ง content กลับไปยัง instruction ที่ถูก interrupt
Interrupt มีผลต่อระบบ Computer System คือ
การทำงานของระบบคอมพิวเตอร์ (Computer-System Operation)
อุปกรณ์ ไอโอ (I/O device) และ CPU สามารถทำไปพร้อม ๆ กัน โดยแต่ละอุปกรณ์นั้นจะมีตัวควบคุม (Controller) เฉพาะของตนเองโดยจะเก็บรายละเอียดชนิดของอุปกรณ์ ตัวควบคุม (Controller) จะมีหน่วยความจำบัฟเฟอร์ (buffer) สำหรับเก็บข้อมูลชั่วคราวระหว่างทำงาน โดย CPU สามารถย้ายข้อมูลไปและกลับระหว่างหน่วยความจำหลัก (main memory) ไปยังหน่วยความจำบัฟเฟอร์ (buffer) ข้อมูลของอุปกรณ์จะถูกเก็บอยู่ในบัฟเฟอร์ของตัวควบคุม (Controller) ซึ่ง Controller จะแจ้งให้ CPU ทราบว่าอุปกรณ์แต่ละตัวทำงานเสร็จสิ้นเมื่อไหร่ แจ้งโดยใช้สัญญาณอินเทอรัพ (interrupt)
หน้าที่การทำงานของอินเทอรัพ (interrupt)
- อินเทอรัพ (interrupt) จะถ่ายโอนการควบคุมไปยัง interrupt service routine โดยปกติแล้ว จะผ่าน interrupt vector ซึ่งเก็บที่อยู่ (address) ทั้งหมดของ service routines
- โครงสร้างสถาปัตยกรรมอขงอินเทอรัพ จะบันทึกที่อยู่ (address) ของ interrupted instruction
- เมื่อมีอินเทอรัพเข้ามามันจะถูกหยุดการทำงาน (disabled) หากยังมีอินเทอรัพอื่นอยู่ระหว่างการดำเนินการ เพื่อป้องกันไม่ให้อินเทอรัพนั้นสูญหาย
- แทรพ (trap) เป็นซอฟต์แวร์ในการสร้างอินเทอรัพ ซึ่งเป็นสาเหตุให้เกิดข้อผิดพลาด (error) หรือเกิดการร้องขอจากผู้ใช้ (user request)
- OS คือ ตัวขับเคลื่อนอินเทอรัพ
ผมว่าอาจจะมีปัญหากับ windows มากกว่านะ วินโดวส์ที่เหมาะจะเล่นซิม 3
ผมว่า xp service pack 3 กำลังดีนะลองลงใหม่ดูนะ
ขี้เกียจอ่านรึเปล่าน่ะ แต่มันคือเรื่องจริงนะผมไม่ได้โม้ ตามตำราเป๊ะ