Dipartimento di InformaticaUniversità degli Studi di Milano

Operating systems2012/13

BSc in Computer science and music · BSc in Digital communication · University of Milan · Lectures are in Italian · 6 credits · 48 hours

Archived edition: this page is kept for reference, and some materials or links may no longer be available.

This course explains the working of the fundamental components of a modern operating system.

News

  1. Results of the Operating system written test of January, 30th 2014 and oral test calendar

    The results of the Operating systems written test of 30/1 and the oral tests calendar are available.

  2. Place and time of the Operating systems written test of January 30, 2014

    The Operating systems written test of 30/1 will take place in aula Beta in Via Comelico starting from 8:30.

  3. Results of the Operating system written test of January, 16th 2014 and oral test calendar

    The results of the Operating systems written test of 16/1 and the oral tests calendar are available.

Earlier news (15)
  1. Place and time of the Operating systems written test of January 16, 2014

    The Operating systems written test of 16/1 will take place in aula Alfa in Via Comelico starting from 15:30.

  2. Results of the Operating system written test of September, 9th 2013 and oral test calendar

    The results of the Operating systems written test of 9/9 and the oral tests calendar are available.

  3. Place and time of the Operating systems written test of September 9, 2013

    The Operating systems written test of 9/9 will take place in aula Beta in Via Comelico starting from 15:00.

  4. Results of the Operating system written test of July, 23rd 2013 and oral test calendar

    The results of the Operating systems written test of 23/7 and the oral tests calendar are available.

  5. Place and time of the Operating systems written test of July 23, 2013

    The Operating systems written test of 23/7 will take place in aula Beta in Via Comelico starting from 8:30.

  6. Results of the Operating system written test of July, 4th 2013 and oral test calendar

    The results of the Operating systems written test of 4/7 and the oral tests calendar are available.

  7. Place and time of the Operating systems written test of July 4, 2013

    The Operating systems written test of 4/7 will take place in aula V3 in Via Venezian starting from 8:30.

  8. Results of the Operating system written test of June, 19th 2013 and oral test calendar

    The results of the Operating systems written test of 19/6 and the oral tests calendar are available.

  9. Place and time of the Operating systems written test of June 19, 2013

    The Operating systems written test of 19/6 will take place in aula beta in Via Comelico starting from 14:30.

  10. Schedule change for the Operating systems course

    Last class of the Operating systems course will be held on Monday 17/6 between 8:30 and 10:30 in aula 405.

  11. Cancellation of the Operating systems classe of 30/5

    30/5 class is canceled due to a conference.

  12. Office hours canceled

    Regular office hour are canceled until next semester; students can arrange an appointment via e-mail.

  13. Cancellation of the Operating systems classes of 16/5 and 22/5

    16/5 and 22/5 classes are canceled due to a EC project meeting.

  14. Office hours canceled

    Office hours of 2/5 and 9/5 are canceled; students can arrange an appointment via e-mail.

  15. Office hours canceled

    Office hours of 28/02 are canceled; students can arrange an appointment via e-mail.

Course schedule

Lectures will take place at the educational sector of Città studi, according to the following schedule:

Day Hour Place
Wednesday 8:30 - 10:30 aula 405
Thursday 8:30 - 10:30 aula 405

Any change to the schedule will be announced in class and published in paragraph News of this page.

Office hours

By appointment, room 5015 of the Computer Science Department. It is possible contact the teacher by e-mail, taking care to read in advance the guide prepared by Prof. Sebastiano Vigna and clearly specifying in the message the course name and the academic year. In particular, students are encouraged to always use their academic address (i.e. based on the domain studenti.unimi.it) signing with name and student ID number and recalling that the response time may vary depending on the teacher commitments.

Course material

The course is mainly based on the following textbook: A. Silberschatz, P. B. Galvin, G. Gagne, Operating Systems Concepts, 8th Edition, International Student Version, Wiley, 2009 (ISBN 978 - 0-470-23399-3).

Students who are not familiar with the C programming language may refer to the historical text: B. W. Kernighan, D. M. Ritchie, The C Programming language, Prentice Hall, 1988 (ISBN 0-13-110362-8). A more in-depth text is K. N. King, C Programming - A Modern Approach, second edition, W. W. Norton (ISBN 978-0-393-97950-3).

Multi-process code is covered by the textbook and the paper Delve into UNIX process creation.

C sockets are covered by the howto Sockets tutorial.

Shell scripts are explained in the tutorial BashGuide.

Syllabus

The course roughly covers the textbook contents in chapters 1 to 12, as well as the contents of the remaining documents listed in Course material. The syllabus will be updated after the end of the lectures.

Lectures calendar

Lecture Date Topic Material
L01 06/03/2013 Review of computer architecture
    L02 07/03/2013 Introduction to the C language
      L03 13/03/2013 Introduction to the C language
        L04 14/03/2013 Operating systems structures
          L05 20/03/2013 Operating systems structures
            L06 21/03/2013 Concurrent processes
            L07 27/03/2013 Concurrent processes
              L08 04/04/2013 CPU management
                L09 10/04/2013 CPU management
                  L10 11/04/2013 Shared memory and pipes
                    L11 17/04/2013 Sockets
                      L12 18/04/2013 Threads
                      L13 24/04/2013 Synchronization
                        L14 02/05/2013 Semaphores
                          L15 08/05/2013 Deadlock detection and prevention
                            L16 09/05/2013 Deadlock avoidance and removal
                              L17 15/05/2013 Memory management and contiguous memory allocation
                                L18 23/05/2013 Pagination
                                  L19 29/05/2013 Segmentation. Virtual memory
                                    L20 05/06/2013 Algorithms for page replacement
                                      L21 06/06/2013 Virtual memory implementation
                                        L22 12/06/2013 File system. Directory structure and protection
                                          L23 13/06/2013 File system implementation
                                            L24 17/06/2013 Low-level I/O

                                              Exam modalities

                                              The exam consists in a written test (canceled in case a sensibly low number of students) followed by an oral one.

                                              Exam sessions

                                              Session Date Results
                                              June 19/06/2013 Results
                                              July 04/07/2013 Results
                                              July 23/07/2013 Results
                                              September 09/09/2013 Results
                                              January 16/01/2014 Results
                                              January 30/01/2014 Results