site logo

მოკლედ აღწერეთ PCB-ის მნიშვნელობა და ფუნქცია

იმისათვის, რომ თითოეულმა პროგრამამ მონაწილეობა მიიღოს ერთდროულად შესრულებაში, მათ შორის მონაცემების დამოუკიდებლად გაშვება, ოპერაციულ სისტემაში უნდა იყოს კონფიგურირებული მონაცემთა სპეციალური სტრუქტურა, რომელსაც ეწოდება პროცესის კონტროლის ბლოკი (PCB, პროცესის კონტროლის ბლოკი). პროცესსა და PCB-ს შორის არის ერთი-ერთზე კორესპონდენცია და მომხმარებლის პროცესის შეცვლა შეუძლებელია.

ipcb

პროცესის კონტროლის ბლოკის PCB როლი:

სისტემის აღწერილობისა და პროცესის ფუნქციონირების მართვის გასაადვილებლად, მონაცემთა სტრუქტურა სპეციალურად არის განსაზღვრული თითოეული პროცესისთვის OS-Process Control Block PCB (პროცესის კონტროლის ბლოკი) ბირთვში. როგორც პროცესის ერთეულის ნაწილი, PCB ჩაწერს ყველა ინფორმაციას, რომელიც საჭიროა ოპერაციული სისტემისთვის, რათა აღწეროს პროცესის მიმდინარე მდგომარეობა და მართოს პროცესის მოქმედება. ეს არის ყველაზე მნიშვნელოვანი ჩაწერილი მონაცემთა სტრუქტურა ოპერაციულ სისტემაში. PCB-ის როლი არის ის, რომ პროგრამა (მათ შორის მონაცემები), რომელიც დამოუკიდებლად ვერ იმუშაოს მრავალპროგრამიან გარემოში, გახდეს ძირითადი ერთეული, რომელსაც შეუძლია დამოუკიდებლად გაშვება, პროცესი, რომელიც შეიძლება შესრულდეს სხვა პროცესებთან ერთად.

(2) PCB-ს შეუძლია გააცნობიეროს წყვეტილი მუშაობის რეჟიმი. მრავალპროგრამიან გარემოში, პროგრამა მუშაობს გაჩერების და წასვლის წყვეტილი მუშაობის რეჟიმში. როდესაც პროცესი შეჩერებულია დაბლოკვის გამო, მან უნდა შეინარჩუნოს CPU საიტის ინფორმაცია, როდესაც ის მუშაობს. PCB-ის მიღების შემდეგ, სისტემას შეუძლია შეინახოს CPU საიტის ინფორმაცია შეწყვეტილი პროცესის PCB-ში გამოსაყენებლად, როდესაც CPU საიტი აღდგება, როდესაც პროცესი განმეორებით არის დაგეგმილი. მაშასადამე, კიდევ ერთხელ შეიძლება ითქვას, რომ მრავალპროგრამიან გარემოში, როგორც სტატიკური პროგრამა ტრადიციული გაგებით, რადგან მას არ გააჩნია საკუთარი ოპერაციული ადგილის დასაცავად ან გადარჩენის საშუალება, მას არ შეუძლია მისი ოპერაციული შედეგების განმეორებადობის გარანტია. , რითაც კარგავს თავის ფუნქციონირებას. მნიშვნელობა.

(3) PCB უზრუნველყოფს პროცესის მართვისთვის საჭირო ინფორმაციას. როდესაც დამგეგმავი გეგმავს პროცესის გაშვებას, მას შეუძლია მხოლოდ შესაბამისი პროგრამისა და მონაცემების პოვნა პროგრამის დაწყების მისამართის მაჩვენებლის მიხედვით და პროცესის PCB-ში ჩაწერილი მეხსიერებაში ან გარე საცავში; გაშვების პროცესში, როდესაც ფაილზე წვდომაა საჭირო, როდესაც სისტემაში არსებული ფაილები ან I/O მოწყობილობები, მათ ასევე უნდა დაეყრდნონ PCB-ში არსებულ ინფორმაციას. გარდა ამისა, PCB-ში არსებული რესურსების სიის მიხედვით, პროცესისთვის საჭირო ყველა რესურსის სწავლა შესაძლებელია. ჩანს, რომ პროცესის მთელი სასიცოცხლო ციკლის განმავლობაში ოპერაციული სისტემა ყოველთვის აკონტროლებს და მართავს პროცესს PCB-ის მიხედვით.

