Interrupt คืออะไร: ประเภทและการใช้งาน

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





พีซีใช้คำขอขัดจังหวะเพื่อจัดการกับฟังก์ชันฮาร์ดแวร์ต่างๆ การขัดจังหวะของฮาร์ดแวร์ถูกนำมาใช้ครั้งแรกโดย UNIVAC 1103 ในปีพ. ศ. 2496 อุบัติการณ์แรกของการมาสก์ขัดจังหวะถูกรวมเข้าด้วยกันโดย IBM 650 ในปีพ. ศ. 2497 จำเป็นอย่างยิ่งที่จะต้องกำหนด IRQ ที่แตกต่างกันให้กับอุปกรณ์ฮาร์ดแวร์ต่างๆเพื่อทำหน้าที่ต่างๆ ในระหว่างการทำงานของโปรแกรมอุปกรณ์เช่นคีย์บอร์ดเมาส์ต้องใช้บริการของ CPU และสร้างการขัดจังหวะเพื่อเรียกร้องความสนใจจาก CPU และประมวลผลบริการที่ร้องขอ เหล่านี้เรียกว่า ขัดจังหวะ . หนึ่งในบัสของอุปกรณ์ I / O มีไว้เพื่อตอบสนองวัตถุประสงค์นี้เรียกว่า Interrupt Service Routine (ISR) สิ่งเหล่านี้ใช้ในแอพพลิเคชั่นต่างๆเช่นสำหรับเหตุการณ์ที่อ่อนไหวต่อเวลาการถ่ายโอนข้อมูลโดยเน้นที่เหตุการณ์ผิดปกติตัวจับเวลาเฝ้าระวังกับดัก ฯลฯ

Interrupt คืออะไร?

คำจำกัดความ: เรียกว่าอินพุต สัญญาณ ที่มีลำดับความสำคัญสูงสุดสำหรับเหตุการณ์ฮาร์ดแวร์หรือซอฟต์แวร์ที่ต้องการการประมวลผลเหตุการณ์ทันที ในช่วงแรก ๆ ของการคำนวณไฟล์ โปรเซสเซอร์ ต้องรอให้สัญญาณประมวลผลเหตุการณ์ใด ๆ โปรเซสเซอร์ควรตรวจสอบฮาร์ดแวร์และซอฟต์แวร์ทุกโปรแกรมเพื่อทำความเข้าใจว่ามีสัญญาณที่ต้องดำเนินการหรือไม่ วิธีนี้จะใช้จำนวนรอบสัญญาณนาฬิกาและทำให้โปรเซสเซอร์ไม่ว่าง ในกรณีที่หากมีสัญญาณใด ๆ ถูกสร้างขึ้นโปรเซสเซอร์จะใช้เวลาสักครู่ในการประมวลผลเหตุการณ์อีกครั้งซึ่งส่งผลให้ประสิทธิภาพของระบบไม่ดี




มีการนำกลไกใหม่มาใช้เพื่อเอาชนะกระบวนการที่ซับซ้อนนี้ ในกลไกนี้ฮาร์ดแวร์หรือซอฟต์แวร์จะส่งสัญญาณไปยังโปรเซสเซอร์แทนที่จะเป็นโปรเซสเซอร์ที่ตรวจสอบสัญญาณจากฮาร์ดแวร์หรือซอฟต์แวร์ สัญญาณแจ้งเตือนโปรเซสเซอร์ที่มีลำดับความสำคัญสูงสุดและระงับกิจกรรมปัจจุบันโดยบันทึกสถานะปัจจุบันและฟังก์ชันและประมวลผลการขัดจังหวะทันทีซึ่งเรียกว่า ISR เนื่องจากใช้เวลาไม่นานโปรเซสเซอร์จะรีสตาร์ทกิจกรรมตามปกติทันทีที่ประมวลผล

ขัดจังหวะ

ขัดจังหวะ



ประเภทของการขัดจังหวะ

สิ่งเหล่านี้แบ่งออกเป็นสองประเภทหลัก

ฮาร์ดแวร์ขัดจังหวะ

