ອະທິບາຍໂດຍຫຍໍ້ກ່ຽວກັບຄວາມຫມາຍແລະຫນ້າທີ່ຂອງ PCB

ເພື່ອເຮັດໃຫ້ແຕ່ລະໂປລແກລມທີ່ເຂົ້າຮ່ວມໃນການປະຕິບັດພ້ອມໆກັນ, ລວມທັງຂໍ້ມູນສາມາດດໍາເນີນການເປັນເອກະລາດ, ໂຄງສ້າງຂໍ້ມູນພິເສດຕ້ອງໄດ້ຮັບການຕັ້ງຄ່າສໍາລັບມັນໃນລະບົບປະຕິບັດການ, ເອີ້ນວ່າຂະບວນການຄວບຄຸມຂະບວນການ (.PCB, ຂະບວນການຄວບຄຸມຕັນ). ມີການຕອບແບບຫນຶ່ງຕໍ່ຫນຶ່ງລະຫວ່າງຂະບວນການແລະ PCB, ແລະຂະບວນການຜູ້ໃຊ້ບໍ່ສາມາດແກ້ໄຂໄດ້.

ipcb

ບົດບາດຂອງຂະບວນການຄວບຄຸມ PCB:

ເພື່ອອໍານວຍຄວາມສະດວກໃນລາຍລະອຽດຂອງລະບົບແລະການຄຸ້ມຄອງການດໍາເນີນງານຂອງຂະບວນການ, ໂຄງສ້າງຂໍ້ມູນຖືກກໍານົດໂດຍສະເພາະສໍາລັບແຕ່ລະຂະບວນການໃນຫຼັກຂອງ OS-Process Control Block PCB (Process Control Block). ເປັນສ່ວນຫນຶ່ງຂອງຫນ່ວຍງານຂອງຂະບວນການ, PCB ບັນທຶກຂໍ້ມູນທັງຫມົດທີ່ຕ້ອງການໂດຍລະບົບປະຕິບັດການເພື່ອອະທິບາຍສະຖານະການໃນປະຈຸບັນຂອງຂະບວນການແລະການຄຸ້ມຄອງການດໍາເນີນງານຂອງຂະບວນການ. ມັນເປັນໂຄງສ້າງຂໍ້ມູນບັນທຶກທີ່ສໍາຄັນທີ່ສຸດໃນລະບົບປະຕິບັດການ. ບົດບາດຂອງ PCB ແມ່ນເພື່ອເຮັດໃຫ້ໂຄງການ (ລວມທັງຂໍ້ມູນ) ທີ່ບໍ່ສາມາດດໍາເນີນການເປັນເອກະລາດໃນສະພາບແວດລ້ອມຫຼາຍໂຄງການກາຍເປັນຫນ່ວຍງານພື້ນຖານທີ່ສາມາດດໍາເນີນການເປັນເອກະລາດ, ຂະບວນການທີ່ສາມາດດໍາເນີນການພ້ອມກັນກັບຂະບວນການອື່ນໆ.

(2​) PCB ສາ​ມາດ​ຮັບ​ຮູ້​ຮູບ​ແບບ​ການ​ດໍາ​ເນີນ​ງານ intermittent​. ໃນສະພາບແວດລ້ອມຫຼາຍໂຄງການ, ໂປລແກລມດໍາເນີນຢູ່ໃນໂຫມດການດໍາເນີນງານແບບບໍ່ຢຸດແລະໄປ. ເມື່ອຂະບວນການຖືກລະງັບເນື່ອງຈາກການບລັອກ, ມັນຕ້ອງຮັກສາຂໍ້ມູນເວັບໄຊທ໌ CPU ເມື່ອມັນກໍາລັງແລ່ນ. ຫຼັງຈາກມີ PCB, ລະບົບສາມາດບັນທຶກຂໍ້ມູນສະຖານທີ່ CPU ໃນ PCB ຂອງຂະບວນການຂັດຂວາງສໍາລັບການນໍາໃຊ້ໃນເວລາທີ່ສະຖານທີ່ CPU ໄດ້ຖືກຟື້ນຟູໃນເວລາທີ່ຂະບວນການໄດ້ຖືກກໍານົດສໍາລັບການປະຕິບັດອີກເທື່ອຫນຶ່ງ. ດັ່ງນັ້ນ, ມັນສາມາດເຫັນໄດ້ຊັດເຈນອີກເທື່ອຫນຶ່ງວ່າໃນສະພາບແວດລ້ອມຫຼາຍໂຄງການ, ເປັນໂຄງການຄົງທີ່ໃນຄວາມຫມາຍແບບດັ້ງເດີມ, ເພາະວ່າມັນບໍ່ມີວິທີການປົກປ້ອງຫຼືປະຫຍັດສະຖານທີ່ປະຕິບັດງານຂອງຕົນເອງ, ມັນບໍ່ສາມາດຮັບປະກັນການແຜ່ພັນຂອງຜົນໄດ້ຮັບການດໍາເນີນງານຂອງມັນ. , ດັ່ງນັ້ນການສູນເສຍການດໍາເນີນງານຂອງຕົນ. ຄວາມສໍາຄັນ.

