Subject: Operating Systems

Scientific Area:



80 Hours

Number of ECTS:

7,5 ECTS



Overall objectives:

1 - To understand the fundamental concepts of operating systems, with particular emphasis on its mechanisms and algorithms, as well as the internal structure of modern operating systems.
2 - To be able to program at system level, using all functionalities provided by operating systems and taking into account the sequential and concurrent models of programming.


1 - Evolution of Operating Systems. Concurrence and process management.
2 - The core of a multiprogrammed operating system. Dispatch and scheduler.
3 - Synchronization with semaphores. Synchronization algorithms.
4 - Memory management. Virtual memory. Memory management algorithms.
5 - Inter-process communication.
6 - File system.
7 - Input/output.


José Alves Marques, Paulo Ferreira, Carlos Ribeiro, Luís Veiga, Rodrigo Rodrigues , 2012 , Sistemas Operativos , FCA
Andrew S. Tanenbaum, Herbert Bos , 2014 , Modern Operating Systems ,

Assesssment methods and criteria:

Classification Type: Quantitativa (0-20)

Evaluation Methodology:
Teaching methodologies: - Lecture classes, problem-solving, group project, presentation of projects, discussion sessions. Evaluation: - Two written tests (each one worth 25% of the final grade) & one project (worth 50% of the final grade, distributed in three evaluation moments of 5%, 10% and 35%).