This version of the course guide is provisional until the period for editing the new course guides ends.

Logo UAB

Operating Systems

Code: 102747 ECTS Credits: 6
2025/2026
Degree Type Year
Computer Engineering OB 2

Contact

Name:
Carlos Carrillo Jordan
Email:
carles.carrillo@uab.cat

Teachers

Xiaoyuan Yang
Betzabeth del Carmen Leon Otero
Vicente José Ivars Camañez
Joan Josep Piedrafita Farras

Teaching groups languages

You can view this information at the end of this document.


Prerequisites

Previous content:

  • Students should be familiar with Fundamentals of Computers, Fundamentals of Computing and Programming Methodology

Objectives and Contextualisation

Students will become familiar with the services provided by the Operating System attending its functional description. We will cover management policies applied to system basic modules. Important concepts include: process and thread model, communication and syncronization between processes and threads, memory system and file systems


Competences

  • Acquire personal work habits.
  • Capacity to design, develop, select and evaluate computer applications and systems, ensuring reliability, security and quality, in accordance with ethical principles, and applicable standards and legislation.
  • Have the capacity to define, evaluate and select hardware and software platforms for the development and execution of computer systems, services and applications.
  • Know and apply the basic and main techniques of parallel, concurrent, distributed and real time programming.
  • Know and apply the functional and structural characteristics of distributed systems and computer and Internet networks, and design and implement applications based on these.
  • Know the characteristics, functionalities and structure of operating systems and design and implement applications based on their services.

Learning Outcomes

  1. Create thread and socket based applications, including mutex primitives and condition-type variables.
  2. Desenvolupar estratègies d'aprenentatge autònom.
  3. Design, develop, select and evaluate computer systems, ensuring their reliability, security and quality.
  4. Determine the influence of the operating system on the run performance of applications.
  5. Evaluate an operating system on different work levels: user, advanced user, programmer, advanced programmer, etc.
  6. Know and apply the basic and main techniques of concurrent and distributed programming.
  7. Know and apply the characteristics, functionalities and structure of distributed hardware systems and computer networks to design and implement applications based on the same.
  8. Know and understand the concepts related with computer networks, knowing how to situate them in a hierarchical system of protocols.
  9. Prevent and solve problems.
  10. Work with commands and command sequences (Shell Scripts), and with the programming interface (API) of the operating system.

Content

1-Introduction and objectives

Overview of contents and methodology

2-Introduction to Operating Systems

Introduction to main O.S. concepts. User view. OS kernel. Virtualization.

3. Process management

Processes, threads and Containers. System calls. Containers

4. Concurrency

Critical section problem. Producers/consumers. Communication and synchronization.

5. CPU Scheduling

Resource planning, scheduling levels and policies. Multiprocessor scheduling

6. Memory management.

Mono/multiprogramming models. MFT, MVT systems. Paging. Virtual memory.

7. File Systems

Files and folders. System calls. Space management algorithms. Acceleration techniques

 


Activities and Methodology

Title Hours ECTS Learning Outcomes
Type: Directed      
Lab sessions 10 0.4 5, 6, 7, 1, 2, 10
problem classes 10.5 0.42 5, 6, 7, 1, 4, 9, 10
Theory lectures 22 0.88 5, 6, 7, 8, 1, 4, 3, 9
Type: Autonomous      
Autonomous 100 4 5, 6, 7, 8, 1, 2, 4, 3

Theory classes will be based on lectures, although students will be encouraged to actively participate in the resolution of examples and practical questions. Theory classes will be scheduled in the official subject planning published in the Engineering school degree web site. The syllabus is detailed in the session list that will be available the first day of class.

Problem sessions are defined in the timetable published in the Engineering school degree web site. Problem sessions are organized in small groups of students following alphabetical order of surnames. The list of problems to be solved during sessions will be published the first day of class. This list will be the guide of the practical work during the course.

Laboratory sessions will be distributed in different sessions during the course following the timetable published in the Virtual Campus of the subject. Lab teachers will generate the list of students and sessions to attend. All laboratory work will be done in groups of two students

Sessions cannot be recorded (images, video, audio) without the explicit permission from the teachers.

Communications and results of assessment will be published in the virtual campus subject space. This will be the default channel of communication between students and teachers. Any specific question must be address from and to an UAB institutional address.

 

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.


Assessment

Continous Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Lab evaluation 35% 2 0.08 5, 6, 1, 10
Problem assessment 15% 1.5 0.06 5, 6, 7, 8, 2, 4, 3, 9
2 theory test evaluations 50% 4 0.16 5, 7, 8, 2, 4, 3

Theory: 50% of the final grade; consists of two intermediate tests (or controls) where each test has a weight of 25% on the final grade. A minimum grade of 4 must be obtained in each partial to be averaged.

Problems: 15% of the final grade.

Practices: 35% of the final grade; 60% work done in the sessions and 40% validation test of practices. The validation test must be passed in order to pass the practices.

