Page 70 - สถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการ
P. 70

11-60 สถาปัตยกรรม​คอมพิวเตอร์แ​ ละร​ ะบบป​ ฏิบัติก​ าร

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

       ตวั อยา่ งท​ ่ี 1 สมมติ​ระบบ​คอมพิวเตอร์​ระบบ​หนึ่ง​มี 3 โพรเ​ซส​คือ P0 P1 และ P2 มี​เครื่อง​ขับ​เทปแ​ ม่​เหล็ก​
จำ�นวน 12 เครื่อง โดย​โพรเซส P0 P1 และ P2 มีค​ วามต​ ้องการ​ใช้เ​ครื่อง​ขับเ​ทป​แม่​เหล็กท​ ั้งหมด (maximum need)
และเ​ครื่องข​ ับเ​ทป​แม่​เหล็กป​ ัจจุบัน​ที่​ต้องการ (current need) ณ เวลา T0 วินาที ดังต​ ารางต​ ่อไ​ป​นี้

โพรเซส  ความต้องการเคร่ืองขบั เทปแม่เหลก็ ทั้งหมด       เครอ่ื งขับเทปแมเ่ หล็กท่ีตอ้ งการในปัจจบุ นั
  P0                    10                                              5
  P1                    4                                               2
  P2                    9                                               7

       ณ เวลา T0 วินาที สมมติ​ว่า​ระบบ​ได้​จัดสรร​ให้​โพร​เซส​ทั้ง​สาม​ได้​ครอบ​ครอง​เครื่อง​ขับ​เทป​แม่​เหล็ก​จำ�นวน​
9 เครื่อง ดังน​ ั้น​มีเ​ครื่องข​ ับ​เทปแ​ ม่​เหล็ก​ว่าง​จำ�นวน 3 เครื่อง​ที่​ไม่ม​ ีโ​พรเ​ซสใ​ดค​ รอบค​ รอง ทำ�ให้​โพรเซส P1, P2 และ
P3 อยู่​ในส​ ถานะ​ปลอดภัย เพราะร​ ะบบป​ ฏิบัติก​ าร​สามารถ​จัดสรร​ทรัพยากรท​ ี่​เหลือใ​ห้แ​ ก่โ​พรเซส P1 ได้ท​ ันทีเ​พราะ P1
ต้องการเ​ครื่อง​ขับ​เทป​แม่​เหล็ก​เพียง 2 เครื่อง​ทำ�ให้ P1 สามารถท​ ำ�งานไ​ด้​จนเ​สร็จแ​ ละ​คืนท​ รัพยากรท​ ั้งหมดแ​ ก่​ระบบ
ทำ�ให้ร​ ะบบม​ ีเ​ครื่อง​ขับ​แม่เ​หล็ก​ที่ย​ ังไ​ม่ไ​ด้ค​ รอบค​ รองโ​ดยโ​พรเ​ซส​ใดเ​พิ่มข​ ึ้นเ​ป็น 5 เครื่อง ระบบ​สามารถจ​ ัดสรรเ​ครื่อง​
ขับเ​ทปแ​ ม่เ​หล็ก​จำ�นวน 5 เครื่องใ​ห้​แก่​โพรเซส P0 ได้ ดังน​ ั้น เ​มื่อ​โพรเซส P0 ทำ�งานเ​สร็จ​และค​ ืนเ​ครื่อง​ขับเ​ทป​แม่เ​หล็ก​
ทั้งหมดใ​ห้ร​ ะบบ ดังน​ ั้น โพรเซส P2 ซึ่งต​ ้องการ​เครื่อง​ขับ​เทปอ​ ีก 7 เครื่อง สามารถท​ ำ�งาน​จน​เสร็จ​สมบูรณ์ไ​ด้เช่นก​ ัน

       แต่​ถ้า​ระบบ​ปฏิบัติ​การ​ตัดสิน​ใจ​ผิด​พลาด​ใน​การ​อนุญาต​ให้​โพร​เซส​ที่​ไม่​เหมาะ​สม​ได้​ครอบ​ครอง​ทรัพยากร​
จะ​ส่ง​ผล​ให้​ระบบ​อยู่​ใน​สถานะ​ไม่​ปลอดภัย​ทำ�ให้​เกิด​การ​ติด​ตาย​ได้ เช่น สมมติ​ว่า ณ เวลา T1 โพรเซส P2 ร้องขอ​
เครอื่ งข​ บั เ​ทปแ​ มเ​่ หลก็ เ​พมิ่ ข​ นึ้ อ​ กี 1เครอื่ ง จากเ​ดมิ 5เครอื่ งก​ ลายเ​ปน็ 6เครอื่ งแ​ ละถ​ า้ ร​ ะบบอ​ นญ​ุ าตตามค​ �ำ รอ้ งข​ อ จะส​ ง่ ผ​ ล​
ใ​ห้ร​ ะบบ​กลาย​เป็น​สถานะ​ไม่ป​ ลอดภัยท​ ันที เพร​ าะ ณ เวลา T1 มี​เครื่องข​ ับ​เทป​แม่​เหล็กว​ ่าง​เพียง 4 เครื่อง​เท่านั้น

       จาก​แนวคิด​ของ​สถานะ​ปลอดภัย​นี้ ระบบ​สา​มา​รถ​สร้าง​อัล​กอ​ริ​ทึม​หลีก​เลี่ยง​วงจร​ลูกโซ่ เพื่อ​ประกัน​ว่า​จะ​ไม่​
เกิดก​ ารต​ ิดต​ ายเ​กิดข​ ึ้นใ​นร​ ะบบ โดย​เมื่อใ​ดก​ ็ตามท​ ี่โ​พรเ​ซ​ส​ร้องขอท​ รัพยากรเ​พิ่ม​และ​ทรัพยากรย​ ัง​มีว​ ่าง​พอ ระบบ​ต้อง​
ตัดสินใ​จว​ ่าจ​ ะใ​หท้​ รัพยากรต​ ามท​ ีร่​ ้องขอห​ รือไ​ม่ โดยพ​ ิจารณาจ​ ากก​ ารร​ ้องขอข​ องโ​พรเ​ซส​ แ​ ล้วร​ ะบบต​ ้องค​ งอ​ ยูใ่​นส​ ถานะ​
ปลอดภัย อัล​กอร​ ิท​ ึม​นี้​อาจท​ ำ�ให้​การใ​ช้​ทรัพยากร​ของ​ระบบ​มีป​ ระสิทธิผลต​ ํ่าก​ ว่าท​ ี่ค​ วร​จะ​เป็น เนื่องจากโพรเ​ซ​สย​ ัง​คง​
ต้องร​ อถ​ ึงแ​ ม้ว่า​จะม​ ี​ทรัพยากรว​ ่าง​อยู่ก​ ็ตาม
   65   66   67   68   69   70   71   72   73   74   75