งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

บทที่ 7 Deadlock Your company slogan.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "บทที่ 7 Deadlock Your company slogan."— ใบสำเนางานนำเสนอ:

1 บทที่ 7 Deadlock Your company slogan

2 Deadlock ระบบคอมพิวเตอร์โดยทั่วไปประกอบด้วยทรัพยากร หรือรีซอร์ส ( resource)จำนวนมากที่สามารถถูกเรียกใช้งานโดยโปรเซสเซอร์ (Proceses) หนึ่ง ณ เวลาใดเวลาหนึ่งเท่านั้น ทรัพยากรเหล่านี้จะไม่สามารถให้ไมโครโปรเซสเซอร์มากกว่า 1 ไมโครโปรเซสมาใช้พร้อมๆ กัน ดังนั้นปฏิบัติการที่ดีจะต้องมีความสามรถที่จะหยุดการทำงานโปรเซสใดๆ เป็นการชั่วคราว ถ้าโปรเซสนั้นพยายามเรียกใช้งานอยู่ และทำให้เกิดข้อผิดพลาดดังกล่าว โปรแกรม หรือแอปพลิเคชันโดยทั่วไปเมื่อทำงาน จะเปิดโปรเซสขึ้นมากมาย โปรเซสเหล่านั้นส่วนใหญ่ต้องการใช้ทรัพยากรมากกว่า 1 แต่หากโปรเซสมีการร้องขอการใช้ทรัพยากรเพื่อใช้งานพร้อมๆกัน ณ จุดนี้เองที่โปรเซสจะถูกปฏิเสธให้ทำงานและหยุดเพื่อรอใช้ทรัพยากรของอีกฝ่ายหนึ่ง โดยไม่มีวันที่จะได้ทรัพยากรของอีกฝ่ายเลย ซึ่งเหตุการณ์นี้เรียกว่า วงจรอับ หรือ deadlock

3 Deadlock คืออะไร “กลุ่มของโปรเซสที่ถูกปฏิเสธไม่ให้ทำงาน (blocking) อันมีผลเนื่องมาจาก การแย่งชิงการใช้ทรัพยากรหรือ การสื่อสาร โดยที่โปรเซสในกลุ่มต่างรอคอยสัญญาณการทำงานที่เกิดขึ้นโดยเฉพาะจากโปรเซสภายในกลุ่มนี้เท่านั้น” เนื่องจากโปรเซสต้องรอสัญญาณการทำงาน และไม่มีโปรเซสใดสามารถส่งสัญญาณการทำงานให้กับโปรเซสอื่น ภายในกลุ่มได้ ซึ่งจะส่งผลทั้งหมดต้องรอคอยอย่างไม่มีสิ้นสุด โดยในนิยามนี้ สมมุติว่า ไม่มีการอินเตอร์รัพต์ (interrupt) ขึ้นในระบบเพื่อที่จะเรียกใช้โปรเซสที่อยู่ในกลุ่มนี้ขึ้นมาใช้งานได้ ในกรณีที่เกิดขึ้นโดยทั่วไปนั้น สัญญาณแต่ละโปรเซสจะรอคอยก็คือ สัญญาณการปล่อยทรัพยากร ที่ถูกใช้งานโดยโปรเซสภายในกลุ่มใช้งานอยู่ (โดยทรัพยากรนั้นเป็นได้ทั้งฮาร์ดแวร์และซอร์ฟแวร์)หรือถ้าอาจจะกล่าวในอีกทัศนะหนึ่งก็คือสมาชิก ของแต่ละโปรเซสในวงจรอับต่างรอคอยทรัพยากรที่ถูกใช้งานโดยโปรเซสที่อยู่ในวงจรอับนั้นเอง ไม่มีโปรเซสใดสมารถทำงานได้ถูกเรียกออกมาจากกลุ่มได้

