Skip to content

Latest commit

 

History

History
13 lines (8 loc) · 1.44 KB

README.md

File metadata and controls

13 lines (8 loc) · 1.44 KB

50shades

Simple concurrent programming project using ncurses lib made during my studies. A producer prints "50 Shades of Grey" books, which are delievered to bookstores. These bookstores are visited by readers who infinitely demand more copies.

You can find a description of this project in Polish below – it was used as a base of what I was supposed to do.


Systemy Operacyjne 2 // Opis projektu – dystrybucja książek

Producent drukuje kolejne egzemplarze książek „50 Twarzy Greya”, które rozchodzą się natychmiastowo. Książki przewożone są przez dostawców do księgarń, w których to z kolei ustawiają się kolejki klientów, oczekujących na kolejne dostawy. Sekcjami krytycznymi w tym wypadku są punkty, w których stykają się poszczególne ogniwa: tylko jeden dostawca może znajdować się w danej chwili u producenta i ładować książki, również maksymalnie jeden dostawca może rozładowywać książki do sklepu. Oprócz tego, tylko jeden klient w danej chwili może dokonywać zakupu książki. Interfejs użytkownika zrealizowany będzie przy użyciu biblioteki ncurses. Na ekranie wyświetlane będą informacje o liczbie dostawców, księgarni i klientów. Oprócz tego producent opisany będzie liczbą aktualnie posiadanych druków i prędkości produkcji, przy każdym z dostawców będzie informacja o jego aktualnym zadaniu (podróż z albo do drukarni, rozładunek, załadunek), a każdy sklep opisany będzie informacją o liczbie aktualnie posiadanych książek i liczbie klientów w kolejce.