To tylko jedna z 2 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
1. Wymień narzędzia IPC Narzędzia IPC (ang. Inter Process Communication ) służą do komunikacji pomiędzy procesami działającymi na jednym komputerze. Należą do nich: • semafory • pamięć dzielona (współdzielona) • kolejki komunikatów Semaforów używa się zwykle do synchronizacji procesów ze sobą, pamięć współdzielona jest używana do wymiany większych ilości danych, kolejki komunikatów są używane do przesyłania krótkich wiadomości oraz do synchronizacji procesów. 2. Co to jest semafor? Semafory są najczęściej stosowane do synchronizacji dostępu procesów do wspólnych zasobów (np. pamięci dzielonej, plików itp.). 3. Co to jest semafor binarny? Podstawowym rodzajem semafora jest semafor binarny, przyjmujący dwa stany : - opuszczony (zamknięty) . wówczas proces, który napotyka semafor musi zawiesić swoje działanie do momentu podniesienia semafora - podniesiony (otwarty) . proces może kontynuować działanie 4. Do czego służą funkcje P(s) i V(s) ? W literaturze spotyka się konwencję, że funkcja P(semafor ) służy do opuszczenia semafora a funkcja V(semafor ) do jego podniesienia . Konwencję tę warto stosować niezależnie od języka programowania i sposobu realizacji semaforów. Należy zwrócić uwagę na to, że jeśli proces próbuje wykonać funkcję P(semafor) a semafor jest już opuszczony, to proces zostanie zawieszony do czasu podniesienia semafora przez inny proces. 5. Semafor binarny jest opuszczony. Została wywołana funkcja P(s) służąca do opuszczenia semafora. Co się stanie? Należy zwrócić uwagę na to, że jeśli proces próbuje wykonać funkcję P(semafor) a semafor jest już opuszczony, to proces zostanie zawieszony do czasu podniesienia semafora przez inny proces. 6. Dlaczego warto tworzyć klucz funkcją ftok? Do tworzenia wszystkich narzędzi IPC, w tym semaforów, potrzebny jest klucz . W większości systemów jest to liczba typu int (zwykle zdefiniowany jest typ key_t). Dzięki kluczom, do korzystania z tego samego narzędzia IPC przez wiele procesów, nie jest niezbędna znajomość identyfikatora narzędzia IPC. Identyfikator jest przydzielany przez system w momencie tworzenia narzędzia, a jego wartości nie da się przewidzieć. Natomiast procesy posługujące się tym samym kluczem do tworzenia narzędzia IPC (np. zbioru semaforów) mają gwarancję, że uzyskają dostęp do tego samego narzędzia.
(…)
… funkcji semctl do realizacji funkcji P(s) i V(s) ?
Należy wyraźnie podkreślić, że funkcja semctl NIE MOŻE być używana do zabezpieczania sekcji krytycznej
w procesie (zamiast funkcji semop), gdyż nie gwarantuje niepodzielności operacji. ???
10. Kto może usunąć zbiór semaforów?
IPC_RMID - usuwa zbiór semaforów z systemu i likwiduje strukturę danych opisujących tablicę semaforów.
Zbiór semaforów może zostać…
… polecenie:
> ipcs -s
W celu uzyskania pełnej specyfikacji zbiorów semaforów należy dodać opcję -a. Wyświetlane są wówczas
następujące pola:
ID . unikalny identyfikator zbioru semaforów
KEY . klucz, na podstawie którego utworzono zbiór semaforów
MODE . zawiera prawa dostępu do zbioru semaforów (można nadawać prawo czytania i modyfikacji).
OWNER . nazwa właściciela zbioru semaforów
GROUP . nazwa grupy…
... zobacz całą notatkę
Komentarze użytkowników (0)