(4) PCB უზრუნველყოფს პროცესის დაგეგმვისთვის საჭირო ინფორმაციას. დასასრულებლად შეიძლება დაიგეგმოს მხოლოდ მზა მდგომარეობაში მყოფი პროცესები და PCB გვაწვდის ინფორმაციას იმის შესახებ, თუ რა მდგომარეობაშია პროცესი. თუ პროცესი მზა მდგომარეობაშია, სისტემა მას ჩასვამს პროცესის მზა რიგში და ელოდება გრაფიკის დანიშვნას. ; გარდა ამისა, დაგეგმვისას ხშირად საჭიროა სხვა ინფორმაციის ცოდნა პროცესის შესახებ. მაგალითად, პრიორიტეტების დაგეგმვის ალგორითმში, თქვენ უნდა იცოდეთ პროცესის პრიორიტეტი. დაგეგმვის უფრო სამართლიან ალგორითმში, თქვენ ასევე უნდა იცოდეთ პროცესის ლოდინის დრო და განხორციელებული მოვლენები.

(5) PCB ახორციელებს სინქრონიზაციას და კომუნიკაციას სხვა პროცესებთან. პროცესის სინქრონიზაციის მექანიზმი გამოიყენება სხვადასხვა პროცესების კოორდინირებული მუშაობის რეალიზებისთვის. როდესაც სემაფორის მექანიზმი მიიღება, ის მოითხოვს, რომ სინქრონიზაციისთვის შესაბამისი სემაფორის დაყენება თითოეულ პროცესში. PCB-ს ასევე აქვს ფართობი ან საკომუნიკაციო რიგის მაჩვენებელი პროცესის კომუნიკაციისთვის.

ინფორმაცია პროცესის კონტროლის ბლოკში:

პროცესის კონტროლის ბლოკში ის ძირითადად მოიცავს შემდეგ ინფორმაციას:

(1) პროცესის იდენტიფიკატორი: პროცესის იდენტიფიკატორი გამოიყენება პროცესის ცალსახად აღსანიშნავად. პროცესს ჩვეულებრივ აქვს ორი სახის იდენტიფიკატორი: ① გარე იდენტიფიკატორები. იმისათვის, რომ ხელი შეუწყოს მომხმარებლის პროცესს პროცესზე წვდომაში, თითოეული პროცესისთვის უნდა იყოს მითითებული გარე იდენტიფიკატორი. იგი მოწოდებულია შემქმნელის მიერ და ჩვეულებრივ შედგება ასოებისა და რიცხვებისგან. პროცესის ოჯახური ურთიერთობის აღწერისთვის, ასევე უნდა იყოს მითითებული მშობელი პროცესის ID და ბავშვის პროცესის ID. გარდა ამისა, მომხმარებლის ID შეიძლება დაყენდეს, რათა მიუთითოს მომხმარებელი, რომელიც ფლობს პროცესს. ②შიდა იდენტიფიკატორი. სისტემის მიერ პროცესის გამოყენების გასაადვილებლად, OS-ში პროცესისთვის დაყენებულია შიდა იდენტიფიკატორი, ანუ თითოეულ პროცესს ეძლევა უნიკალური ციფრული იდენტიფიკატორი, რომელიც, როგორც წესი, არის პროცესის სერიული ნომერი.

