Please enable JavaScript.
Coggle requires JavaScript to display documents.
การจัดการโปรเซส - Coggle Diagram
การจัดการโปรเซส
องค์ประกอบของโปรเซส
หมายเลขโปรเซส (Process id) ของโปรเซส ซึ่งต้องไม่ซ้ำกับโปรเซสอื่น
โค้ดโปรแกรม (Program code) เป็นคำสั่งที่สามารถเอ็กซีคิ้วได้ทันที (ภาษาเครื่อง)
ข้อมูล (Data) ที่โปรแกรมต้องการหรือจัดการ ข้อมูลนี้อาจเป็นของโปรเซสใดโปรเซส
บล็อกควบคุมโปรเซส (Process control block)
รีจิสเตอร์ (Register)
ตัวนับจำนวน (Program counter)
หมายเลขโปรเซส (Program id)
พอยเตอร์ (Pointer)
สถานะของโปรเซส (Process state)
ข้อมูลการจัดเวลาของซีพียู (CPU scheduling information)
ข้อมูลการจัดการหน่วยความจำ (Memory management information)
ข้อมูลแอ็กเคาต์ (Account information)
ข้อมูลสถานะอินพุต/เอาต์พุต (I/O status information)
PSW (program status words)
คุณสมบัติของโปรเซส
ลำดับความสำคัญ (Priority) ของโปรเซส
อำนาจหน้าที่ (authority)
คุณสมบัติอื่นๆ ที่ OS จะกำหนดให้มี
ข้อมูลต่างๆที่ปรากฏใน PCB
สถานะของกระบวนการ (Process state)
กระบวนการต่างๆที่กำลังทำงานอยู่ในระบบเดียวกันจะมีการเปลี่ยนแปลงสถานะของกระบวนการถึง5สถานะด้วยกันซึ่งสถานะดังกล่าวจะถูกกำหนดขึ้นโดยกิจกรรม ณ เวลาปัจจุบันที่กระบวนการนั้นๆกำลังกระทำอยู่โดยที่แต่ละกระบวนการจะตกอยู่ในสถานะใดสถานะหนึ่ง
ตัวชี้โปรแกรม (Program counter)
ใช้ตัวย่อว่า PC เป็นตัวชี้หรือควบคุมลำดับการทำงานตามคำสั่งในโปรแกรมปกติจะทำงานโดยนับ 0,1,2,3.. ตามลำดับ การนับดังกล่าวจะชี้ให้เห็นตำแหน่งที่อยู่ของข้อมูลในหน่วยความจำซึ่งจะมีการนำไบต์ถัดไปของข้อมูลออกมา
รีจิสเตอร์ของหน่วยประมวลผล (CPU registers)
3.Storage Register - เก็บข้อมูลที่โอนย้ายมาจากRAM
1.Instruction Register - เก็บส่วนของคำสั่งโปรแกรม
เป็นหน่วยความจำชั่วคราวความเร็วสูงที่ใช้ในการเก็บคำสั่งและข้อมูลสำหรับการประมวลผลภายในCPU
4.Accumulator - เก็บผลลัพธ์จากการประมวลผลชั่วคราว
2.Address Register - เก็บส่วนแอดเดรสของคำสั่งโปรแกรม
ชนิดของรีจิสเตอร์ใช้เก็บข้อมูลที่จะทำการประมวลผลในทันทีได้แก่
5.Accumulator (AC) เก็บ ผลลัพธ์จากการประมวลผลชั่วคราว
2.Instruction Register (IR) เก็บคำสั่งที่โหลดมาจากหน่วยความจำ(เก็บคำสั่งปัจจุบัน)
1.Program Counter (PC) ใช้เก็บตำแหน่งของคำสั่งถัดไป
4.Memory Buffer Register (MBR) เก็บข้อมูลที่จะอ่านหรือเขียนลงหน่วยความจำ
3.Memory Address Register (MAR) เก็บตำแหน่งข้อมูลที่จะอ่านเขียนหน่วยความจำ
สถานะของกระบวนการ (Process State)
1.New
เป็นสถานะของกระบวนการใหม่ที่กำลังถูกสร้างขึ้นหรือกระบวนการเลือกมาจากหน่วยความจำสำรอง(Disk)ซึ่งเป็นคำสั่งที่ผู้ใช้เรียกใช้ผ่าน Command Interpreterแปลเป็นคำสั่งไปเรียกระบบปฏิบัติการให้ดึงข้อมูลหรือโปรแกรมมาตามคำสั่งของผู้ใช้เพื่อเข้ามาประมวลผลในระบบ เมื่อคำสั่งต่างๆถูกเรียกเข้ามาคำสั่งเหล่านั้นจะมาเข้าแถวรอในแถวงาน(Job Queue) เตรียมเปลี่ยนสถานะเพื่อทำงาน
Ready
เป็นสถานะของกระบวนการที่เตรียมตัวเข้าไปใช้งานหน่วยประมวลผลกลางในสถานะนี้จะเปลี่ยนมาจาก New หรือ Waiting หรือ Running ก็ได้ กระบวนการที่มาจาก New, Waiting หรือ Running จะเข้าแถวคอยเพื่อเข้าไปใช้หน่วยประมวลผลกลางแถวคอยนี้เราเรียกว่า(Ready Queue)
Running
เป็นสถานะของกระบวนการที่ได้เข้าไปใช้งานหน่วยประมวลผลกลาง ณ เวลาใดเวลาหนึ่งจะมีเพียง 1 กระบวนการเท่านั้นที่อยู่ในสถานะนี้ของระบบ1ระบบ(มีเพียงกระบวนการเดียวเท่านั้นที่จะได้ใช้หน่วยประมวลผลกลางของแต่ละระบบ) เนื่องจากข้อจำกัดของประมวลผลกลางทำงานด้วยความเร็วสูงมาก จึงไม่มีปัญหาในเรื่องการรอ
4.Terminate
เป็นสถานะของกระบวนการที่ได้รับการประมวลผลเสร็จเรียบร้อยแล้วหรือกระบวนการ มีการทำงานที่ผิดปกติ เช่น มีการหารด้วยศูนย์ระบบจะหยุดการทำงานของกระบวนการนั้น แล้วแจ้งให้ทราบถึงข้อผิดพลาดที่เกิดขึ้น (Error)
Waiting
เป็นสถานะของกระบวนการที่ได้เข้าไปใช้หน่วยประมวลผลกลางแล้วและมีการเรียกใช้อุปกรณ์รับ - ส่งข้อมูลหรืออุปกรณ์ต่างๆซึ่งทรัพยากรเหล่านั้นยังไม่ว่างหรือมีกระบวนการอื่นใช้อยู่(เนื่องจาก CPU ทำงานเร็วกว่าอุปกรณ์รับส่งข้อมูลมาก)กระบวนการเล่านั้นจะเปลี่ยนจากRunningมารอในสถานะนี้อาจมีกระบวนการหลายกระบวนการรออยู่จึงมีการจัดคิวในการรอทรัพยากรต่างๆเรียกว่า Device Queue หรือ Waiting Queue