อธิบายความหมายและหน้าที่ของ PCB . สั้นๆ

เพื่อให้แต่ละโปรแกรมมีส่วนร่วมในการดำเนินการพร้อมกัน รวมถึงข้อมูลสามารถทำงานได้อย่างอิสระ โครงสร้างข้อมูลพิเศษจะต้องได้รับการกำหนดค่าสำหรับมันในระบบปฏิบัติการที่เรียกว่าบล็อกควบคุมกระบวนการ (PCB, บล็อกการควบคุมกระบวนการ) มีการโต้ตอบแบบหนึ่งต่อหนึ่งระหว่างกระบวนการและ PCB และกระบวนการผู้ใช้ไม่สามารถแก้ไขได้

ipcb

บทบาทของบล็อกควบคุมกระบวนการ PCB:

เพื่อความสะดวกในการอธิบายระบบและการจัดการการทำงานของกระบวนการ โครงสร้างข้อมูลถูกกำหนดโดยเฉพาะสำหรับแต่ละกระบวนการในแกนหลักของ OS-Process Control Block PCB (Process Control Block) ในฐานะที่เป็นส่วนหนึ่งของเอนทิตีกระบวนการ PCB จะบันทึกข้อมูลทั้งหมดที่จำเป็นสำหรับระบบปฏิบัติการเพื่ออธิบายสถานการณ์ปัจจุบันของกระบวนการและจัดการการดำเนินการของกระบวนการ เป็นโครงสร้างข้อมูลที่บันทึกไว้ที่สำคัญที่สุดในระบบปฏิบัติการ บทบาทของ PCB คือการทำให้โปรแกรม (รวมถึงข้อมูล) ที่ไม่สามารถทำงานอย่างอิสระในสภาพแวดล้อมแบบหลายโปรแกรม กลายเป็นหน่วยพื้นฐานที่สามารถทำงานได้อย่างอิสระ เป็นกระบวนการที่สามารถดำเนินการพร้อมกันกับกระบวนการอื่นๆ

(2) PCB สามารถรับรู้โหมดการทำงานไม่ต่อเนื่อง ในสภาพแวดล้อมแบบหลายโปรแกรม โปรแกรมจะทำงานในโหมดการทำงานแบบหยุดและหยุดชั่วคราว เมื่อกระบวนการถูกระงับเนื่องจากการบล็อก จะต้องเก็บข้อมูลไซต์ CPU เมื่อทำงาน หลังจากได้รับ PCB แล้ว ระบบสามารถบันทึกข้อมูลไซต์ CPU ใน PCB ของกระบวนการที่ถูกขัดจังหวะเพื่อใช้เมื่อไซต์ CPU ถูกกู้คืนเมื่อกระบวนการถูกกำหนดให้ดำเนินการอีกครั้ง ดังนั้นจึงสามารถระบุได้ชัดเจนอีกครั้งว่าในสภาพแวดล้อมแบบหลายโปรแกรม ในฐานะโปรแกรมแบบสแตติกในความหมายดั้งเดิม เนื่องจากโปรแกรมดังกล่าวไม่มีวิธีการป้องกันหรือบันทึกไซต์ปฏิบัติการของตนเอง จึงไม่สามารถรับประกันความสามารถในการทำซ้ำของผลการปฏิบัติงานได้ ซึ่งทำให้สูญเสียการทำงานไป ความสำคัญ

(3) PCB ให้ข้อมูลที่จำเป็นสำหรับการจัดการกระบวนการ เมื่อตัวจัดกำหนดการกำหนดเวลาให้กระบวนการทำงาน จะสามารถค้นหาโปรแกรมและข้อมูลที่เกี่ยวข้องตามตัวชี้ที่อยู่เริ่มต้นของโปรแกรมและข้อมูลที่บันทึกไว้ใน PCB ของกระบวนการในหน่วยความจำหรือที่จัดเก็บข้อมูลภายนอกเท่านั้น ระหว่างขั้นตอนการรันเมื่อไฟล์จำเป็นต้องเข้าถึง เมื่อไฟล์หรืออุปกรณ์ I/O ในระบบยังต้องพึ่งพาข้อมูลใน PCB นอกจากนี้ ตามรายการทรัพยากรใน PCB ทรัพยากรทั้งหมดที่จำเป็นสำหรับกระบวนการสามารถเรียนรู้ได้ จะเห็นได้ว่าตลอดวงจรชีวิตทั้งหมดของกระบวนการ ระบบปฏิบัติการจะควบคุมและจัดการกระบวนการตาม PCB เสมอ

