Part of this Programme
Level of Qualification|Semesters|ECTS
Bachelor | Semestral | 6
Year | Type of course unit | Language
2 |Mandatory |Português
Total of Working Hours | Duration of Contact (hours)
168 | 60
Recommended complementary curricular units
Prerequisites and co-requisites
1. Introduction Concepts, Functionality and Architecture 2. OS Services User Interface Programming Interfaces Exception Management System Calls 2. Process Management Process Concept Structures, Operations and States Communication between Processes 3. Threads Multithreading Models Operating System Repercussions Threads Libraries: Concepts and Usage 4. CPU Scheduling Algorithms Multiprocessor Scheduling Threads Scheduling Algorithm Evaluations 5. Process Synchronization Critical Sections Synchronization Instructions Semaphores Monitors Synchronization Problems 6. Memory Management Allocation Algorithms Paging Segmentation Swapping Virtual Memory
The purpose of this UC is to present the fundamental principles of the Operating Systems in order to allow a detailed understanding of its architecture and operation, giving students the knowledge and skills to use, configure and optimize this fundamental component of computer systems. At the end of the course, students will: ¿ Know the principles of current operating systems and identify the various components that constitute it. Know the fundamental algorithms on which the main components of an Operating System are based as well as their most current optimizations. ¿Program illustrative examples of some more representative algorithms (scheduler, file system, etc.)? Take advantage of the direct use of system interfaces for the development and optimization of complex applications. Know how to configure and modify features and components of the Linux system, and adapt it to various types of uses and platforms.
Teaching methodologies and assessment
The learning is based on theoretical classes and laboratory practices, where the students have the opportunity to acquire in-depth and direct experience of the main topics covered in the chair, through the accomplishment of works and projects focused on the implementation of essential functionalities of the Operating Systems. Teaching is illustrated by examples drawn from some of the most commonly used systems (Unix, Windows, ...). The evaluation is carried out in a continuous way and consists of theoretical tests (50%) and delivery of works and projects (50%) throughout the semester. The approval in the chair is obtained with a minimum grade of 10 values of the average of the two theoretical and practical components.
Operating Systems: Internals and Design Principles¿ (9th Edition), de William Stallings, Ed. Pearson, 2017, ISBN-13: 978-0134670959.
Referências Adicionais / Addtional References
¿Modern Operating Systems: Global Edition¿, 4th Edition, 2014. de A: Tanenbaum, Ed Ed. Prentice Hall, ISBN-13: 978-1292061429
¿Operating Systems Concepts¿ (9th Edition), Abraham Silberchatz, et. al., Ed. Wiley & Sons, 2012; ISBN-13 9781118063330.
"Windows Internals" (6th Edition), M. Russinovich, D. Solomon, A. Ionescu, 2012, Ed. Microsoft Press, ISBN-10: 0735648735
"Sistemas Operativos", J. Marques, P. Ferreira, et al., Ed. FCA, 2009, ISBN:978-972-722-575-0.
"Linux Kernel Development" (3rd Edition) Robert Love, Ed. Addison Wesley, 2010; ISBN: 0672329468.