Skip to content

Latest commit

 

History

History
26 lines (14 loc) · 973 Bytes

README.md

File metadata and controls

26 lines (14 loc) · 973 Bytes

OperatingSystems repository: Operating systems projects while in University

A complete description and details about all the projects can be found inside the respective folder in a .pdf file.

Project1:

- Create and manage processes in Unix, using C;

- Send, handle and ignore and block signals;

- Allow the communication between processes using pipes and named-pipes;

- Use select() to implement I/O multiplexing.

Project2:

- Create and use a segment of shared memmory to share data between concurrent processes;

- Map a file on disk into a buffer in memory and use it to share data between concurrent processes;

- Use the library <semaphore.h> to create and use semaphores to synchronise the access to shared resources from competing processes.

Project3:

- Create and manage multiple threads inside a process;

- Use synchronisation primitives such as semaphores, mutexes and condition variables.