Please enable JavaScript.
Coggle requires JavaScript to display documents.
บทที่ 2
การจัดการโพรเซส - Coggle Diagram
บทที่ 2
การจัดการโพรเซส
ข้อมูลการประมวลผล
โพรเซส เป็นการทำงานของคำสั่งหรือกลุ่มคำสั่งของโปรแกรม
อาจมีการสลับการทำงานระหว่างโพรเซสในระบบ
จึงต้องมีการบันทึกรายละเอียดของโพรเซสแต่ละโพรเซส
จึงใช้โครงสร้างข้อมูลที่เรียกว่า
Process Control Block (PCB) หรืออาจเรียกว่า
Task Control Block
-
แนวคิดเรื่องโพรเซส
ระบบคอมพิวเตอร์ในยุคแรก จะมีการทำงานเป็นแบบโมโนโปรแกรมมิ่ง
คือ ในช่วงเวลาใดเวลาหนึ่งจะมีเพียงแค่โพรเซสเดียวที่ทำงานได้
ระบบไม่สามารถใช้ทรัพยากรได้อย่างเต็มประสิทธิภาพ
ต่อมา มีการพัฒนาระบบให้สามารถทำงานได้หลายงานพร้อมกัน
โดยมีการแบ่งงานหรือโปรแกรมออกเป็นส่วนย่อยๆ และทำงานแตกต่างกัน
เรียกส่วนย่อยๆนั้นว่า กระบวนการ หรือ โพรเซส(Process)
โพรเซส หมายถึงโปรแกรมที่อยู่ระหว่างการทำงาน ในระบบ
คอมพิวเตอร์อาจจะมีโพรเซสมากกว่าหนึ่งโพรเซส และแต่ละโพรเซส
จะมีการทำงานต่างกัน ซึ่งในการทำานจะต้องใช้ทรัพยากรต่างๆของ
ระบบ ระบบปฏิบัติการ จะเข้ามาช่วยในการจัดการทรัพยากรของ
ระบบที่มีอยู่อย่างจำกัดให้แก่โพรเซส
หน้าที่ของระบบปฏิบัติการ คือการจัดการโพรเซส ตั้งแต่การสร้าง
การจัดลำดับการใช้ซีพียูของแต่ละโพรเซส ปละการทำงายโพรเซส
การจัดตารางของโพรเซส
การจัดตารางแถวคอย (Scheduling Queue)
เมื่อโพรเซสเข้าสู่ระบบจะถูกจัดให้อยู่ในแถวคอย (Job queue)เมื่อโพรเซสเข้าสู่หน่วย
ความจำแล้วจะถูกเก็บในแถวพร้อม (Ready queue) โพรเซสนี้จะอยู่ในหน่วย
ความจำหลัก และพร้อมที่จะทำงาน โพรเซสจะรอจนกว่าจะถูกเลือกให้เป็นผู้ใช้CPU
-
การสลับการทำงานของซีพียู (Context Switch)
หมายถึง การที่ซีพียูจะสลับไปประมวลผลโพรเซสอื่น
โดยจะทำการบันทึกสถานะของโพรเซสปัจจุบันเอาไว้
จากนั้นจะเรียกสถานะโพรเซสที่ถูกบันทึกไว้
กลับขึ้นมาประมวลผลอีกครั้ง
-
คุณสมบัติของโพรเซส
โพรเซสแต่ละตัวจะถูกกำหนดความสำคัญขึ้น (Priority)
โพรเซสที่มีความสำคัญมาก
ระบบก็จะให้สิทธิพิเศษมากกว่าโพรเซสที่สำคัญน้อย
-
การดำเนินการของโพรเซส
ในระบบแฏิบัติการ มีโพรเซสมากมายที่สามารถทำงาน
ได้พร้อมกัน และ มีการสร้างหรือทำลายโพรเซสเป็นปกติอยู่เสมอ
ลำดับชั้นของโพรเซส (Process hierarchy)
1.เมื่อผู้ใช้ส่งงานให้ระบบเพื่อทำงาน ระบบจะทำการสร้างโพรเซสเพื่อทำงานนั้น
2.โพรเซสที่ถูกสร้างขึ้นสามารถสร้างโพรเซสย่อยได้
3.โพรเซสที่ให้กำเนิดเรียกว่า โพรเซสแม่ (Parent process)
4.โพรเซสย่อยที่เกิดขึ้นเรียกว่า โพรเซสลูก (Child process)
- โดยทั่วไป เมื่อโพรเซสแม่จบลง โพรเซสอื่นๆภายใต้ตัวมันจะจบลงด้วย
6.ระบบปฏิบัติการบางตัวยอมให้โพรเซสแม่จบแต่โพรเซสลูกไม่จบ
การสร้างโพรเซส (Process Creation)
โพรเซสใดๆ สามารถสร้างโพรเซสใหม่ได้ด้วยการเรียกใช้คำสั่งระบบ (System command)
โพรเซสที่ถูกสร้างเรียกว่า โพรเซสลูก สามารถร้องขอทรัพยากรจากระบบปฏิบัติการ
หรือถูกจำกัดให้ใช้ได้เฉพาะทรัพยากรของโพรเซสแม่เท่านั้น
การสิ้นสุดของโพรเซส (Process Termination)
การทำลายโพรเซส โพรเซสจะสิ้นสุดลงเมื่อสิ้นสุดการทำงานในคำสั่งสุดท้าย
และแจ้งให้ระบบปฏิบัติการลบมันออกไปโดยใช้ System call ที่ชื่อ Exit
หรือยกเลิกโพรเซสเมื่อทำงานเสร็จสิ้น