(2) პროცესორის მდგომარეობა: პროცესორის მდგომარეობის ინფორმაციას ასევე უწოდებენ პროცესორის კონტექსტს, რომელიც ძირითადად შედგება პროცესორის სხვადასხვა რეგისტრის შიგთავსისგან. ეს რეგისტრები მოიცავს: ①ზოგადი დანიშნულების რეგისტრებს, ასევე ცნობილია როგორც მომხმარებლის ხილული რეგისტრები, რომლებიც ხელმისაწვდომია მომხმარებლის პროგრამებისთვის და გამოიყენება ინფორმაციის დროებით შესანახად. უმეტეს პროცესორებში არის 8-დან 32-მდე ზოგადი დანიშნულების რეგისტრი. RISC სტრუქტურირებულ კომპიუტერებში შეიძლება იყოს 100-ზე მეტი; ②ინსტრუქციების მრიცხველი, რომელიც ინახავს შემდეგი ინსტრუქციის მისამართს, რომლის წვდომაც უნდა მოხდეს; ③პროგრამის სტატუსის სიტყვა PSW, რომელიც შეიცავს სტატუსის ინფორმაციას, როგორიცაა მდგომარეობის კოდი, შესრულების რეჟიმი, შეწყვეტის ნიღბის დროშა და ა.შ.; ④მომხმარებლის სტეკის მაჩვენებელი, ეს ნიშნავს, რომ მომხმარებლის თითოეულ პროცესს აქვს ერთი ან რამდენიმე დაკავშირებული სისტემის დასტა, რომლებიც გამოიყენება პროცესის და სისტემის ზარის პარამეტრების და ზარის მისამართების შესანახად. სტეკის მაჩვენებელი მიუთითებს სტეკის ზედა მხარეს. როდესაც პროცესორი არის შესრულების მდგომარეობაში, დამუშავებული ინფორმაციის დიდი ნაწილი მოთავსებულია რეესტრში. პროცესის გადართვისას, პროცესორის მდგომარეობის შესახებ ინფორმაცია უნდა იყოს შენახული შესაბამის PCB-ში, რათა პროცესი გაგრძელდეს წყვეტის წერტილიდან, როდესაც პროცესი ხელახლა განხორციელდება.

(3) პროცესის დაგეგმვის ინფორმაცია: როდესაც OS გეგმავს, აუცილებელია პროცესის სტატუსის და ინფორმაციის პროცესის დაგეგმვის შესახებ გაგება. ეს ინფორმაცია მოიცავს: ① პროცესის სტატუსს, რომელიც მიუთითებს პროცესის მიმდინარე სტატუსზე, რომელიც გამოიყენება როგორც პროცესის დაგეგმვისა და შეცვლის საფუძველი. ②პროცესის პრიორიტეტი არის მთელი რიცხვი, რომელიც გამოიყენება პროცესორის პრიორიტეტის დონის აღსაწერად. უფრო მაღალი პრიორიტეტის მქონე პროცესმა პირველ რიგში უნდა მიიღოს პროცესორი; ③პროცესის დაგეგმვისთვის საჭირო სხვა ინფორმაცია, რომელიც დაკავშირებულია გამოყენებული პროცესის დაგეგმვის ალგორითმთან, მაგალითად, დროის ჯამი, რომელსაც პროცესი ელოდა CPU-ს, იმ დროის ჯამი, როცა პროცესი შესრულდა და ა.შ. ④ მოვლენა ეხება მოვლენას, რომელიც ელოდება პროცესის შესრულების მდგომარეობიდან დაბლოკვის მდგომარეობამდე გადასვლას, ანუ დაბლოკვის მიზეზს.

(4) პროცესის კონტროლის ინფორმაცია: ეხება პროცესის კონტროლისთვის აუცილებელ ინფორმაციას, რომელიც მოიცავს: ① პროგრამისა და მონაცემების მისამართს, პროგრამის მეხსიერების ან გარე მეხსიერების მისამართს და მონაცემებს პროცესის ერთეულში, რათა მოხდეს მისი დაგეგმვა. შეასრულეთ პროცესის შესრულებისას. , პროგრამა და მონაცემები შეგიძლიათ იხილოთ PCB-დან; ②პროცესის სინქრონიზაციისა და კომუნიკაციის მექანიზმი, რომელიც წარმოადგენს სინქრონიზაციისა და პროცესის კომუნიკაციის აუცილებელ მექანიზმს, როგორიცაა შეტყობინების რიგის მაჩვენებლები, სემაფორები და ა.შ., ისინი შეიძლება განთავსდეს PCB-ში მთლიანად ან ნაწილობრივ; ③რესურსების სია, რომელშიც ჩამოთვლილია პროცესისთვის საჭირო ყველა რესურსი (გარდა CPU-ისა) მისი მუშაობის დროს და ასევე არის პროცესზე გამოყოფილი რესურსების სია; ④ ბმული მაჩვენებელი, რომელიც აძლევს პროცესს (PCB) რიგში მომდევნო პროცესის PCB-ის პირველ მისამართს.