สัญญาณอิเล็กทรอนิกส์ที่ส่งจากอุปกรณ์ภายนอกหรือฮาร์ดแวร์เพื่อสื่อสารกับโปรเซสเซอร์ซึ่งบ่งชี้ว่าต้องได้รับการตรวจสอบทันที ตัวอย่างเช่นการลากเส้นจากแป้นพิมพ์หรือการกระทำจากเมาส์ทำให้เกิดการขัดจังหวะของฮาร์ดแวร์ทำให้ CPU อ่านและประมวลผล ดังนั้นจึงมาถึงแบบอะซิงโครนัสและในช่วงเวลาใดก็ได้ในขณะที่ดำเนินการตามคำสั่ง

การขัดจังหวะของฮาร์ดแวร์แบ่งออกเป็นสองประเภท


  • การขัดจังหวะหน้ากาก - โปรเซสเซอร์ต้องขัดจังหวะการลงทะเบียนมาสก์ที่อนุญาตให้เปิดใช้งานและปิดใช้งานการขัดจังหวะฮาร์ดแวร์ ทุกสัญญาณมีบิตอยู่ในทะเบียนหน้ากาก หากตั้งค่าบิตนี้การขัดจังหวะจะถูกเปิดใช้งานและปิดใช้งานเมื่อไม่ได้ตั้งค่าบิตหรือในทางกลับกัน สัญญาณที่ขัดจังหวะโปรเซสเซอร์ผ่านมาสก์เหล่านี้เรียกว่าการขัดจังหวะแบบมาสก์
  • อินเทอร์รัปต์แบบไม่ปิดบัง (NMI) - NMI เป็นกิจกรรมที่มีลำดับความสำคัญสูงสุดที่ต้องดำเนินการทันทีและภายใต้สถานการณ์ใด ๆ เช่นสัญญาณการหมดเวลาที่สร้างขึ้นจากตัวจับเวลาเฝ้าระวัง

ซอฟต์แวร์ขัดจังหวะ

ตัวประมวลผลเองร้องขอให้ซอฟต์แวร์ขัดจังหวะหลังจากดำเนินการตามคำสั่งบางอย่างหรือหากเป็นไปตามเงื่อนไขเฉพาะ คำสั่งเหล่านี้อาจเป็นคำสั่งเฉพาะที่ทริกเกอร์อินเทอร์รัปต์เช่นการเรียกรูทีนย่อยและสามารถถูกทริกเกอร์โดยไม่คาดคิดเนื่องจากข้อผิดพลาดในการเรียกใช้โปรแกรมหรือที่เรียกว่าข้อยกเว้นหรือกับดัก

วิธีการทริกเกอร์

โดยทั่วไปสัญญาณเหล่านี้ได้รับการออกแบบมาเพื่อทริกเกอร์โดยใช้ระดับสัญญาณลอจิกหรือขอบสัญญาณ วิธีการเหล่านี้มีสองประเภท

อินเตอร์รัปต์ระดับทริกเกอร์

ในประเภทนี้โมดูลอินพุตจะเรียกใช้การขัดจังหวะหากระดับการบริการของสิ่งนี้ถูกยืนยัน หากยังคงยืนยันแหล่งที่มาของการขัดจังหวะเมื่อเฟิร์มแวร์อินเตอร์รัปต์แฮนเลอร์จัดการกับมันโมดูลนี้จะสร้างใหม่และทริกเกอร์ตัวจัดการเพื่อเรียกใช้อีกครั้ง อินพุตที่ทริกเกอร์ระดับจะไม่ดีหากยังคงยืนยันเป็นระยะเวลานานขึ้น

การขัดจังหวะที่ทริกเกอร์ขอบ

โมดูลอินเทอร์รัปต์อินเทอร์รัปต์ที่ทริกเกอร์ด้วยขอบจะเรียกใช้อินเทอร์รัปต์ทันทีที่ระบุขอบที่ยืนยัน - ขอบล้มหรือขอบที่เพิ่มขึ้น ขอบจะสังเกตเห็นเมื่อระดับของแหล่งที่มาเปลี่ยนไป การกระตุ้นประเภทนี้จำเป็นต้องดำเนินการทันทีโดยไม่คำนึงถึงกิจกรรมของแหล่งที่มา

ระดับขอบทริกเกอร์

ระดับขอบทริกเกอร์

การติดตั้งระบบ

