Code: 21174
Departament: Department of Sciences and Technology
Field of Study: Information and Communication Technologies
Vitor Rocio
Área Científica: Computer Science; Computer Engineering.

Course Description:
In this curricular unit will be the identification and characterization of the various paradigms of computational systems, in addition to the description as the layers of computational systems articulate each other. It will be explained how a program or protocol can be expressed with a state machine, distinguish between sequential and parallel execution, and its performance-level implications, in addition to identifying and practicing system administration principles.

At the end of this learning unit, the student will be able to:
Identify and characterize the various computational systems paradigms
Describe how the layers of computational systems articulate among themselves
Explain how a program or protocol can be expressed as a state machine
Develop machine state descriptions for simple problems
Distinguish between sequential and parallel execution, and their implications performance-wise
Identity and practice the principles of systems administration.

Computational paradigms
Abstraction layers and operating systems
States and state machines
Parallelism and distribution
Principles of systems administration

David Patterson, John Hennessy. Computer Organization and Design, revised 4th edition, Morgan Kaufman, 2011.
Randal Bryant, David O'Hallaron. Computer Systems, Prentice Hall, 2011.
Aeleen Frisch. Essential System Administration. O’Reilly, 2002.


Workload (hours): 108
Contact Hours: 18

Continuous assessment is privileged: 2 or 3 digital written documents (e-folios) during the semester (40%) and a presence-based final exam (p-folio) in the end of the semester (60%). In due time, students can alternatively choose to perform one final presence-based exam (100%).

Language(s) of Instruction: Portuguese.

Contact for virtual mobility students: Communication and International Relations Office –