(3) PCB ສະຫນອງຂໍ້ມູນທີ່ຈໍາເປັນສໍາລັບການຄຸ້ມຄອງຂະບວນການ. ເມື່ອຕົວກໍານົດເວລາກໍານົດຂະບວນການທີ່ຈະດໍາເນີນການ, ມັນພຽງແຕ່ສາມາດຊອກຫາໂຄງການທີ່ສອດຄ້ອງກັນແລະຂໍ້ມູນຕາມຕົວຊີ້ທີ່ຢູ່ເລີ່ມຕົ້ນຂອງໂຄງການແລະຂໍ້ມູນທີ່ບັນທຶກໄວ້ໃນ PCB ຂອງຂະບວນການໃນຫນ່ວຍຄວາມຈໍາຫຼືບ່ອນເກັບຂໍ້ມູນພາຍນອກ; ໃນ​ລະ​ຫວ່າງ​ການ​ຂະ​ບວນ​ການ​ຂອງ​ການ​ແລ່ນ​, ໃນ​ເວ​ລາ​ທີ່​ໄຟລ​໌​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ຮັບ​ການ​ເຂົ້າ​ເຖິງ​ເມື່ອ​ໄຟລ​໌​ຫຼື I/O ອຸ​ປະ​ກອນ​ໃນ​ລະ​ບົບ​, ພວກ​ເຂົາ​ເຈົ້າ​ຍັງ​ຈໍາ​ເປັນ​ຕ້ອງ​ອີງ​ໃສ່​ຂໍ້​ມູນ​ໃນ PCB ໄດ້​. ນອກຈາກນັ້ນ, ອີງຕາມບັນຊີລາຍຊື່ຊັບພະຍາກອນໃນ PCB, ຊັບພະຍາກອນທັງຫມົດທີ່ຕ້ອງການສໍາລັບຂະບວນການສາມາດຮຽນຮູ້ໄດ້. ມັນສາມາດເຫັນໄດ້ວ່າໃນລະຫວ່າງວົງຈອນຊີວິດທັງຫມົດຂອງຂະບວນການ, ລະບົບປະຕິບັດການສະເຫມີຄວບຄຸມແລະຈັດການຂະບວນການຕາມ PCB.

(4) PCB ສະຫນອງຂໍ້ມູນທີ່ຈໍາເປັນສໍາລັບການກໍານົດເວລາຂະບວນການ. ມີພຽງແຕ່ຂະບວນການໃນສະຖານະພ້ອມທີ່ຈະຖືກກໍານົດສໍາລັບການປະຕິບັດ, ແລະ PCB ໃຫ້ຂໍ້ມູນກ່ຽວກັບສະຖານະຂອງຂະບວນການຢູ່ໃນສະຖານະໃດ. ຖ້າຂະບວນການຢູ່ໃນສະຖານະກຽມພ້ອມ, ລະບົບຈະໃສ່ມັນເຂົ້າໄປໃນຄິວທີ່ກຽມພ້ອມຂອງຂະບວນການແລະລໍຖ້າຜູ້ກໍານົດເວລາກໍານົດເວລາ. ; ນອກຈາກນັ້ນ, ມັນມັກຈະຈໍາເປັນຕ້ອງຮູ້ຂໍ້ມູນອື່ນໆກ່ຽວກັບຂະບວນການໃນເວລາທີ່ກໍານົດເວລາ. ສໍາ​ລັບ​ຕົວ​ຢ່າງ​, ໃນ​ສູດ​ການ​ຈັດ​ຕາ​ຕະ​ລາງ​ບູ​ລິ​ມະ​ສິດ​, ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ຮູ້​ຈັກ​ຂະ​ບວນ​ການ​ບູ​ລິ​ມະ​ສິດ​. ໃນບາງສູດການກໍານົດເວລາທີ່ຍຸຕິທໍາ, ທ່ານຍັງຈໍາເປັນຕ້ອງຮູ້ເວລາລໍຖ້າຂອງຂະບວນການແລະເຫດການທີ່ຖືກປະຕິບັດ.

