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

Operating Systems

Code: CC222     Acronym: CC222

Keywords
Classification Keyword
OFICIAL Computer Science

Instance: 2013/2014 - 2S

Active? Yes
Web Page: http://www.dcc.fc.up.pt/~slc/aulas/SO/1314/index.html
Responsible unit: Department of Computer Science
Course/CS Responsible: Bachelor in Geology

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
L:AST 0 Plano de Estudos a partir de 2008 3 - 7,5 -
L:B 1 Plano de estudos a partir de 2008 3 - 7,5 -
L:CC 33 Plano de estudos de 2008 até 2013/14 2 - 7,5 -
L:F 4 Plano de estudos a partir de 2008 3 - 7,5 -
L:G 0 P.E - estudantes com 1ª matricula anterior a 09/10 3 - 7,5 -
P.E - estudantes com 1ª matricula em 09/10 3 - 7,5 -
L:M 0 Plano de estudos a partir de 2009 3 - 7,5 -
L:Q 9 Plano de estudos Oficial 3 - 7,5 -
MI:ERS 69 Plano de Estudos a partir de 2007 2 - 7,5 -
Mais informaçõesLast updated on 2014-02-05.

Fields changed: Calculation formula of final grade, Melhoria de classificação, Bibliografia Complementar, Bibliografia Obrigatória, Componentes de Avaliação e Ocupação

Teaching language

Portuguese

Objectives

Acquisition of skills about the functions, architectures provided services, and the implementation of operating systems.
Development of system programming skills 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 current operating systems work, particularly Unix (Linux) and Windows;
  • How to write programs using the programming interface of an operating system;
  • How to implement parts of an operating system.

 

Working method

Presencial

Program

Exposition classes:

  • Revision of C programming concepts;
  • Organization, structure and functions of operating systems. System Programming.
  • Basic Concepts: characterization of an operating system, hardware interface, batch systems, buffering, spooling, multiprogramming, time-sharing, distributed and real-time operating systems;
  • Process management: notion of a process, operations with processes, scheduling;
  • Multithread support and multithreaded programming;
  • Interprocess communication and synchronization. Deadlocks and starvation;
  • Memory management: physical and logical address space, swapping, paging, segmentation, virtual memory;
  • File systems and storage management: file concept, operations on files, file organization and file representation in a disk, protection mechanisms;
  • Input/output (I/O) management: I/O devices, application I/O interface, buffering, direct memory access.

Practical classes:

  • Advanced programming in the Unix environment;
  • Implementation of parts of an operating system.

 

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
R. Bryant, D. O’Hallaron; Computer Systems: A Programmer’s Perspective, Addison Wesley, 2010. ISBN: 978-0136108047

Teaching methods and learning activities

In the lectures the fundamental concepts of operating systems are presented and discussed. The lectures are based on materials from the recommended bibliography. They encompass the presentation and discussion of example problems and case studies.

In the practical classes, students will get hands-on experience in programming over an operating system programming interface. Moreover, students will have two programming projects proposed for evaluation.

 

Software

Linguagem C (programação avançada; interface com sistema de operação)

keywords

Physical sciences > Computer science > Computer architecture
Physical sciences > Computer science > Computer systems

Evaluation Type

Distributed evaluation with final exam

Assessment Components

designation Weight (%)
Participação presencial 0,00
Teste 60,00
Trabalho laboratorial 40,00
Total: 100,00

Amount of time allocated to each course unit

designation Time (hours)
Estudo autónomo 102,50
Frequência das aulas 70,00
Trabalho laboratorial 30,00
Total: 202,50

Eligibility for exams

Students must attend over 3/4 of the lectures.

Calculation formula of final grade

Evaluation components:
1) Programming projects - Two programming projects that will be evaluated via special purpose exams (PP1 and PP2);

2) Exams - two written exams (E1 and E2).

The final grade (FG) is the weighted average of the grades obtained in the programming projects and in the written exams.

FG = 0.2*PP1 + 0.2*PP2 + 0.3*E1 + 0.3*E2

In the "época de recurso" there will be an additional written exam with two components R1 and R2, corresponding to the syllabus covered by the exams T1 and T2. The grades of T1 and T2 may be replaced by the ones obtained in R1 and R2, respectively.

Students may opt to be evaluated in only one or in both of the components R1 and R2. The final grade will be calculated as shown above, by replacing the components T1 and/or T2 by the the corresponding components R1 and/or R2.

Special assessment (TE, DA, ...)

Identical to the calculation of the final grade.

Classification improvement

Students can improve their grade according to the rules defined in section "Calculation formula of final grade".

 

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-09-25 at 23:11:46 | Acceptable Use Policy | Data Protection Policy | Complaint Portal