12.07.2015 Views

Spis treœci - Patrz

Spis treœci - Patrz

Spis treœci - Patrz

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

wstawienia/usunięcia rekordu. Znak + oznacza możliwość jednoczesnego wykonywaniaoperacji, a znak - wzajemne wykluczanie się operacji.Napisz monitor synchronizujący dostęp do bazy danych procesów wykonujących albooperacje odczytu, albo modyfikacji, albo intencji poprzedzające wstawianie/usuwanie.4.3.6 Prom jednokierunkowyNapisz monitor synchronizujący pracę promu rzecznego i samochodów, które z niegokorzystają. Prom wpuszcza N=10 samochodów lub, jeśli samochodów jest za mało, czeka ażupłynie T=30 min (procedura MON.WPUŚĆ). Następnie przepływa, na drugą stronę rzeki,wypuszcza samochody (procedura MON. WYPUŚĆ) i wraca (stąd określenieednokierunkowy}. Samochody czekają na wjazd (procedura MON.CZEKAJ), wjeżdżają naprom, informują o wjechaniu i czekają na, zjazd (procedura MON .WJECHAŁEM), zjeżdżają zpromu, informują o zjechaniu (procedura MON.ZJECHAŁEM). Wjeżdżanie i zjeżdżanieodbywa się pojedynczo.Zakładamy istnienie procesu ZEGAR, który co minutę wywołuje procedurę monitoraMON.CYK.4.3.7 Trzy drukarkiGrupa procesów P(l..N) (N> 4) korzysta z trzech drukarek wierszowych LP-1,LP-2 i LP-3. Proces musi zarezerwować drukarkę przed rozpoczęciem korzystania z niej. Z i-1 ądrukarką jest związana zmienna drukuj e [i], której wartością jest numer procesukorzystającego z drukarki lub 0. Napisz monitor udostępniający procedury rezerwacji izwalniania drukarki:procedurę ZAJMIJ(i:nrprocesu; var dr:nrdrukarki);i — numer procesu żądającego przydziału,dr — numer drukarki przydzielonej procesowi,procedurę ZWOLNIJ(dr:nrdrukarki);dr — numer drukarki zwalnianej przez proces.4.3.8 LotniskowiecRozwiąż zadanie 3.3.11 używając mechanizmu monitora. Monitor powinien udostępniaćprocedury CHCĘ_STARTOWAĆ, WYSTARTOWAŁ, CHCĘ_LĄDOWAĆ i WYLĄDOWAŁ,75

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!