4 เงื่อนไขการเกิด Deadlock
ทรัพยากรเป็นแบบใช้ร่วมกันไม่ได้ (Mutual Exclusion) มีเพียงหนึ่งโปรเซสเท่านั้นที่จะใช้ทรัพยากรได้ อีกโปรเซสต้องรอ ถือครองแล้วรอคอย (Hold and Wait) โปรเซสตัวหนึ่งใช้ทรัพยากรอยู่ โดยที่กำลังรอคอยทรัพยากรอีกตัวหนึ่ง ซึ่งทรัพยากรตัวนี้ก็ถูกครอบครองโดยอีกโปรเซสหนึ่ง ไม่มีการแทรกกลางคัน (No Preemption) ทรัพยากรจะถูกคืนเมื่อโปรเซสต้องการคืน หากไม่คืน OS ทำอะไรไม่ได้ รอคอยเป็นวงกลม (Circular Wait) เป็นการรอคอยแบบงูกินหาง

5 เงื่อนไขการใช้ทรัพยากรของโปรเซส
โปรเซสทุกโปรเซสจะต้องดำเนินการตามเงื่อนไขนี้ ร้องขอ (Request) จะรอจนกว่าได้รับทรัพยากรนั้น ใช้งาน (Use) ใช้งานจนเสร็จ คืนทรัพยากร (Release) ใช้เสร็จแล้วก็คืนกลับสู่ระบบ ปัญหา deadlock เกิดจาก ร้องขอตลอดกาล ใช้งานแล้วไม่คืน

6 การป้องกันการเกิดวงจรอับ(deadlock)
การใช้ทรัพยากรร่วมกันได้ (Mutual exclusion prevention)เช่นการเข้าถึงแฟ้มข้อมูลยอมให้ทุกโปรเซสเข้าใช้งานโดยอ่านได้อย่างเดียวและยอมให้มีการเขียนกระบวนการเดียวเท่านั้น การป้องกันการถือครองและการรอคอย ( Hold and wait prevention)โดยกำหนดให้แต่ละโปรเซสต้องร้องขอทรัพยากรทั้งหมด และจะอนุญาตเมื่อได้ทรัพยากรครบ ยอมให้มีการแทรกกลางคัน (Premptable) ระบบจะไม่ยอมให้โปรเซสร้องขอทรัพยากรจนกว่าจะปลดปล่อยทรัพยากรของตัวเอง การป้องกันการเกิดวงจรรอคอย (Circular wait protection) โดยการกำหนดลำดับของทรัพยากรทั้งหมดในระบบ ซึ่งโปรเซสจะร้องขอได้เฉพาะทรัพยากรที่อยู่ในลำดับสูงกว่าเท่านั้น

7 การแก้ไขวงจรอับ (Recovery from Deadlock)
ระบบอาจจัดการได้ 2 วิธี คือ รายงานให้ผู้ควบคุมเครื่องทราบว่า ขณะนี้เกิดวงจรอับขึ้นในระบบแล้ว ให้ผู้ควบคุมจัดการแก้ไขวงจรอับเอง ระบบแก้ไขวงจรอับเองโดยอัตโนมัติ มี 2 วิธี คือ ยกเลิกการบวนการที่ติดอยู่ในวงจรอับบางกระบวนการเพื่อที่จะตัดวงจรอับ อนุญาตให้มีการแทรกกลางคันทรัพยากรบางส่วนที่ติดอยู่ในวงจรอับได้ เพื่อให้ระบบกลับคืนสู่สภาวะปกติ

8 กราฟการจัดสรรพทรัพยากร (Resource Allocation Graph)
              เมื่อกระบวนการ P₁ ร้องขอทรัพยากรประเภท R₁ เราก็จะเขียนเส้นร้องขอลงในกราฟ การจัดสรรพทรัพยากร และเมื่อการร้องขอนั้นได้รับอนุมัติจากระบบ เส้นร้องขอก็จะถูกแปลง ไปเป็นเส้นถือครองแทน และหลังจากที่กระบวนการปล่อยทรัพยากรคืนสู่ระบบแล้ว เส้นถือครองก็จะถูกลบออกไปจากกราฟเช่นกัน กราฟการจัดสรรพทรัพยากรในรูปข้างต้น แสดงสถานะของระบบได้ ดังนี้ เซต P = { P₁, P₂, P₃ } เซต R = { R₁, R₂, R₃, R₄ } เซต E = { P₁ à R₁, P₂ à R₃, R₁ à P₂, R₂ à P₂, R₂ à P₁, R₃ àP₃ }


ดาวน์โหลด ppt บทที่ 7 Deadlock Your company slogan.

งานนำเสนอที่คล้ายกัน


Ads by Google