ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
ภาวะติดตาย (Deadlock)
2
Deadlock คืออะไร สภาวะที่โปรเซสบางตัวหรือทุกตัว ไม่สามารถทำงานต่อไปได้
ส่วนใหญ่เกิดจากการใช้ทรัพยากรร่วมกัน แล้วมีการแย่งทรัพยากรกัน ทรัพยากรในระบบ เวลาของ CPU (CPU time) Address Space File I/O
3
เงื่อนไขการใช้ทรัพยากรของโปรเซส
ทุกๆโปรเซสจะต้องดำเนินการตามเงื่อนไขนี้ 1. ร้องขอ (Request) จะรอจนกว่าได้รับทรัพยากรนั้น 2. ใช้งาน (Use) ใช้งานจนเสร็จ 3. คืนทรัพยากร (Release) ใช้เสร็จแล้วก็คืนกลับสู่ระบบ ปัญหาเกิดตรงไหน ร้องขอตลอดกาล ใช้งานแล้วไม่คืน
4
เงื่อนไขการเกิด Deadlock
ทรัพยากรเป็นแบบใช้ร่วมกันไม่ได้ (Mutual Exclusion) 1 โปรเซสเท่านั้นที่จะใช้ทรัพยากรได้ อีกโปรเซสต้องรอ ถือครองแล้วรอคอย (Hold and Wait) โปรเซสตัวหนึ่งใช้ทรัพยากรอยู่ โดยที่กำลังรอคอยทรัพยากรอีกตัวหนึ่ง ซึ่งทรัพยากรตัวนี้ก็ถูกครอบครองโดยอีกโปรเซสหนึ่ง ไม่มีการแทรกกลางคัน (No Preemption) ทรัพยากรจะถูกคืนเมื่อโปรเซสต้องการคืน หากไม่คืน OS ทำอะไรไม่ได้ รอคอยเป็นวงกลม เป็นการรอคอยแบบงูกินหาง
5
ตัวอย่าง - วงกลม แทนโปรเซส
- สี่เหลี่ยม แทนทรัพยากรแต่ละประเภท และจะใช้ จุดแทนทรัพยากรแต่ละ Instance - ลูกศร แทนการใช้ทรัพยากร P1 P2 R1 ถูกใช้โดย P1 R2 รอคอย R3 ถูกใช้โดย P2 R3
6
สรุป การเกิด Deadlock จะทำให้ระบบเสียเสถียรภาพไป
ระบบควรจะมีการตรวจสอบ (Monitor) อยู่อย่างสม่ำเสมอ ทางที่ดีก็ควรป้องกันไว้ก่อน (Preventive Maintenance)
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.