การขัดจังหวะจะถูกนำไปใช้กับฮาร์ดแวร์เป็นส่วนประกอบที่แตกต่างกันพร้อมกับสายควบคุมหรือ แบบบูรณาการ เป็น หน่วยความจำ ระบบย่อย เมื่อนำไปใช้งานในฮาร์ดแวร์จำเป็นต้องมี Programmable Interrupt Controller (PCI) เพื่อเชื่อมต่อระหว่างพินอินพุตของ CPU และอุปกรณ์ขัดจังหวะ PCI มัลติเพล็กซ์แหล่งที่มาของการขัดจังหวะต่างๆไปยังสาย CPU เดี่ยวหรือคู่ เมื่อนำไปใช้กับคอนโทรลเลอร์หน่วยความจำสล็อตแอดเดรสหน่วยความจำของระบบจะถูกแมปโดยตรงกับอินเทอร์รัปต์

คำขอขัดจังหวะที่ใช้ร่วมกัน (IRQs)

ด้วยการขัดจังหวะการทริกเกอร์ด้วยขอบการดึงขึ้นหรือดึงลง ตัวต้านทาน ใช้ในการขับเคลื่อนเส้นขัดจังหวะ เส้นนี้ส่งทุกพัลส์ที่ผลิตโดยอุปกรณ์แต่ละชิ้น หากพัลส์ขัดจังหวะที่สร้างขึ้นจากอุปกรณ์ต่าง ๆ เกิดขึ้นในเวลาใกล้เคียงกัน CPU จะต้องเรียกใช้ขอบต่อท้ายของพัลส์เพื่อไม่ให้พลาดการขัดจังหวะหลังจากนั้น CPU จะตรวจสอบอุปกรณ์ทุกชิ้นเพื่อขอบริการ เมนบอร์ดสถาปัตยกรรมมาตรฐานอุตสาหกรรม (ISA) ที่ทำงานได้ดีพร้อมตัวต้านทานแบบดึงขึ้นที่มีสาย IRQ ร่วมกันจะต้องทำงานได้ดี อย่างไรก็ตามอุปกรณ์หลายเครื่องที่ใช้สาย IRQ ร่วมกันในระบบรุ่นเก่าที่มีอินเทอร์เฟซการเขียนโปรแกรมที่ออกแบบมาไม่ดีทำให้การขัดจังหวะการขัดจังหวะทำได้ยาก ในทางกลับกันสถาปัตยกรรมระบบใหม่เช่น PCI ช่วยบรรเทาปัญหานี้ได้มาก

ไฮบริด

การใช้ระบบประเภทไฮบริดมีการรวมกันของการส่งสัญญาณทั้งแบบ edge-triggered และ level-triggered ฮาร์ดแวร์จะต้องมองหาขอบและตรวจสอบด้วยว่าสัญญาณทำงานในช่วงเวลาหนึ่งหรือไม่ โดยทั่วไปจะใช้ประเภทไฮบริดสำหรับอินพุตอินเทอร์รัปต์ (NMI) แบบไม่ปิดบังซึ่งทำให้มั่นใจได้ว่าการขัดจังหวะที่ผิดพลาดจะไม่ส่งผลกระทบต่อระบบ

ข้อความ - ส่งสัญญาณ

คำขอขัดจังหวะข้อความสำหรับบริการโดยใช้สัญญาณอุปกรณ์โดยการส่งข้อความผ่านไฟล์ การสื่อสาร ช่องเช่นคอมพิวเตอร์ รถบัส . สิ่งเหล่านี้ไม่ใช้เส้นขัดจังหวะทางกายภาพ PCI Express ทำหน้าที่เป็นบัสอนุกรมและใช้เป็นสัญญาณขัดจังหวะข้อความเท่านั้น

ออด

การขัดจังหวะออดมักใช้เป็นกลไกของระบบซอฟต์แวร์เพื่อส่งสัญญาณให้ฮาร์ดแวร์คอมพิวเตอร์ทำงานให้เสร็จสมบูรณ์ ตามข้อตกลงร่วมกันระหว่างฮาร์ดแวร์และซอฟต์แวร์ซอฟต์แวร์จะวางข้อมูลในตำแหน่งหน่วยความจำที่รู้จักกันดีและกดกริ่งประตูเพื่อแจ้งฮาร์ดแวร์ว่าข้อมูลพร้อมและรอประมวลผล ตอนนี้อุปกรณ์ฮาร์ดแวร์ของคอมพิวเตอร์เข้าใจว่าข้อมูลถูกต้องและประมวลผลตามนั้น

Multiprocessor IPI

