You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Projekt wykonany w ramach laboratorium SOI (Systemy Operacyjne) w semestrze 2014L (4 semestr),na kierunku Informatyka na Wydziale Elektroniki i Technik Informacyjnych (EiTI) Politechniki Warszawskiej.
Ćwiczenie
Ćwiczenie polega na konstrukcji stosu przechowującego liczby naturalne, obsługiwanego przez dwa procesy producentów i dwa procesy konsumentów.Założenia ćwiczenia:
Stos ma pojemność na maksymalnie 9 elementów
Producent A może położyć element na stosie, gdy suma elementów na stosie jest mniejsza niż 20
Konsument B może zdjąć element ze stosu, gdy liczba elementów na stosie jest większa niż 3
Należy uniemożliwić odczyt z pustego stosu
Należy uniemożliwić zapis na pełny stos
Należy zadbać o "nie przeszkadzanie sobie" procesów zapisujących do bufora i procesów czytających z bufora
Wymagania implementacyjne
Implementacja w języku C/C++
Implementacja pod dowolnym systemem z rodziny Linux
Wykorzystanie semaforów
Kompilacja i uruchamianie
Kompilacja:make
Uruchamianie:./build/run
Działanie testowane na:
Ubuntu 14.04 LTS
g++ 4.8.2
clang 3.4
Ubuntu 13.10
g++ 4.8.1
clang 3.2
About
A project made for Operating Systems class laboratories, using semaphores to solve a inter-process synchronization problem