Tipovi ograničenja u real - time sustavu


Da bi se tematika ograničenja( constraints ) koji se javljaju u real - time sustavu pojasnila potrebno je pojasniti neke pojmove:
  • Proces( task, job ) - To je osnovna jedinica proračuna izvršena na CPU na sekvencijalan način.
  • Scheduling policy - Kada jedan procesor mora izvoditi zadani skup konkurentnih procesa mora postojati kriterij i politika po kojima se CPU dodjeljuje pojedinim procesima. To se zove "Scheduling policy".

Procesi u sustavu prolaze kroz niz stanja. Proces koji se trenutno izvodi na CPU zove se "running process". Proces koji se eventualno može izvesti na CPU i koji čeka na CPU zove se "active process". Proces koji čeka na neki resurs u sustavu zove se "waiting process". Stanja u kojima se proces može naći prikazana su na slijedećoj slici.




Tipični skup ograničenja koji se mogu pojaviti u real-time sustavu može se podijeliti u slijedece kategorije:
  1. Vremenska ograničenja ( timing constraints ).

    Tipično vremensko ograničenje u real-time sustavu za neki proces je njegov "deadline". Deadline predstavlja vrijeme do kada se proces mora izvršiti. S obzirom na posljedice neispunjavanja zadanog deadline-a procesi se dijele na dvije kategorije:
    • Hard - proces je hard ako završetak istog nakon deadline-a može izazvati katastrofične posljedice. To znači da u real-time sustavu bilo koji proces ovakovog karaktera mora biti zagarantirano izveden prije svog deadlinea.
    • Soft - proces je soft ako prekoračenje deadlinea smanjuje performanse sustava, ali ne ugrožava njegovo kompletno ponašanje.
    Općenito, u vremenskoj domeni proces je okarakteriziran sljedecim parametrima:
    • "Computation time" Ci
    • "Deadline" di
    • "Start time"
    • "Finishing time" fi
    • "Criticalness"
    Gore navedeni parametri prikazani su na sljedećoj slici:




  2. "Precedence" ograničenja

    - U nekim aplikacijama neki procesi ne mogu nastaviti proračun prije nego dobije rezultate od nekog drugog procesa. To znači da ako proces J1 treba rezultat od J2 onda J1 mora čekati dok se proces J2 završi. Te ovisnosti su prikazane pomoću usmjerenog acikličnog grafa( directed acyclic graph ). Takav jedan graf prikazan je na sljedećoj slici.




  3. Ograničenja resursa( Resource constraints )

    Resursi u sustavu su ograničeni. Isto tako da bi se postigla održivost tih resursa zahtjeva se dijeljivost tih resursa. Mnogi dijeljeni resursi ne dozvoljavaju simultano korištenje od strane više procesa, nego je potrebno ostvariti međusobnu dijeljivost( mutual exclusion ) među procesima koji koriste te resurse. To znači da u nekom trenutku vlast nad takvim resursom može imati samo jedan proces. To unosi ograničenja u sustav jer kad jedan proces posjeduje neki resurs, ostali procesi koji također žele koristiti taj resurs moraju čekati na njegovo oslobađanje.





Natrag na naslovnu stranicu Prethodna stranica Sljedeća stranica Na posljednju stranicu