Operating Systems

« Return

Objectives

The operating system is the core component of any computer system. Therefore, aim of this course is to provide students with the fundamental concepts that underpin the design of current operating systems. We will study the models of computation offered by operating systems, your organization, primitive operations and elementar programming. Some of these concepts will be consolidated with details of real systems.

Thus, it is intended that the student knows the basic concepts underlying operating systems, with emphasis on their mechanisms and algorithms, as well as the internal structure of the operating systems most relevant. Set at the system level, using all the features of operating systems taking into account the sequential programming models and competitor.

Program

1. Architecture: definitions. Computer architecture. Structure of an operating system. Functions and Models.

2. Processes and Scheduling: process. Threads. Scheduling Algorithms. Synchronization. Processes Comunication. Interlock.

3. Memory Management: paging. Segmentation. Virtual Memory.

4. Storage Management: file system. Systems Inputs and Outputs

5. Shell Programming: Introduction to Shell scripting - bash - on Linux. Shell programming commands. Development and implementation of Shell scripts.

6. Operating System Calls in C Programming Language: development and implementation of programs in the C programming language to implement the theoretical concepts about processes, threads, synchronization, memory and storage.

Teaching Methodologies

Teaching classes using electronic presentations to better explanamento of the syllabus. They are built based on student participation and illustrative examples listed by them for greater involvement of students in the construction of knowledge and the development of class. This way students can make connecting with other contents already taught in the course and/or other courses and transpose them to the classroom and know them in a better way. For better assimilation of the contents are made worksheets with security problem situations for be solved by the students.

Bibliography

Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. Operating System Concepts. 7th Edition. John Wiley & Sons. 2005.

José Alves Marques, Paulo Ferreira, Carlos Ribeiro, Luís Veiga, Rodrigo Rodrigues. Sistemas Operativos. FCA. 2009.

Andrew S. Tanenbaum. Sistemas Operacionais Modernos. 2a Edição. 2003.

William Stallings. Operating Systems. 4th Edition. Prentice Hall International Editions. 2002.

Fernando Pereira. Linux - Curso Completo. 3a Edição. 2000.FCA.

Chet Ramey, Brian Fox. The GNU Bash Reference Manual. Free Software Foundation. 2009.

Luís Manuel Dias Damas. Linguagem C. FCA. 1999.

Mike Banahan, Declan Brady and Mark Doran. The C Book. 2th Edition. Addison Wesley

Code

0105935

ECTS Credits

6

Classes

  • Práticas e Laboratórios - 30 hours
  • Teóricas - 30 hours

Evaluation Methodology

  • C Programming group project: 30%
  • Sell Script group project: 20%
  • Two theoric tests: 50%