Students must have a minimum grade of 5 in theory and problems and a final global mark of 5.0 to pass the subject. In case of not obtaining this minimum, the numerical value in the student record will be the lower value between 4,5 and the average of the grades

The way in which each of the different parts of the subject (Theory, Problems and Practices) will be evaluated is detailed below:

Theory:

The evaluation of the theory part will be done with two intermediate tests (or controls). The day that each of these tests will be carried out, as well as its content will be indicated in the course planning sheets. The theory grade will be obtained from the average of the two theory tests. On the day of the second test, the first test cannot be recovered.

Problems:

In the schedule of the subject, specific sessions will be defined where it will be necessary to make a delivery prior to the session of problems through the virtual campus. These exercises will be delivered and self-evaluated individually initially and, in some cases, reviewed by the problem teacher in a second phase. The delivery of the problems and their self-evaluation is mandatory for all students and the final grade of problems will be obtained from calculating the average of adding the marks of all the deliveries made and self-evaluated divided by the total number of scheduled delivery sessions. Deliveries of problems are not recoverable.

Practices:

To sign up for the practice shifts, the corresponding application will be used on the Virtual Campus. The activation date of the internship groups to be able to register effectively will be made public through a news in the subject space in the CV. Until that moment, only the schedules and days of the sessions of the different groups can be consulted. Attendance and punctuality in all practice sessions is mandatory for all members of the group.

To pass the practices it is mandatory TO HAVE ATTENDED ALL THE PRACTICAL SESSIONS, their correct functioning, the verification by the responsible teacher, answer the questions of the teacher individually and the presentation, within the established deadlines, of a written report, detailing:

Objective of the practice.
Description and approach of the question or program (design of the proposal and justification with organigram or pseudo-code).
Explanations to the questions made in the sessions detailing the reason for the answer
Description of the procedures used at the functional level.
Description of the problems that arise during the practice and the solutions found. Conclusions drawn from the realization of the practice.
Source code of the practice.
Compilation procedures with the description of the options that allow the teacher to obtain the executable from the source code.

The teachers of practices will carry out an individual evaluation of each student where different aspects will be taken into account, such as the attitude to the sessions, the technical level of the work carried out, the participation in the laboratory sessions, the answers to the questions raised and the explanations and comments made in the reports.

An individualwritten test will be planned to evaluate the work carriedout in the laboratory. This test will be valued as 40% of the internship mark. The validation test must be passed in order to pass the practices. Internship deliveries are not recoverable.

The practices approved in the previous course will be validated as long as the teacher of theory of the subject is requested during the first week of the course.

b) Programming of evaluation activities

The planning of the evaluation activities will be given on the first day of the subject and will be made public on the Virtual Campus and on the website of the School of Engineering, in the exam section. These dates may be subject to programming changes for reasons of adaptation to possible incidents; these changes will always be reported on the virtual campus, since it is understood that it is the usual mechanism of exchange of information between teacher and students.

c) Recovery process:

Those students who, despite making continuous evaluation, have not reached the minimum necessary to pass the subject, will have the option of a revaluation exam of the Theory part. Students will need a minimum score of 3.0 in each of the theory partial exams to re-examinate.

Regarding theory, the exam will consist of two different parts corresponding to the two controls carried out during the course. The student must always be examined of the previously graded parts with a grade lower than 5.0. The maximum grade that can be obtained in the recovery is 7. The mark that will be taken into account to obtain the final theory grade will be that of the last exam carried out. It is necessary to obtain a minimum grade of 5.0 final revaluation to pass the theory and be able to make the weighted average with the other grades of the subject.

The work delivered to the sessions of problems and laboratory practices, given its nature of continuousevaluation, cannot be recovered.

d) Procedure for reviewing grades

For each evaluation activity, a physical or virtual space, date and time of review will be indicated where students will be able to review the activity with the teacher. If students do not submit to this scheduled review, this activity will not be reviewed later.

e) Qualifications

Honor Enrolment: A student will be able to obtain the Distinction mark provided that the final grade of the subject is 9 or higher and taking into account the maximum percentage of Honors that can be awarded according to the regulations of the UAB.

Since the evaluation methodology is continuous, the fact that any delivery of any evaluable evidence (exercise of problems, control, practices...) is interpreted as an express will to present itself to the subject and, therefore, to be evaluated with a different grade of Not Evaluable (NA). An NA grade can only be obtained by not delivering any evaluable evidence throughout the course.

It should also be noted that in all areas, but especially the university, for all exercises, the correct formal oral or written expression is an essential piece. Therefore, this will be part of the evaluation, issues such as spelling errors and other inaccuracies in the expression will be penalized, up to a maximum of 20% for each evaluable document.

f) Irregularities by the student, copy and plagiarism

Without prejudice to other disciplinary measures that are considered appropriate, and in accordance with current academic regulations, irregularities committed by a student that may lead to a variation of the grade in an evaluable activity will be graded with a zero (0). The evaluation activities qualified in this way and by this procedure will not be recoverable. If it is necessary topass any of these evaluation activities to pass the subject, this subject will be suspended directly, without opportunity to recover it in the same course. These irregularities include, among others:

