Obsah:
- Definícia - Čo znamená rutina kritickej sekcie (CSR)?
- Techopedia vysvetľuje rutinnú kritickú časť (CSR)
Definícia - Čo znamená rutina kritickej sekcie (CSR)?
Rutina kritickej sekcie (CSR) je časť kódu, pre ktorú proces získa výhradný zámok, takže ho nemôže vykonať žiadny iný proces. Jeden alebo viac procesov sa často vykonáva súčasne v operačnom systéme, čo núti tieto procesy navzájom súťažiť o prístup k súborom a zdrojom. Prístup k prostriedku by mal mať povolený iba jeden proces, zatiaľ čo je vykonaná časť kódu vzťahujúceho sa na prostriedok.
Aby sa zabezpečilo, že proces v CSR nezlyhá, zatiaľ čo iné procesy čakajú, komponent riadenia procesov stanovuje časový limit. Proces tak môže mať prístup k výhradnému zámku iba na obmedzený čas.
Techopedia vysvetľuje rutinnú kritickú časť (CSR)
Hlavné požiadavky na implementáciu CSR sú:
- Vzájomné vylúčenie: Keď sa proces vykonáva v CSR, nemôže vstúpiť žiadny iný proces.
- Podmienka postupu: Ak sa v CSR nevykonáva žiadny proces a existujú procesy, ktoré si ho želajú vstúpiť, môžu tak urobiť v určitom čase. Jeden z procesov vstupuje do CSR, zatiaľ čo ostatní čakajú.
- Ohraničené čakanie: Keď proces požaduje vstup do CSR a pred udelením žiadosti, musí existovať horná hranica počtu procesov čakajúcich na vstup do CSR počas tohto obdobia, aby sa zabezpečilo, že žiadny proces nebude hladovať a každý proces v čakacej fronte. dostane odbočku na vstup do CSR.
CSR v určitom kóde je možné identifikovať pomocou nasledujúcich vlastností:
- Kód je charakterizovaný sledom operácií čítania a zápisu a aktualizácie.
- Úseky kódu menia premenné v inom kóde, ktorý vykonáva postupnosť čítania a zápisu a aktualizácie.
- Prítomnosť kódu, ktorý pristupuje k dátovej štruktúre nejakého iného kódu jeho modifikáciou, alebo kódu, ktorý používa dátovú štruktúru, ktorá by sa mohla modifikovať iným procesom.
Pojem kritická časť sa môže uplatniť na hardvér, ktorý používa zariadenie na prerušenie. Vždy, keď proces vstúpi do kritickej časti, všetky prerušenia v procesore by sa mali zakázať, aby iné procesy nemohli požadovať zámok v prostriedku. Podobne, keď proces dokončí vykonávanie, sú prerušenia opäť povolené. Ďalším prístupom je použitie semafora, špeciálnej premennej, ktorá sa chová ako signál na usmernenie vykonávania alebo ukončenia procesu.