ระบบมัลติโปรเซสเซอร์คำร้องขออินเตอร์รัปต์จากโปรเซสเซอร์ถูกส่งไปยังโปรเซสเซอร์อื่นผ่านอินเตอร์รัปต์อินเตอร์โพรเซสเซอร์ (IPI)

การใช้งาน / การใช้งานทั่วไป

สิ่งเหล่านี้เป็นอินพุตที่มีประสิทธิภาพโดยทั่วไปใช้

  • บริการตัวจับเวลาฮาร์ดแวร์จัดการจังหวะแป้นพิมพ์และการทำงานของเมาส์
  • ตอบสนองอย่างรวดเร็วต่อเหตุการณ์ตามเวลาหรือเรียลไทม์
  • การถ่ายโอนข้อมูลเข้าและออกจากอุปกรณ์ต่อพ่วง
  • ตอบสนองต่องานที่มีลำดับความสำคัญสูงเช่นสัญญาณปิดเครื่องกับดักและตัวจับเวลาเฝ้าระวัง
  • บ่งชี้เหตุการณ์ที่ผิดปกติของ CPU
  • การขัดจังหวะการปิดเครื่องมองเห็นการสูญเสียพลังงานทำให้สามารถปิดไฟล์ ระบบ
  • การขัดจังหวะเป็นระยะเพื่อติดตามเวลาที่แน่นอน

คำถามที่พบบ่อย

1). เหตุใดจึงใช้อินเทอร์รัปต์

สิ่งเหล่านี้ใช้เพื่อดึงดูดความสนใจของ CPU เพื่อดำเนินการบริการที่ร้องขอโดยฮาร์ดแวร์หรือซอฟต์แวร์

2). NMI คืออะไร?

NMI คืออินเทอร์รัปต์ที่ไม่สามารถปิดบังได้ซึ่งโปรเซสเซอร์ไม่สามารถเพิกเฉยหรือปิดใช้งานได้

3). ฟังก์ชั่นของบรรทัดรับทราบการขัดจังหวะคืออะไร?

โปรเซสเซอร์จะส่งสัญญาณไปยังอุปกรณ์ที่ระบุว่าพร้อมรับการขัดจังหวะ

4). อธิบายการขัดจังหวะของฮาร์ดแวร์ ยกตัวอย่าง

สร้างขึ้นโดยอุปกรณ์หรือฮาร์ดแวร์ภายนอกเช่นแป้นคีย์บอร์ดหรือการเคลื่อนไหวของเมาส์ทำให้เกิดการขัดจังหวะของฮาร์ดแวร์

5). อธิบายการขัดจังหวะซอฟต์แวร์

กำหนดเป็นคำสั่งพิเศษที่เรียกใช้การขัดจังหวะเช่นการเรียกรูทีนย่อย การขัดจังหวะของซอฟต์แวร์สามารถถูกกระตุ้นโดยไม่คาดคิดเนื่องจากข้อผิดพลาดในการเรียกใช้โปรแกรม

6). การขัดจังหวะใดมีลำดับความสำคัญสูงสุด

  • ขอบและระดับที่ไม่สามารถปกปิดได้ถูกทริกเกอร์
  • TRAP มีลำดับความสำคัญสูงสุด

7). ใช้การขัดจังหวะบางอย่าง

  • ตอบสนองอย่างรวดเร็วต่อเหตุการณ์ตามเวลาหรือเรียลไทม์
  • การถ่ายโอนข้อมูลเข้าและออกจากอุปกรณ์ต่อพ่วง
  • ตอบสนองต่องานที่มีลำดับความสำคัญสูงเช่นสัญญาณปิดเครื่องกับดักและตัวจับเวลาเฝ้าระวัง
  • บ่งชี้เหตุการณ์ที่ผิดปกติของ CPU

8). การใช้งานระบบแบบไฮบริดคืออะไร?

การใช้งานระบบประเภทไฮบริดมีการรวมกันของการส่งสัญญาณทั้งแบบ edge-triggered และ level-triggered ฮาร์ดแวร์จะต้องมองหาขอบและตรวจสอบด้วยว่าสัญญาณทำงานในช่วงเวลาหนึ่งหรือไม่

ในบทความนี้เราได้เข้าใจถึงความสำคัญของ ขัดจังหวะ และวิธีใช้สิ่งเหล่านี้เพื่อดำเนินการบริการที่ร้องขอ เรายังได้กล่าวถึงประเภทการติดตั้งระบบและการใช้งาน