The total or partial copy of a practice, report, or any other evaluation activity. Let copy.
Present a group work not done entirely by the members of the group (applied to all members, not only those who have not worked).
Present as own materials prepared by a third party, even if they are translations or adaptations, and in general works with non-original and exclusive elements of the student.
Use communication devices (such as mobile phones, smart watches, ballpoint pens with camera, etc.) accessible during individual assessment tests.
Talk with colleagues during the evaluation tests of theory or individual practice (exams) using any virtual means.
Copy or try to copy other students during the theoretical and practical evaluation tests (exams).
Use or attempt to use material related writings during the performance of assessment tests (exams), when these are not explicitly allowed.

In summary: copying, letting copy or plagiarizing (or attempting to) in any of the evaluation activities is equivalent to a FAIL, not compensable, without opportunity to recover it in the same course and without validation of parts of the subject in subsequent courses.

g) Evaluation of repeating students

Students in the second call must make all the deliveries of problems and practices in a mandatory way to be able to pass the subject.

h) Single assessment.

The single assessment of the subject will consist of the following evaluation activities:
Theory: theory exam, 50% on the final grade
Problems: exam of problems, 15% on the final grade
Internships: practical exam, 35% on the final grade.

Recovery: the same recovery system will be applied as for continuous assessment

Review of the final grade: The review of the final grade follows the same procedure as for continuous assessment.



i) Use of AI

It has been established that the use of artificial intelligence is strictly restricted to educational and learning purposes. However, it is expressly forbidden to deliver any exercise prepared with assistance from AI without justifying and without indicating how it has been used. Failure to comply with this rule will imply the qualification of zero (0) in the corresponding activity.



j) Participation in class

In order to encourage the participation of students in class, a mechanism is proposed to reward this participation:

In the theory classes, participation through interesting questions or adequately answering the questions raised by the teachers will have a reward of 0.01.

With this reward a multiplication factor of the theory note is created:

Note theory final note theory(1+participation)

Where each participation will count 0.01. At most, the factor 1.5 (50 participations) can be reached at most. These participations must be made in the theory group where the student belongs.


Bibliography

Teoria:

  • "Sistemas Operativos", Pedro de Miguel Anasagasti, Fernando Pérez Costoya. D. Arquitectura y Tecnología de Sistemas Informáticos, ETSE, UPM. 2016. Bajo licencia Creative Commons NoComercial CompartirIgual 4.0.
  • "Sistemas Operativos: una visión aplicada". Tercera edición. Jesús Carretero Pérez, Félix García Carballeira, Fernando Pérez Costoya, 2021.
  • "Operating System Concepts", Avi Silberschatz, Peter Baer Galvin, Greg Gagne, Tenth Edition, John Wiley & Sons, Inc, April 2018, ISBN: 978-1-119-32091-3 (e-book)
  • "Sistemas Operativos". William Stallings, 5a Edición Prentice Hall 2005

Pràctiques:

  • "El entorno de programación Unix", R. Pike & Brian Kernighan, Ed. Mc. Graw-Hill
  • "Docker in Practice". Ian Miell. Aidan Sayers. Manning 2019. Disponible a la biblioteca com e-book
  • "Advanced Unix programming", Rockind M. Ed. Prentice-Hall
  • "Administración avanzada del sistema operativo GNU/Linux". Remo Suppi, Josep Jorba. Universitat Oberta de Catalunya, setiembre 2014. http://hdl.handle.net/10609/61266

Software

In the subject, we will use the latest version of the following tools and systems:

-Windows 11 with PowerShell 7 and WSL

-Ubuntu Linux v. 20

-Docker containers


Groups and Languages

Please note that this information is provisional until 30 November 2025. You can check it through this link. To consult the language you will need to enter the CODE of the subject.

Name Group Language Semester Turn
(PAUL) Classroom practices 411 Catalan/Spanish first semester morning-mixed
(PAUL) Classroom practices 412 Catalan/Spanish first semester morning-mixed
(PAUL) Classroom practices 431 Catalan/Spanish first semester morning-mixed
(PAUL) Classroom practices 432 Catalan/Spanish first semester morning-mixed
(PAUL) Classroom practices 451 Catalan/Spanish first semester afternoon
(PAUL) Classroom practices 452 Catalan/Spanish first semester afternoon
(PLAB) Practical laboratories 411 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 412 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 413 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 414 Catalan/Spanish first semester afternoon
(PLAB) Practical laboratories 415 Catalan/Spanish first semester afternoon
(PLAB) Practical laboratories 416 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 417 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 418 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 419 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 420 Catalan/Spanish first semester afternoon
(PLAB) Practical laboratories 421 Catalan/Spanish first semester morning-mixed
(TE) Theory 41 Catalan/Spanish first semester morning-mixed
(TE) Theory 43 Catalan/Spanish first semester morning-mixed
(TE) Theory 45 Catalan/Spanish first semester afternoon