บทที่ 6 การจัดการอุปกรณ์รับและแสดงผล
หน้าที่ของระบบปฏิบัติการเกี่ยวกับการจัดการอุปกรณ์
หน้าที่หลักของระบบปฏิบัติการในการดูแลอุปกรณ์ต่างๆ ในระบบคอมพิวเตอร์ มีดังนี้ตรวจ
สอบสถานการณ์ทำงานของอุปกรณ์ และเก็บข้อมูลที่สำคัญต่างๆ ของอุปกรณ์นั้นเพื่อเป็นข้อมูล
ในการจัดการอุปกรณ์กำหนดว่าอุปกรณ์ชิ้นใดใครเป็นผู้ใช้ และใช้นานเท่าใดโดยที่ระบบปฏิบัติการ
จะให้ใครใช้อุปกรณ์มีเทคนิคการจัดการอุปกรณ์อยู่ 3 ประเภท คือ
ประเภทอุปกรณ์
ในมุมมองของวิศวกรจะมองอุปกรณ์ในรูปแบบ ของชิพ สายไฟมอเตอร์และองค์ประกอบอื่นๆ
ที่ประกอบรวมกันเป็นอุปกรณ์ในขณะที่โปรแกรมเมอร์มองในลักษณะการเชื่อมโยงการติดต่อกับ
อุปกรณ์ และการใช้งานโดยโปรแกรม รวมถึงคำสั่งที่ใช้ในการสั่งการอุปกรณ์นั้น
จำแนกอุปกรณ์ออกเป็น 2 ประเภท คือ
อุปกรณ์ที่มีการทำงานกับข้อมูลคราวละบล็อก
อุปกรณ์ที่มีการทำงานกับข้อมูลคราวละอักขระ
ตัวขับอุปกรณ์
เนื่องจากอุปกรณ์แต่ละชนิดมีหน้าที่และลักษณะการทำงานที่แตกต่างกัน ดังนั้นการติดต่อการ
ใช้งานตลอดจนการควบคุมการทำงานของตัวอุปกรณ์จึงมีลักษณะและวิธีที่แตกต่างกันออกไป
ระบบปฏิบัติการจะต้องรู้ลักษณะการทำงานของอุปกรณ์ทุกประเภทเพื่อจะสามารถควบคุมการทำงาน
ของอุปกรณ์แต่ละประเภทได้ถูกต้อง
การเข้าถึงหน่วยความจำโดยตรง
การเข้าถึงหน่วยความจำโดยตรง ( Direct Memory Access / DMA ) เมื่อมีการส่งข้อมูลให้กับ
อุปกรณ์ต่างๆข้อมูลนั้นจะถูกเก็บไว้ในหน่วยความจำจากนั้นซีพียูจะอ่านข้อมูลนั้นจากหน่วยความจำ
เพื่อส่งไปให้อุปกรณ์ที่กำหนดในทางกลับกันเมื่ออุปกรณ์ต้องการส่งข้อมูลให้โพรเซสข้อมูลจะส่งผ่าน
ซีพียูไป ยังหน่วยความจำ
การติดตาย
ในระบบคอมพิวเตอร์มีทรัพยากรต่างๆ เชื่อมโยงอยู่มากมาย แต่เวลาหนึ่งอุปกรณ์แต่ละอย่าง
จะถูกใช้งานจากโพรเซสเพียงโพรเซสเดียวเท่านั้นนอกจากนี้จะพบว่าการใช้คอมพิวเตอร์เพื่อการ
ทำงานด้านต่างๆ จะมีความเกี่ยวข้องกับข้องกับทรัพยากรมากกว่า 1อย่างการติดตายสามรถเกิดขึ้น
ได้จากเหตุการณ์หลายเหตุการณ์ นอกเหนือจากการร้องขอใช้อุปกรณ์
ทรัพยากรกับการติดตาย
ปัญหาการติดตายจะเกิดขึ้นเมื่อโพรเซสไม่ได้ รับการอนุญาตให้เข้าถึงทรัพยากร
ดังนั้นการจัดการและการใช้งานทรัพยากรจึงเป็นปัจจัยสำคัญในการศึกษาสาเหตุและวิธี
การป้องกันปัญหาการติดตาย โดยในที่นี้ทรัพยากรหมายถึงส่งที่ได้้รับอนุญาตให้ใช้งานได้
โดยทรัพยากรนี้อาจจะเป็นฮาร์ดแวร์หรือซอฟต์แวร์ก็ได้ เช่น ดิสก์ หรือข้อมูล เป็นต้น
ประเภทของทรัพยากร
ทรัพยากรสามารถแบ่งออกเป็น 2 กลุ่ม คือ
ทรัพยากรที่สามารถแบ่งปันกันใช้งานไดกับทรัพยากรที่ไม่สามารถแบ่งปันกันใช้งานได้้้โดยที่
ทรัพยากรที่สามารถแบ่งปัน กันใช้งานนั้นจะสามารถถูกปลดปล่อยโดยโพรเซสใดโพรเซสหนึ่ง
เพื่อให้โพรเซสอื่นๆเข้าครองเพื่อใช้งานได้โดยไม่ก่อให้เกิดผลกระทบกับการทำงานของโพร
เซสเดิม
สาเหตุของการติดตาย
การบังคับไม่ให้โพรเซสเข้าใช้ทรัพยากรทำให้โพรเซสอื่นๆไม่สามารถเข้าใช้ทรัพยากรในขณะที่
ทรัพยากรนั้นถูกครอบครอง โดยโพรเซสการครองทรัพยากรค้างไว้ในขณะการที่ไม่สามารถปลดปล่อย
ทรัพยากรที่ครองอยู่ได้ เนื่องจากการก่อให้เกิดความเสียหายต่องานที่กำลังทำอยู่การคอยทรัพยากร
ซึ่งกันและกันในลักษณะงูกินหาง การที่จะเกิดการติดตายขึ้นจะต้องเกิดเหตุการณ์ทั้ง 4 อย่าที่ได้กล่าว
มาพร้อมกันหากเหตุการณ์ใดเหตุการณ์หนึ่งไม่เกิดขึ้น การติดตายก็ไม่เกิดขึ้นเช่นเดียวกันการติดตาย
เป็นปัญหาในการทำงานของระบบหลายโปรแกรม เนื่องจากทำให้ระบบไม่สามารถทำงานต่อไปได้
แต่อย่างไรก็ตามการติดตายจะเกิดกับทรัพยากรบางประเภทเท่านั้น