Go to:
Logótipo
You are in:: Start > CC2004

Operating Systems

Code: CC2004     Acronym: CC2004     Level: 200

Keywords
Classification Keyword
OFICIAL Computer Science

Instance: 2017/2018 - 2S

Active? Yes
Web Page: http://www.dcc.fc.up.pt/~ricroc/aulas/1718/so
Responsible unit: Department of Computer Science
Course/CS Responsible: Bachelor in Computer Science

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
L:B 1 Official Study Plan 3 - 6 56 162
L:CC 86 Plano de estudos a partir de 2014 2 - 6 56 162
L:F 0 Official Study Plan 2 - 6 56 162
3
L:G 0 study plan from 2017/18 2 - 6 56 162
3
L:M 0 Official Study Plan 2 - 6 56 162
3
L:Q 0 study plan from 2016/17 3 - 6 56 162
MI:ERS 131 Plano Oficial desde ano letivo 2014 2 - 6 56 162

Teaching language

Portuguese

Objectives

Provide students with the fundamental concepts of the theory and practice of the organization, structure and operation of an operating system.
Be able to implement parts of an operating system and write programs using the API of an operating system.

Learning outcomes and competences

At the end of the course, the students are expected to know:

  • A historical perspective of the evolution of operating systems;
  • How the major components of an operating system work;
  • How an operating system interfaces the hardware;
  • Different types and structure of operating systems;
  • The programming interface of an operating system;
  • How to write programs using the programming interface of an operating system;
  • How to implement parts of an operating system.

Working method

Presencial

Program

Basic Concepts
Organization, structure and typical functions of an operating system. Major components and services of an operating system.

Processes & Threads
Process concept. Process creation and termination. Process scheduling. Pipes. Thread concept. Main benefits and performance implications of multithreaded programming. User threads versus kernel threads. Thread creation, termination and cancelation.

Process Scheduling and Synchronization
Preemptive versus nonpreemptive scheduling. Scheduling criteria. Scheduling algorithms. Critical section problem. Mutual Exclusion. Locks and semaphores. Classical problems of synchronization. Starvation and deadlocks.

Memory Management and Virtual Memory
Logical and physical address space. Contiguous memory allocation. Internal and external fragmentation. Segmentation. Paging. Virtual address space. Page-replacement algorithms. Frame-allocation models.

File System and Storage Devices
File system organization, structure and layers. File concept. Directory structure and hierarchy. File allocation methods. Free-space management. HDD and SSD disks. Disk scheduling algorithms.

Mandatory literature

000106104. ISBN: 9780470233993 pbk
R. Stevens, S. Rago; Advanced Programming in the UNIX Environment, Addison-Wesley, 2005. ISBN: 978-0201433074

Complementary Bibliography

Tanenbaum Andrew S. 1944-; Modern operating systems. ISBN: 978-0-13-813459-4 pbk
000106107. ISBN: 9780273751502 pbk

Teaching methods and learning activities

In the lectures the fundamental concepts of operating systems are presented and discussed.

In the practical classes, students will get hands-on experience in programming over an operating system programming interface.

Evaluation Type

Distributed evaluation with final exam

Assessment Components

designation Weight (%)
Exame 70,00
Participação presencial 0,00
Teste 30,00
Total: 100,00

Amount of time allocated to each course unit

designation Time (hours)
Estudo autónomo 80,00
Frequência das aulas 56,00
Trabalho laboratorial 26,00
Total: 162,00

Eligibility for exams

Students must attend at least 2/3 of the practical classes.

Calculation formula of final grade

Students are assessed by their performance in the following components:

- Two practical exams to be realized during the semester. The grade of each is 3/20 (15% of the final grade).

- A written examination in the final of the semester. The grade of this component is 14/20 (70% of the final grade).

Examinations or Special Assignments

Students are assessed by their performance in the following components:

- Two practical exams to be realized during the semester. Each exam consists on implementing part(s) of a more wide project, developed in the weeks prior to the exam date, using the same tools and development environment.

- A written examination in the final of the semester consisting of questions similar to the ones solved during the theoretical and practical classes.
Recommend this page Top
Copyright 1996-2024 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2024-11-09 at 10:40:55 | Acceptable Use Policy | Data Protection Policy | Complaint Portal