1 / 14

Interrupt

Interrupt. อินเทอร์รัพท์( Interrupt ).

gayle
Télécharger la présentation

Interrupt

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Interrupt

  2. อินเทอร์รัพท์(Interrupt) • เป็นกลไกที่จัดเตรียมไว้เพื่อเพิ่มประสิทธิภาพในการทำงาน ตัวอย่างเช่น อุปกรณ์ภายนอกส่วนใหญ่ทำงานช้ากว่าความเร็วของโปรเซสเซอร์มาก สมมุติว่าโปรเซสเซอร์กำลังถ่ายโอนข้อมูลไปยังเครื่องพิมพ์ โดยการใช้วงรอบคำสั่งแบบพื้นฐาน หลังจากการบันทึกข้อมูลโปรเซสเซอร์จะต้องหยุดรอโดยไม่มีงานทำ จนกว่าเครื่องพิมพ์จะสามารถทำงานตามได้ทัน ช่วงระยะรอคอยนี้อาจยาวนานตั้งแต่หลายร้อยหรือหลายพันวงรอบการทำงาน

  3. แสดงกระบวนการอินเทอร์รัพแสดงกระบวนการอินเทอร์รัพ • เมื่อผู้ใช้เรียกใช้ฟังก์ชัน write จำนวนหลายครั้งในระหว่างที่ทำการประมวลผลโปรแกรม • โด้ดส่วนที่ 1,2,3 คือชุดคำสั่งที่ไม่เกี่ยวข้องกับงานไอโอ • ฟังก์ชัน write คือฟังก์ชันอำนวยความสะดวก ซึ่งจะเรียกใช้โปรแกรมสำหรับงานไอโอ โปรแกรมทางไอโอประกอบด้วยสามส่วนคือ • ลำดับคำสั่ง แทนด้วยหมายเลข 4 ซึ่งเป็นการเตีรยมการสำหรับฟังก์ชันไอโอ • คำสั่งไอโอ • ลำดับของชุดคำสั่ง แทนด้วยหมายเลข 5 เพื่อการทำงานไอโอให้เสร็จสิ้น

  4. อินเทรร์รัพและวงรอบคำสั่งอินเทรร์รัพและวงรอบคำสั่ง • เป็นกลไกที่ช่วยให้โปรเซสเซอร์สามารถประมวลผลคำสั่งของโปรแกรมได้ในขณะที่อุปกรณ์ไอโอกำลังทำงาน • โปรแกรมของผู้ใช้จะเรียกใช้ไอโอผ่านการทำงานของระบบปฏิบัติการ(เรียกว่า System call) • โปรแกรมสำหรับไอโอที่ถูกเรียกขึ้นมาประกอบด้วย โปรแกรมส่วนเตรียมการและโปรแกรมส่วนทำงานไอโอ • ภายหลังจากที่บางส่วนของคำสั่งเหล่านี้ถูกประมวลผลแล้ว การควบคุมจะถูกส่งกลับไปที่โปรแกรมของผู้ใช้

  5. อินเทรร์รัพและวงรอบคำสั่งอินเทรร์รัพและวงรอบคำสั่ง • เมื่ออุปกรณ์ภายนอกพร้อมที่จะให้บริการ นั่นคือเมื่ออุปกรณ์มีความพร้อมในการรับข้อมูลใหม่จากโปรเซสเซอร์ • อุปกรณ์ไอโอจะส่งสัญญาณอินเทอร์รัพท์เสนอความต้องการเรียกว่า Interrupt request มายังโปรเซสเซอร์ • โปรเซสเซอร์จะต้อบสนองด้วยการหยุดการประมวลผลโปรแกรมที่กำลังทำงานอยู่เป็นการชั่วคราว(suspend)และนำโปรแกรมสำหรับอุปกรณ์ไอโอนั้นๆ เรียกว่า interrupt handler มาประมวลผลแทน • หลังจากที่อุปกรณ์ไอโอได้รับการตอบสนองเสร็จสิ้นแล้ว ก็จะนำโปรแกรมเดิมกลับมาประมวลผล(resume)

  6. วงรอบคำสั่งพร้อมด้วยอินเทอร์รัพท์วงรอบคำสั่งพร้อมด้วยอินเทอร์รัพท์ • ในหารสนับสนุนการทำงานของอินเทอร์รัพท์ ระบบคอมพิวเตอร์ได้เพิ่มวงรอบอินเทอร์รัพท์(Interrupt cycle) • ถ้ามีสัญญาณอินเทอร์รัพท์โปรเซสเซอร์จำทำงานดังนี้ • โปรเซสเซอร์หยุดการประมวลผลโปรแกรมที่กำลังทำงานอยู่ชั่วคราว และบันทึกข้อมูลที่เกี่ยวข้องกับการประมวลผลเอาไว้ • กำหนดค่าโปรแกรมเคาน์เตอร์ ให้ชี้ไปยังตำแหน่งของคำสั่งเริ่มต้นของโปรแกรมอินเทอร์รัพท์

  7. การใช้งานอินเทอร์รัพท์ซ้อนการใช้งานอินเทอร์รัพท์ซ้อน • เกิดการร้องขออินเทอร์รัพท์ในขณะที่การบริการอินเทอร์รัพท์อื่นยังไม่เสร็จสิ้น • แนวทางแก้ไขการเกิดอิทเทอร์รัพท์ซ้อน มี 2 แนวทาง • แนวทางที่ 1 ใช้วิธียกเลิกการใช้สัญญาณอินเทอร์รัพท์เป็นการชั่วคราว(disable interrupt) • แนวทางที่ 2 การกำหนดลำดับความสำคัญให้กับอินเทอร์รัพท์ทุกตัว และยินยอมให้อินเทอร์รัพท์ที่มีคำดับความสำคัญสูงกว่า

More Related