(5) PCB ຮັບຮູ້ synchronization ແລະການສື່ສານກັບຂະບວນການອື່ນໆ. ກົນໄກການ synchronization ຂະບວນການຖືກນໍາໃຊ້ເພື່ອຮັບຮູ້ການປະຕິບັດການປະສານງານຂອງຂະບວນການຕ່າງໆ. ເມື່ອກົນໄກ Semalt ໄດ້ຖືກຮັບຮອງເອົາ, ມັນຮຽກຮ້ອງໃຫ້ Semalt ທີ່ສອດຄ້ອງກັນສໍາລັບການ synchronization ຖືກກໍານົດໃນແຕ່ລະຂະບວນການ. PCB ຍັງມີພື້ນທີ່ຫຼືຕົວຊີ້ແຖວການສື່ສານສໍາລັບການສື່ສານຂະບວນການ.

ຂໍ້ມູນໃນຕົວຄວບຄຸມຂະບວນການ:

ໃນຕັນຄວບຄຸມຂະບວນການ, ມັນສ່ວນໃຫຍ່ແມ່ນປະກອບດ້ວຍຂໍ້ມູນດັ່ງຕໍ່ໄປນີ້:

(1) Process identifier: process identifier is used to uniquelyຊີ້ໃຫ້ເຫັນຂະບວນການ. ຂະບວນການໃດໜຶ່ງມັກຈະມີຕົວລະບຸສອງປະເພດ: ① ຕົວລະບຸພາຍນອກ. ເພື່ອອໍານວຍຄວາມສະດວກໃຫ້ຂະບວນການຜູ້ໃຊ້ເຂົ້າເຖິງຂະບວນການ, ຕົວກໍານົດພາຍນອກຕ້ອງຖືກກໍານົດໄວ້ສໍາລັບແຕ່ລະຂະບວນການ. ມັນສະຫນອງໃຫ້ໂດຍຜູ້ສ້າງແລະປົກກະຕິແລ້ວປະກອບດ້ວຍຕົວອັກສອນແລະຕົວເລກ. ເພື່ອອະທິບາຍຄວາມສຳພັນໃນຄອບຄົວຂອງຂະບວນການ, ຄວນຕັ້ງ ID ຂະບວນການຂອງພໍ່ແມ່ ແລະ ID ຂະບວນການເດັກນຳ. ນອກຈາກນັ້ນ, ID ຜູ້ໃຊ້ສາມາດຖືກກໍານົດເພື່ອຊີ້ບອກຜູ້ໃຊ້ທີ່ເປັນເຈົ້າຂອງຂະບວນການ. ②ຕົວລະບຸພາຍໃນ. ເພື່ອສ້າງຄວາມສະດວກໃນການນໍາໃຊ້ຂະບວນການໂດຍລະບົບ, ຕົວກໍານົດພາຍໃນແມ່ນຖືກກໍານົດໄວ້ສໍາລັບຂະບວນການໃນ OS, ນັ້ນແມ່ນ, ແຕ່ລະຂະບວນການແມ່ນໃຫ້ຕົວລະບຸດິຈິຕອນທີ່ເປັນເອກະລັກ, ເຊິ່ງປົກກະຕິແລ້ວແມ່ນເລກລໍາດັບຂອງຂະບວນການ.

