เหตุผลในการย้ายจากสถานะเตรียมพร้อมไปสู่สถานะรอดำเนินการ


0

ในอิมเมจต่อไปนี้กระบวนการที่กำลังทำงานสามารถถูกย้ายเข้าสู่สถานะรอสำหรับI / Oหรือการรอเหตุการณ์

แผนภาพสถานะ

เกี่ยวกับคำขอ I / O ไม่มีปัญหาฉันเข้าใจเหตุผลของการทำเช่นนั้น อย่างไรก็ตามเกี่ยวกับเหตุการณ์ฉันมีข้อสงสัย ฉันพยายามคิดว่า "เหตุการณ์" เหล่านี้เป็นอย่างไรและนี่คือสิ่งที่ฉันคิด:

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

ฉันถูกไหม? เหตุการณ์อื่นอาจเป็นอย่างไร


ฉันคิดว่าพวกเขาหมายถึงเหตุการณ์ IRQ เช่นเดียวกับวิธีที่ CPU จะหยุดเธรดในขณะที่การร้องขอ async DMA สำหรับ IO ถูกเติมเต็มการขัดจังหวะจะทำให้ CPU หยุดการทำงานของเธรดใด ๆ ที่กำลังทำงานอยู่และประมวลผลการขัดจังหวะ การมัลติเธรดโปรแกรมและการซิงโครไนซ์มีการประสานงานอย่างชัดเจนในเลเยอร์ที่สูงกว่า DMA มากดังนั้นตัวกำหนดตารางเวลาระดับต่ำจะไม่รับผิดชอบโดยตรงในการรักษาสถานะของเธรดที่กำลังทำงานอยู่ การอ้างอิงถึง DMA และขัดจังหวะทำให้ฉันชัดเจนว่าพวกเขากำลังพูดถึงคำขอขัดจังหวะ สัญญาณที่สมบูรณ์ DMA เป็นสัญญาณขัดจังหวะ
Frank Thomas

ยิ่งฉันมองมันมากแค่พูดถึง DMA เท่านั้น เมื่อเธรดร้องขอข้อมูลจากที่จัดเก็บข้อมูลภายนอกผ่าน DMA เธรดจะหยุดชั่วคราวในขณะที่ IO เกิดขึ้น เมื่อกระบวนการอะซิงโครนัสนั้นเสร็จสมบูรณ์อินเทอร์รัปต์จะถูกยกขึ้นเพื่อบอก CPU ว่าข้อมูลเธรดพร้อมแล้วตัวจัดตารางเวลาสามารถนำเธรดกลับมาอยู่ในคิวสำหรับการประมวลผลที่ตามมา (เช่นจาก Waiting (บน DMA) พร้อม (ที่จะทำงานเมื่อตัวกำหนดตารางเวลามาถึง) ไปยังการทำงาน) ทันทีที่ข้อมูลพร้อมใช้งาน
Frank Thomas

ขอบคุณสำหรับความคิดเห็นของคุณภาพนี้มาจากหนังสือแนวคิดระบบปฏิบัติการที่ฉันใช้สำหรับการสอบที่มหาวิทยาลัย รูปภาพนี้ใช้เพื่ออธิบายว่าการกระจัดระหว่างสถานะของกระบวนการต่างกันอย่างไร ในความคิดของฉันมันไม่ได้พูดถึง DMA เพียงอย่างเดียวเนื่องจาก IRQ และดังนั้นการขัดจังหวะในไดอะแกรมจึงถูกรายงานว่าทำให้กระบวนการที่ทำงานอยู่ในสภาพพร้อมใช้งาน
Luigi Cerone

มันเป็นหนังสือที่ไม่สามารถอธิบายคำศัพท์ที่ใช้ ...
DavidPostill

ว่า"ภาพ"ที่เรียกว่าแผนภาพสถานะ มันขึ้นอยู่กับระบบปฏิบัติการเพื่อกำหนดว่าเหตุการณ์ใดจะบล็อกกระบวนการที่กำลังทำงานอยู่ การดำเนินการสำหรับการยกเว้นซึ่งกันและกันนั้นแตกต่างกันไปตามระบบปฏิบัติการ
ขี้เลื่อย
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.