(4) PCB ให้ข้อมูลที่จำเป็นสำหรับการจัดตารางกระบวนการ เฉพาะกระบวนการที่อยู่ในสถานะพร้อมเท่านั้นที่สามารถจัดกำหนดการสำหรับการดำเนินการได้ และ PCB จะให้ข้อมูลเกี่ยวกับสถานะที่กระบวนการอยู่ในนั้น หากกระบวนการอยู่ในสถานะพร้อมใช้ ระบบจะแทรกกระบวนการนั้นลงในคิวพร้อมของกระบวนการและรอให้ตัวจัดกำหนดการกำหนดเวลา ; นอกจากนี้ จำเป็นต้องทราบข้อมูลอื่น ๆ เกี่ยวกับกระบวนการเมื่อจัดตารางเวลาบ่อยครั้ง ตัวอย่างเช่น ในอัลกอริธึมการจัดลำดับความสำคัญ คุณจำเป็นต้องรู้กระบวนการ Priority ในอัลกอริธึมการจัดตารางเวลาที่ยุติธรรมกว่าบางประเภท คุณต้องทราบเวลารอของกระบวนการและเหตุการณ์ที่ดำเนินการด้วย

(5) PCB ตระหนักถึงการซิงโครไนซ์และการสื่อสารกับกระบวนการอื่น ๆ กลไกการซิงโครไนซ์กระบวนการถูกใช้เพื่อให้ทราบถึงการทำงานที่ประสานกันของกระบวนการต่างๆ เมื่อมีการใช้กลไกสัญญาณเสียง จะต้องมีการตั้งค่าสัญญาณที่สอดคล้องกันสำหรับการซิงโครไนซ์ในแต่ละกระบวนการ PCB ยังมีพื้นที่หรือตัวชี้คิวการสื่อสารสำหรับกระบวนการสื่อสาร

ข้อมูลในบล็อกควบคุมกระบวนการ:

ในบล็อกควบคุมกระบวนการ ส่วนใหญ่จะประกอบด้วยข้อมูลต่อไปนี้:

(1) ตัวระบุกระบวนการ: ตัวระบุกระบวนการใช้เพื่อระบุกระบวนการโดยเฉพาะ กระบวนการมักจะมีตัวระบุสองประเภท: ①ตัวระบุภายนอก เพื่ออำนวยความสะดวกให้กับกระบวนการของผู้ใช้ในการเข้าถึงกระบวนการ ต้องตั้งค่าตัวระบุภายนอกสำหรับแต่ละกระบวนการ จัดทำโดยผู้สร้างและมักประกอบด้วยตัวอักษรและตัวเลข เพื่ออธิบายความสัมพันธ์ทางครอบครัวของกระบวนการ ควรตั้งค่า ID กระบวนการหลักและ ID กระบวนการย่อยด้วย นอกจากนี้ ยังสามารถตั้งค่า ID ผู้ใช้เพื่อระบุผู้ใช้ที่เป็นเจ้าของกระบวนการได้ ②ตัวระบุภายใน เพื่ออำนวยความสะดวกในการใช้กระบวนการโดยระบบ ตัวระบุภายในถูกตั้งค่าสำหรับกระบวนการใน OS กล่าวคือ แต่ละกระบวนการจะได้รับตัวระบุดิจิทัลที่ไม่ซ้ำกัน ซึ่งมักจะเป็นหมายเลขซีเรียลของกระบวนการ