(2) ສະຖານະຂອງໂປເຊດເຊີ: ຂໍ້ມູນສະຖານະຂອງໂປເຊດເຊີຍັງເອີ້ນວ່າສະພາບການຂອງໂປເຊດເຊີ, ເຊິ່ງສ່ວນໃຫຍ່ແມ່ນປະກອບດ້ວຍເນື້ອໃນຂອງທະບຽນຕ່າງໆຂອງໂປເຊດເຊີ. ທະບຽນເຫຼົ່ານີ້ລວມມີ: ①ການລົງທະບຽນຈຸດປະສົງທົ່ວໄປ, ເຊິ່ງເອີ້ນກັນວ່າ ທະບຽນທີ່ເຫັນໄດ້ຈາກຜູ້ໃຊ້, ເຊິ່ງສາມາດເຂົ້າເຖິງໄດ້ໂດຍໂຄງການຜູ້ໃຊ້ ແລະໃຊ້ເພື່ອເກັບຮັກສາຂໍ້ມູນຊົ່ວຄາວ. ໃນໂປເຊດເຊີສ່ວນໃຫຍ່, ມີ 8 ຫາ 32 ທະບຽນຈຸດປະສົງທົ່ວໄປ. ໃນຄອມພິວເຕີທີ່ມີໂຄງສ້າງ RISC ສາມາດມີຫຼາຍກ່ວາ 100; ② Instruction counter, ເຊິ່ງເກັບຮັກສາທີ່ຢູ່ຂອງຄໍາແນະນໍາຕໍ່ໄປທີ່ຈະເຂົ້າເຖິງ; ③​ຄໍາ​ສະ​ຖາ​ນະ​ພາບ​ຂອງ​ໂຄງ​ການ PSW​, ເຊິ່ງ​ປະ​ກອບ​ດ້ວຍ​ຂໍ້​ມູນ​ສະ​ຖາ​ນະ​ການ​, ເຊັ່ນ​: ລະ​ຫັດ​ສະ​ພາບ​, ຮູບ​ແບບ​ການ​ປະ​ຕິ​ບັດ​, ຂັດ​ຂວາງ​ທຸງ​ຫນ້າ​ກາກ​, ແລະ​ອື່ນໆ​; ④ ຕົວ​ຊີ້ stack ຂອງ​ຜູ້​ໃຊ້​, ມັນ​ຫມາຍ​ຄວາມ​ວ່າ​ແຕ່​ລະ​ຂະ​ບວນ​ການ​ຜູ້​ໃຊ້​ມີ​ຫນຶ່ງ​ຫຼື​ຫຼາຍ stacks ລະ​ບົບ​ທີ່​ກ່ຽວ​ຂ້ອງ​, ທີ່​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ​ເກັບ​ຮັກ​ສາ​ຂະ​ບວນ​ການ​ແລະ​ຕົວ​ກໍາ​ນົດ​ການ​ໂທ​ລະ​ບົບ​ແລະ​ທີ່​ຢູ່​ໂທ​. ຕົວຊີ້ stack ຊີ້ໄປເທິງຂອງ stack ໄດ້. ເມື່ອໂປເຊດເຊີຢູ່ໃນສະຖານະການປະຕິບັດ, ຂໍ້ມູນສ່ວນໃຫຍ່ທີ່ຖືກປຸງແຕ່ງແມ່ນຖືກຈັດໃສ່ໃນທະບຽນ. ເມື່ອຂະບວນການຖືກປ່ຽນ, ຂໍ້ມູນສະຖານະຂອງໂປເຊດເຊີຕ້ອງຖືກບັນທຶກໄວ້ໃນ PCB ທີ່ສອດຄ້ອງກັນ, ດັ່ງນັ້ນການປະຕິບັດສາມາດສືບຕໍ່ຈາກຈຸດຢຸດໃນເວລາທີ່ຂະບວນການຖືກປະຕິບັດຄືນໃຫມ່.

