17926 - Operating Systems L-A

Academic Year 2007/2008

  • Teaching Mode: Traditional lectures
  • Campus: Cesena
  • Corso: First cycle degree programme (L) in Telecommunications and Electronic Engineering (cod. 0649)

Learning outcomes

The course introduces the fundamental issues that concern modern
operating systems, ranging from architectural and structural aspects to
functioning and dynamics, balancing theory and practice. The arguments
are exemplified taking as references three modern operating system
families, such as Unix (Linux), Windows (XP) and Mac OS X (Darwin /
Mach).
Besides the description of the classic issues, the course
introduces the students to the d design and programming of concurrent
software systems, using Java as the reference language for the practice.

Course contents

The course is composed by the following parts:

  • Introduction to modern Operating Systems
    • objectives, organisation, architectures
  • Services and functioning of Operating Systems
    • Process management
    • Memory management
    • I/O subsystems and network management
    • Protection and Security
  • System programming
    • Shell and script programming in Unix Shell (Bourne)
    • The C language
  • Design and implementation of an OS: MINIX
    • general architecture and implementation of some kernel parts
    • modification and extension of the kernel, and kernel re-compilation
  • Introduction to concurrent  programming
    • Multi-threded programming in Java

Readings/Bibliography

The reference textbook for the course is

- "Sistemi Operativi" (Ancillotti, Boari, Ciampolini, Lipari), McGraw-Hill, 2004
- "Operating Systems - Design and Implementation" (Tanenmaum,Woodhull), Prentice-Hall, 2006

Teaching methods

The course is developed in six hours per week, four for theory and two for practice.

Assessment methods

The final assessment is composed by two parts:

(1) written examination, composed by exercises about the content of the course
(2) practice, composed by a set of programs to be developed at home

The programs can be assigned and developed during the course - for students attending the course - or assigned and developed within the next week after the written examination.

Assessment weightings:
- 50% for the written examination
- 50% for the practice

Teaching tools

The main reference for the course content is the set of course notes
(slides) discussed during the lessons and available for download from
the course web site. For the practice, a laboratory with 80 computers
with different kind of OSs is available.

All the material is available on the ufficial web site of the course: http://corsi.ing2.unibo.it/SISOP0708

Links to further information

http://corsi.ing2.unibo.it/SISOP0708

Office hours

See the website of Alessandro Ricci