Kazalo:
- Opredelitev - Kaj pomeni rutinski kritični odsek (CSR)?
- Tehopedija pojasnjuje rutinski kritični odsek (CSR)
Opredelitev - Kaj pomeni rutinski kritični odsek (CSR)?
Rutina kritičnega odseka (CSR) je del kode, za katerega postopek pridobi ekskluzivno zaklepanje, tako da ga noben drug postopek ne more hkrati izvajati. Pogosto se en ali več procesov izvajajo hkrati v operacijskem sistemu, zaradi česar se ti procesi med seboj tekmujejo za dostop do datotek in virov. Do dostopa do vira naj bo dovoljen le en postopek, medtem ko se izvaja del kode, povezane z virom.
Za zagotovitev, da postopek v CSR ne bo uspel, medtem ko drugi procesi čakajo, komponenta za upravljanje procesov določi časovno omejitev. Tako ima lahko postopek dostop do ekskluzivne ključavnice le za omejen čas.
Tehopedija pojasnjuje rutinski kritični odsek (CSR)
Glavne zahteve za izvajanje DOP so:
- Medsebojna izključitev: Ko se postopek izvaja v CSR, noben drug postopek ne more vstopiti.
- Pogoj napredka: Če se v CSR ne izvede noben postopek in obstaja nekaj procesov, ki bi ga radi vnesli, lahko to storijo v določenem času. Eden od procesov vstopi v CSR, drugi pa čaka.
- Omejeno čakanje: Ko postopek zahteva vpis CSR-ja in preden je zahteva odobrena, mora biti v tem obdobju zgornja meja števila postopkov, ki čakajo na vnos družbene odgovornosti, da se prepreči, da v čakalni vrsti ne bo izgubljen proces in vsak postopek v čakalni vrsti dobi na vrsti vstop za CSR.
CSR je v določenem delu kode mogoče prepoznati po naslednjih lastnostih:
- Za kodo je značilno zaporedje operacij branje-pisanje-posodobitev.
- Odseki spremenljivke kode spremenijo drugo kodo, ki izvaja zaporedje branja-pisanja-posodobitve operacije.
- Prisotnost kode, ki s spreminjanjem dostopa do podatkovne strukture neke druge kode, ali kode, ki uporablja strukturo podatkov, ki bi jo bilo mogoče spremeniti z nekim drugim postopkom.
Koncept kritičnega odseka je mogoče uporabiti za strojno opremo, ki uporablja sredstvo za prekinitve. Kadarkoli postopek vstopi v kritični odsek, je treba vse prekinitve na procesorju onemogočiti, tako da drugi procesi ne morejo zahtevati zaklepanja vira. Podobno, ko postopek konča izvedbo, so prekinitve znova omogočene. Drugi pristop je uporaba semaforja, posebne spremenljivke, ki deluje kot signal za usmerjanje izvajanja ali zaključka postopka.