(2) สถานะของโปรเซสเซอร์: ข้อมูลสถานะของโปรเซสเซอร์เรียกอีกอย่างว่าบริบทของโปรเซสเซอร์ ซึ่งส่วนใหญ่ประกอบด้วยเนื้อหาของรีจิสเตอร์ต่างๆ ของโปรเซสเซอร์ การลงทะเบียนเหล่านี้รวมถึง: ①การลงทะเบียนเอนกประสงค์หรือที่เรียกว่าการลงทะเบียนที่ผู้ใช้มองเห็นได้ซึ่งสามารถเข้าถึงได้โดยโปรแกรมผู้ใช้และใช้เพื่อเก็บข้อมูลชั่วคราว ในโปรเซสเซอร์ส่วนใหญ่ มีรีจิสเตอร์เอนกประสงค์ 8 ถึง 32 รายการ ในคอมพิวเตอร์ที่มีโครงสร้าง RISC สามารถมีได้มากกว่า 100; ②Instruction counter ซึ่งเก็บที่อยู่ของคำสั่งถัดไปที่จะเข้าถึง; ③Program status word PSW ซึ่งประกอบด้วยข้อมูลสถานะ เช่น รหัสเงื่อนไข โหมดการดำเนินการ แฟล็กมาสก์ขัดจังหวะ ฯลฯ ; ④ตัวชี้สแต็กผู้ใช้ หมายความว่าแต่ละโปรเซสของผู้ใช้มีหนึ่งหรือหลายสแต็กของระบบที่เกี่ยวข้องกัน ซึ่งใช้ในการจัดเก็บพารามิเตอร์กระบวนการและการโทรของระบบและที่อยู่การเรียก ตัวชี้สแต็กชี้ไปที่ด้านบนของสแต็ก เมื่อโปรเซสเซอร์อยู่ในสถานะดำเนินการ ข้อมูลส่วนใหญ่ที่กำลังประมวลผลจะถูกวางไว้ในการลงทะเบียน เมื่อกระบวนการถูกเปลี่ยน ข้อมูลสถานะของโปรเซสเซอร์จะต้องถูกบันทึกไว้ใน PCB ที่สอดคล้องกัน เพื่อให้การดำเนินการสามารถดำเนินการต่อจากจุดพักเมื่อกระบวนการถูกดำเนินการอีกครั้ง

(3) ข้อมูลการจัดกำหนดการกระบวนการ: เมื่อระบบปฏิบัติการมีการจัดกำหนดการ จำเป็นต้องเข้าใจสถานะของกระบวนการและข้อมูลเกี่ยวกับการจัดกำหนดการกระบวนการ ข้อมูลเหล่านี้รวมถึง: ① สถานะกระบวนการ ซึ่งระบุสถานะปัจจุบันของกระบวนการ ซึ่งใช้เป็นพื้นฐานสำหรับการจัดกำหนดการกระบวนการและการแลกเปลี่ยน ②ลำดับความสำคัญของกระบวนการเป็นจำนวนเต็มที่ใช้อธิบายระดับความสำคัญของกระบวนการโดยใช้ตัวประมวลผล กระบวนการที่มีลำดับความสำคัญสูงกว่าควรได้รับโปรเซสเซอร์ก่อน ③ ข้อมูลอื่นๆ ที่จำเป็นสำหรับการจัดกำหนดการกระบวนการ ซึ่งเกี่ยวข้องกับอัลกอริธึมการจัดกำหนดการกระบวนการที่ใช้ ตัวอย่างเช่น ผลรวมของเวลาที่กระบวนการรอ CPU ผลรวมของเวลาที่ดำเนินการกระบวนการ เป็นต้น ④เหตุการณ์หมายถึงเหตุการณ์ที่รอให้กระบวนการเปลี่ยนจากสถานะการดำเนินการเป็นสถานะการบล็อกนั่นคือสาเหตุของการบล็อก

(4) ข้อมูลการควบคุมกระบวนการ: หมายถึงข้อมูลที่จำเป็นสำหรับการควบคุมกระบวนการ ซึ่งรวมถึง: ①ที่อยู่ของโปรแกรมและข้อมูล หน่วยความจำหรือที่อยู่หน่วยความจำภายนอกของโปรแกรมและข้อมูลในเอนทิตีกระบวนการ เพื่อให้สามารถกำหนดเวลาได้ ดำเนินการเมื่อดำเนินการตามกระบวนการ , โปรแกรมและข้อมูลสามารถพบได้จาก PCB; ②กระบวนการซิงโครไนซ์และกลไกการสื่อสารซึ่งเป็นกลไกที่จำเป็นสำหรับการซิงโครไนซ์และการสื่อสารกระบวนการ เช่น ตัวชี้คิวข้อความ สัญญาณ ฯลฯ อาจถูกวางไว้ใน PCB ทั้งหมดหรือบางส่วน ③รายการทรัพยากร ซึ่งมีรายการทรัพยากรทั้งหมด (ยกเว้น CPU) ที่จำเป็นสำหรับกระบวนการระหว่างการดำเนินการ และยังมีรายการทรัพยากรที่จัดสรรให้กับกระบวนการอีกด้วย ④ตัวชี้ลิงค์ซึ่งให้กระบวนการ ( PCB) ที่อยู่แรกของ PCB ของกระบวนการถัดไปในคิว