Degree in Telematics (Networks and Internet Technologies)

Degree in Telematics (Networks and Internet Technologies)

Become an expert engineer in Network and Internet Technologies and get the CCNA and CCNP official qualifications

Operating Systems

An operating system is a software layer that executes on top of the hardware to provide a series of services. The subject´s objective is to study all the parts that conform the operating system, thus providing the student of knowledge about one of the most important parts of nowadays computer systems. From a practical point of view, the student is asked to implement different functionalities, policies, and techniques of operating systems. Besides, a large set of practical examples helps the students get a deeper understanding of the theory given during the course.
Type Subject
Tercer - Obligatoria

Titular Professors

Director of Educational Innovation
Previous Knowledge

Programming Concepts (algorithms and data structures) and basic concepts of operating systems use.


Students of the subject Operating Systems will acquire the knowledge and develop the skills listed below:

1. Understand the functionalities of operating systems, their structure and the relation with the rest of the computer system.
2. Know the concepts, techniques and terminology associated with the development and creation of each layer of an operating system.
3. Know how to develop software that implements these techniques.
4. Know how to express correctly, both written and orally, using the right terms.
5. Know how to develop modular and well documented software.
6. Know how to solve problems in the field of operating systems, both individually and in group.


During the academic course, the following contents will be studied:

1. Introduction to Operating systems.
2. Nucleus of an Operating system.
3. Process Planning.
4. Communication mechanisms and processes synchronization
5. Request to the UNIX system


The methodology used is based on the magisterial class and the student´s participation on it. Magisterial explanations will be given on new concepts and contents, at the same time the concepts will be linked to examples and practical problems that are to be solved either individually or in group. A large set of exercises are proposed to be solved individually or in group on the time between sessions, later this exercises will be solved, fully or partially, on following classes.

Crossed references from different parts of the subject are going to be given, with the objective of providing the student with a global vision of the whole subject, and the tools to link techniques and concepts.

Also, 12 class sessions are done in the laboratory. In each session, students carry out an activity to assimilate one of the request techniques to the programming system in C language in a UNIX system.

In the same way, a big practice is carried out structured in phases.


The methods used to evaluate the subject are the following:

A. Exams
C. Quizzes
D. Homework
F. Team reports
G. Computer assignments
J. Classroom participation
M. Others (Interviews)

- The subject is one-semester long and has two different parts: the knowledge part and the practices. Their evaluation is independent. To pass the subject it is necessary to approve the theoretical and the practical part separately. The final grade is calculated with the following formula:
Subject´s_grade = 50% - knowledge + 50% - Practices

- The knowledge grade is evaluated form the following grades: the (Ex_Grade) and the continuous evaluation grade (CE_Grade) according to the following formula, only if the exam´s grade is equal to or higher than 3:

Knowledge = 60% - Ex_Grade + 40% CE_Grade

- This calculus will only apply if the Exam´s grade is equal to or higher than 3.5 (Ex_Grade>=3.5)
- By the other hand, the exam´s grade (Ex_Grade) is calculated with the average of the midterm exam´s grade (Midterm_Ex) and the final exam´s grade (Final_Ex) (it may be validated with the practice´s grade as it is explained in the corresponding section of the practice), according to the following calculus:

Ex_Grade = 80% - Final_Ex + 20% - Midterm_Ex

- If the Midterm exam´s grade is equal to or higher than 6, the contents that correspond to this exam will be liberated for the semester´s final exam.
- Besides the final exam, during the ordinary period of exams, students who have not pass the exam before; will have the opportunity to take a recovery exam. In this case the knowledge grade will be the best one between the recovery exam or the recovery exam with the continuous evaluation, according the formulas explained before.
- In relation to the practice evaluation, it is detailed in a different section with the practice´s regulation.
- In relation to the continuous evaluation, it is also detailed in a different section dedicated to this theme.

Evaluation Criteria

The evaluation criteria for each of the objectives mentioned above are:

Objective 1:

- The student has to show knowledge on concepts and terminology linked with the subject [A, C, F, J].
- The student must be able to solve theoretical questions related with the contents of the subject [A, J]

Objective 2:

- The student must know how to interpret, analyze and solve process concurrency problems, using different techniques. [A, D, G, J].
- He must be confident with the basic techniques that apply to a system´s main memory management and know how to apply those techniques to solve problems. [A, D, G, J]
- Know the input / output subsystem and its administration. [A, C, D]
- Understand the different ways to implement a file system. [A, D, F, G]
- Understand both, in a theoretical and practical way how a system scheduler works on concurrent and distributed systems [A, C, D].

Objective 3:

- The student must be able to build the software that implements the techniques discussed during the course to solve the different tasks that an operating system must be able to perform. [A, D, G]

Objective 4:

- The student must be able to write reports using the right vocabulary for the subject [F].
- The student must be able to expose orally their work, defending design and implementation choices correctly. [M]

Objective 5:

- The student must be able to implement internally documented and well structured programs [G].
- The student must be able to write reports with detailed information on the design and implementation of the application developed [F].

Objective 6:

-The student must be able to cooperate with a team in order to sum up individual capacities [D, F, G, M].

Basic Bibliography

CANALETA, X. (2020). “Exercicis i problemes d’examen de sistemes operatius”, Publicacions La Salle, September 2020.
HARBISON S.P. & STEELE G.L. (2002). C - A Reference Manual, Prentice Hall, 5th edition, 2002.
PETERSON, J.L. & SILBERSCHATZ A. (1989). Sistemas Operativos, Editorial Reverté, ISBN: 84-291-2693-7
SALVADOR, J. (2014) “Programació en C per a sistemes UNIX”, Publicacions La Salle, September 2014.
SALVADOR, J. (2011). Introducció al llenguatge de programació C, Publicacions La Salle, July 2011.
SILBERSCHATZ A., GALVIN P. & GAGNE, G. (2002). Sistemas Operativos, Editorial Limusa, ISBN: 968-18-6168-X
STALLINGS, W. (2005). Sistemas Operativos, 5th Edition, Pearson Prentice Hall, ISBN: 84-205-4462-0

Additional Material

STEVENS, R., FENNER, B. & RUDOFF, A.M. (2004). UNIX Network Programming, Volume 1: "The sockets Networking API", Addison-Wesley Professional, 2004, 3rd edition, ISBN 0-13-141155-1.
STEVENS, R. & RAGO S.A. (2008). Advanced Programming in the UNIX Environment, Addison-Wesley Professional, 2008, 2nd edition.
TANENBAUM A.S. (2009). Sistemas Operativos Modernos, 3rd Edition, Pearson Prentice Hall, Pearson Educación, ISBN: 978-607-442-046-3.