(3) ຂໍ້ມູນການກໍານົດເວລາຂອງຂະບວນການ: ເມື່ອ OS ກໍາລັງກໍານົດເວລາ, ມັນຈໍາເປັນຕ້ອງເຂົ້າໃຈສະຖານະຂອງຂະບວນການແລະຂໍ້ມູນກ່ຽວກັບການກໍານົດເວລາຂອງຂະບວນການ. ຂໍ້ມູນເຫຼົ່ານີ້ລວມມີ: ① ສະຖານະຂອງຂະບວນການ, ຊີ້ບອກສະຖານະປັດຈຸບັນຂອງຂະບວນການ, ເຊິ່ງຖືກນໍາໃຊ້ເປັນພື້ນຖານສໍາລັບການກໍານົດເວລາຂອງຂະບວນການແລະການແລກປ່ຽນ ②ບູລິມະສິດຂອງຂະບວນການແມ່ນຈໍານວນເຕັມທີ່ໃຊ້ເພື່ອອະທິບາຍລະດັບຄວາມສໍາຄັນຂອງຂະບວນການໂດຍໃຊ້ໂປເຊດເຊີ. ຂະບວນການທີ່ມີບູລິມະສິດສູງກວ່າຄວນໄດ້ຮັບໂປເຊດເຊີກ່ອນ; ③​ຂໍ້​ມູນ​ອື່ນໆ​ທີ່​ຈໍາ​ເປັນ​ສໍາ​ລັບ​ການ​ກໍາ​ນົດ​ເວ​ລາ​ຂະ​ບວນ​ການ​, ທີ່​ກ່ຽວ​ຂ້ອງ​ກັບ​ວິ​ທີ​ການ​ກໍາ​ນົດ​ເວ​ລາ​ຂະ​ບວນ​ການ​ນໍາ​ໃຊ້​ຕົວ​ຢ່າງ​, ຜົນ​ລວມ​ຂອງ​ເວ​ລາ​ທີ່​ຂະ​ບວນ​ການ​ໄດ້​ລໍ​ຖ້າ CPU​, ຜົນ​ລວມ​ຂອງ​ເວ​ລາ​ທີ່​ຂະ​ບວນ​ການ​ໄດ້​ຮັບ​ການ​ປະ​ຕິ​ບັດ​, ແລະ​ອື່ນໆ​; ④Event ຫມາຍເຖິງເຫດການທີ່ລໍຖ້າຂະບວນການປ່ຽນຈາກສະຖານະການປະຕິບັດໄປສູ່ສະຖານະຂັດຂວາງ, ນັ້ນແມ່ນ, ສາເຫດຂອງການຂັດຂວາງ.

(4) ຂໍ້ມູນການຄວບຄຸມຂະບວນການ: ຫມາຍເຖິງຂໍ້ມູນທີ່ຈໍາເປັນສໍາລັບການຄວບຄຸມຂະບວນການ, ເຊິ່ງປະກອບມີ: ①ທີ່ຢູ່ຂອງໂປລແກລມແລະຂໍ້ມູນ, ທີ່ຢູ່ຫນ່ວຍຄວາມຈໍາຫຼືຫນ່ວຍຄວາມຈໍາພາຍນອກຂອງໂປລແກລມແລະຂໍ້ມູນໃນຫນ່ວຍງານຂະບວນການ, ດັ່ງນັ້ນຈຶ່ງສາມາດກໍານົດເວລາທີ່ຈະ ປະຕິບັດເມື່ອຂະບວນການຖືກປະຕິບັດ. , ໂຄງການແລະຂໍ້ມູນສາມາດໄດ້ຮັບການພົບເຫັນຈາກ PCB; ②ຂະບວນການ synchronization ແລະກົນໄກການສື່ສານ, ເຊິ່ງເປັນກົນໄກທີ່ຈໍາເປັນສໍາລັບການ synchronization ແລະການສື່ສານຂະບວນການ, ເຊັ່ນ: ຕົວຊີ້ແຖວຂໍ້ຄວາມ, semaphores, ແລະອື່ນໆ, ພວກເຂົາເຈົ້າອາດຈະຖືກຈັດໃສ່ໃນ PCB ທັງຫມົດຫຼືບາງສ່ວນ; ③ບັນຊີລາຍຊື່ຊັບພະຍາກອນ, ເຊິ່ງຊັບພະຍາກອນທັງຫມົດ (ຍົກເວັ້ນ CPU) ທີ່ຕ້ອງການໂດຍຂະບວນການໃນລະຫວ່າງການປະຕິບັດງານຂອງມັນຖືກລະບຸໄວ້, ແລະຍັງມີບັນຊີລາຍຊື່ຂອງຊັບພະຍາກອນທີ່ຖືກຈັດສັນໃຫ້ກັບຂະບວນການ; ④Link ຕົວຊີ້, ເຊິ່ງເຮັດໃຫ້ຂະບວນການ (PCB) ທີ່ຢູ່ທໍາອິດຂອງ PCB ຂອງຂະບວນການຕໍ່ໄປໃນແຖວ.