การจัดการกระบวนการในระบบปฏิบัติการ: PCB ใน Operaระบบ ting
กระบวนการคืออะไร?
กระบวนการ คือการดำเนินการของโปรแกรมที่ดำเนินการตามที่ระบุในโปรแกรมนั้น สามารถกำหนดเป็นหน่วยการดำเนินการที่โปรแกรมรันได้ ระบบปฏิบัติการช่วยให้คุณสร้าง กำหนดเวลา และยุติกระบวนการที่ CPU ใช้ กระบวนการที่สร้างโดยกระบวนการหลักเรียกว่ากระบวนการลูก
การทำงานของกระบวนการสามารถควบคุมได้ง่ายด้วยความช่วยเหลือของ PCB (Process Control Block) คุณสามารถพิจารณาว่า PCB เป็นเหมือนสมองของกระบวนการซึ่งประกอบด้วยข้อมูลสำคัญทั้งหมดที่เกี่ยวข้องกับการประมวลผล เช่น รหัสกระบวนการ ลำดับความสำคัญ สถานะ รีจิสเตอร์ CPU เป็นต้น
การจัดการกระบวนการคืออะไร?
การจัดการกระบวนการเกี่ยวข้องกับงานต่างๆ เช่น การสร้าง การกำหนดเวลา การยกเลิกกระบวนการ และ ล็อคที่ตายแล้วProcess คือโปรแกรมที่อยู่ระหว่างการดำเนินการ ซึ่งเป็นส่วนสำคัญของระบบปฏิบัติการในปัจจุบัน ระบบปฏิบัติการจะต้องจัดสรรทรัพยากรที่ช่วยให้กระบวนการต่างๆ สามารถแบ่งปันและแลกเปลี่ยนข้อมูลกันได้ นอกจากนี้ยังปกป้องทรัพยากรของแต่ละกระบวนการจากวิธีการอื่นๆ และอนุญาตให้มีการซิงโครไนซ์ระหว่างกระบวนการ
ระบบปฏิบัติการมีหน้าที่จัดการกระบวนการทำงานทั้งหมดของระบบ โดยจัดการการทำงานต่างๆ เช่น การกำหนดตารางกระบวนการและการจัดสรรทรัพยากร
กระบวนการ Archiเทคเจอร์
นี่ก็อัน Archiแผนภาพเทคเจอร์ของกระบวนการ
- สแต็ค: สแต็กจัดเก็บข้อมูลชั่วคราว เช่น พารามิเตอร์ฟังก์ชัน ที่อยู่ที่ส่งคืน และตัวแปรในเครื่อง
- กอง จัดสรรหน่วยความจำซึ่งอาจถูกประมวลผลในระหว่างรันไทม์
- วันที่: มันมีตัวแปร
- ข้อความ:
ส่วนข้อความประกอบด้วยกิจกรรมปัจจุบันซึ่งแสดงด้วยค่าของตัวนับโปรแกรม
บล็อกควบคุมกระบวนการ
PCB ย่อมาจาก Process Control Block เป็นโครงสร้างข้อมูลที่ดูแลโดย Operaระบบ Ting สำหรับทุกกระบวนการ PCB ควรระบุด้วยรหัสกระบวนการจำนวนเต็ม (PID) ช่วยให้คุณจัดเก็บข้อมูลทั้งหมดที่จำเป็นในการติดตามกระบวนการที่กำลังทำงานอยู่ทั้งหมด
นอกจากนี้ยังรับผิดชอบในการจัดเก็บเนื้อหาของการลงทะเบียนตัวประมวลผลด้วย สิ่งเหล่านี้จะถูกบันทึกไว้เมื่อกระบวนการย้ายจากสถานะกำลังทำงานอยู่ จากนั้นจึงกลับสู่สถานะเดิม ข้อมูลจะได้รับการอัปเดตอย่างรวดเร็วใน PCB โดยระบบปฏิบัติการทันทีที่กระบวนการทำให้เกิดการเปลี่ยนแปลงสถานะ
สถานะกระบวนการ
สถานะของกระบวนการคือเงื่อนไขของกระบวนการในช่วงเวลาหนึ่งๆ นอกจากนี้ยังกำหนดตำแหน่งปัจจุบันของกระบวนการด้วย
กระบวนการส่วนใหญ่มี 7 ขั้นตอน ได้แก่
- ใหม่: กระบวนการใหม่จะถูกสร้างขึ้นเมื่อโปรแกรมเฉพาะเรียกจากหน่วยความจำรอง/ ฮาร์ดดิสก์ไปยังหน่วยความจำหลัก/ RAM
- พร้อม: ในสถานะพร้อม ควรโหลดกระบวนการลงในหน่วยความจำหลัก ซึ่งพร้อมสำหรับการดำเนินการ
- กำลังรอ: กระบวนการกำลังรอการจัดสรรเวลา CPU และทรัพยากรอื่น ๆ เพื่อดำเนินการ
- กำลังดำเนินการ: กระบวนการนี้เป็นสถานะการดำเนินการ
- ถูกบล็อค: เป็นช่วงเวลาที่กระบวนการกำลังรอให้เหตุการณ์ เช่น การดำเนินการ I/O เสร็จสมบูรณ์
- ระงับ: สถานะที่ถูกระงับจะกำหนดเวลาที่กระบวนการพร้อมสำหรับการดำเนินการ แต่ OS ไม่ได้วางไว้ในคิวที่พร้อม
- สิ้นสุด: สถานะสิ้นสุดระบุเวลาที่กระบวนการถูกยกเลิก
หลังจากเสร็จสิ้นทุกขั้นตอน รีซอร์สทั้งหมดจะถูกใช้โดยกระบวนการ และหน่วยความจำจะว่าง
บล็อกควบคุมกระบวนการ (PCB)
กระบวนการทุกกระบวนการจะแสดงอยู่ในระบบปฏิบัติการโดยบล็อกควบคุมกระบวนการ ซึ่งเรียกอีกอย่างหนึ่งว่าบล็อกควบคุมงาน
นี่คือส่วนประกอบที่สำคัญของ PCB
- สถานะกระบวนการ: กระบวนการอาจเป็นกระบวนการใหม่ พร้อม กำลังทำงาน กำลังรอ ฯลฯ
- ตัวนับโปรแกรม: ตัวนับโปรแกรมช่วยให้คุณทราบที่อยู่ของคำสั่งถัดไป ซึ่งควรจะดำเนินการสำหรับกระบวนการนั้น
- การลงทะเบียนซีพียู: ส่วนประกอบนี้ประกอบด้วยตัวสะสม ดัชนีและรีจิสเตอร์ทั่วไป และข้อมูลรหัสเงื่อนไข
- ข้อมูลการตั้งเวลา CPU: ส่วนประกอบนี้ประกอบด้วยลำดับความสำคัญของกระบวนการ ตัวชี้สำหรับการจัดกำหนดการคิว และพารามิเตอร์การจัดกำหนดการอื่น ๆ มากมาย
- ข้อมูลการบัญชีและธุรกิจ: รวมถึงจำนวน CPU และเวลาของยูทิลิตี้ เช่น เวลาจริงที่ใช้ หมายเลขงานหรือกระบวนการ เป็นต้น
- ข้อมูลการจัดการหน่วยความจำ: ข้อมูลนี้รวมถึงค่าของรีจิสเตอร์ฐานและลิมิต ตารางเพจหรือเซกเมนต์ ทั้งนี้ขึ้นอยู่กับระบบหน่วยความจำที่ใช้โดยระบบปฏิบัติการ
- ข้อมูลสถานะ I/O: บล็อกนี้ประกอบด้วยรายการไฟล์ที่เปิดอยู่ รายการอุปกรณ์ I/O ที่ได้รับการจัดสรรให้กับกระบวนการ ฯลฯ
สรุป
- กระบวนการถูกกำหนดให้เป็นการทำงานของโปรแกรมที่ดำเนินการตามที่ระบุไว้ในโปรแกรมนั้น
- การจัดการกระบวนการเกี่ยวข้องกับงานต่างๆ เช่น การสร้าง การจัดกำหนดการ การยกเลิกกระบวนการ และการล็อคแบบตายตัว
- องค์ประกอบสำคัญของสถาปัตยกรรมกระบวนการ ได้แก่ 1) สแต็ก 2) ฮีป 3) ข้อมูล และ 4) ข้อความ
- PCB เป็นรูปแบบหนึ่งของ Process Control Block เป็นโครงสร้างข้อมูลที่ดูแลโดย Operaระบบ Ting สำหรับทุกกระบวนการ
- สถานะของกระบวนการคือเงื่อนไขของกระบวนการในช่วงเวลาหนึ่งๆ
- กระบวนการทุกกระบวนการจะแสดงอยู่ในระบบปฏิบัติการโดยบล็อกควบคุมกระบวนการ ซึ่งเรียกอีกอย่างหนึ่งว่าบล็อกควบคุมงาน