Operating Systems
Keywords |
Classification |
Keyword |
OFICIAL |
Operating Systems and Networks |
Instance: 2010/2011 - 2S
Cycles of Study/Courses
Acronym |
No. of Students |
Study Plan |
Curricular Years |
Credits UCN |
Credits ECTS |
Contact hours |
Total Time |
MIEIC |
164 |
Syllabus since 2009/2010 |
2 |
- |
6 |
56 |
162 |
Teaching language
Portuguese
Objectives
At the end of the semester, students should be capable of:
- describing the functions and structure of an operating system and identifying its main abstractions;
- understanding the functioning of the main components of an operating system, the way they interact with each other and the main algorithms used to implement them;
- using and exploring the application programming interface (API) and of a real operating system (UNIX/LINUX).
Program
INTRODUCTION TO OPERATING SYSTEMS
- Objectives and functions of an operating system
- Evolution of operating systems; structure of modern operating systems
- Abstractions supported by an operating system and their programming interface
- Hardware support and protection requirements
PROCESS MANAGEMENT
- Processes and threads; process status
- Scheduling strategies
- Concurrent execution: problems and solutions
- Synchronization mechanisms between processes
- Deadlocks
MEMORY MANAGEMENT
- Basic memory management: overlays, swapping and partitions
- Virtual memory systems: paging and segmentation
- Implementation of virtual memory; strategies for memory allocation/ release
INPUT/OUPUT SYSTEMS
- Input/output hardware and software
- Abstraction of differences between devices
FILE SYSTEMS
- File-system interface
- File-system implementation; disk management
SYSTEM PROGRAMMING (API, UNIX/LINUX) - covered along the course
- file and directory manipulation
- creation and control of processes and threads
- communication and synchronization among processes and threads
Software
Unix/Linux operating system
Development system in C
Mandatory literature
Avi Silberschatz, Peter Baer Galvin, Greg Gagne; Operating System Concepts (8th edition), John Wiley & Sons, Inc., 2008. ISBN: ISBN 0-470-12872-0
Robbins, Kay A.;
UNIX systems programming. ISBN: 0-13-042411-0
Miguel Pimenta Monteiro; O Sistema Operativo Unix - Alguns aspectos da sua API
Complementary Bibliography
Andrew S. Tanenbaum;
Modern operating systems. ISBN: 0-13-813459-6
William Stallings; Operating Systems: Internals and Design Principles, 6/E, Prentice Hall, 2008. ISBN: 0136006329
Richard W. Stevens, Stephen A. Rago; Advanced Programming in the UNIX Environment (2nd edition), Addison-Wesley Professional, 2005. ISBN: 0201433079
Stevens, W. Richard;
Unix network programming. ISBN: 0-13-081-081-9
José Alves Marques, Paulo Ferreira, Carlos Ribeiro, Luís Veiga, Rodrigo Rodrigues; Sistemas Operativos, FCA, 2009. ISBN: 978-972-722-575-0
Teaching methods and learning activities
-Theoretical classes: presentation of the themes of the course, based on the exercise resolution
- Practical classes: resolution of programming exercises using API of Unix/Linux
- Practical assignments: to be done out of the class period using the API.
Software
Sistema operativo LINUX
Sistema de desenvolvimento em C
Evaluation Type
Distributed evaluation with final exam
Assessment Components
Description |
Type |
Time (hours) |
Weight (%) |
End date |
Attendance (estimated) |
Participação presencial |
52,00 |
|
|
Exercises |
Teste |
40,00 |
|
2011-06-03 |
Programming projects |
Teste |
26,00 |
|
2011-06-03 |
Exam |
Exame |
2,00 |
|
2011-07-15 |
|
Total: |
- |
0,00 |
|
Amount of time allocated to each course unit
Description |
Type |
Time (hours) |
End date |
Theory and API |
Estudo autónomo |
26 |
2011-06-03 |
Exam preparation |
Estudo autónomo |
16 |
2011-07-15 |
|
Total: |
42,00 |
|
Eligibility for exams
To be admitted to exams students have to attend to 75% of the classes and have to achieve a minimum mark of 40% in the practical assignments.
Coutinuous Assessment= 0.5*AG1 + 0.5*AG2 (AG1 and AG2- Assignment grade)
Even though practical assignments are group assignments, students can be graded in a different way, depending on the professor opinion regarding their performance.
Students, who have attended to this course last year and have a passing mark in the continuous assessment component, can have the same grade and do not need to attend classes and to do the practical assignments. However, they need to inform the professor at the beginning of the semester.
Calculation formula of final grade
Final Mark= 0.5*CA + 0.5 *FE (CA- Continuous assessment; FE- Final Exam)
To complete the course, students have to achieve a minimum mark of 40% in both components.
Special assessment (TE, DA, ...)
Students with a special status will be assessed in the same way as ordinary students. They have to do all the assignments and deliver them on the scheduled dates.
Classification improvement
Students can only improve the mark of the continuous assessment component in the following year.
Students can improve the mark of the written exam at the corresponding seasons (according to the rules).
Observations
Previous knowledge: C programming language.
Groups are composed by two students, and exceptionally three students.