Servizi per la didattica
PORTALE DELLA DIDATTICA

Operating systems

04JEZOQ

A.A. 2021/22

2021/22

Operating systems

The course focuses on the basics of the operating systems architecture, with a particular emphasis on operating systems for embedded systems, along with their corresponding development frameworks. The course will also cover issues related with real-time embedded systems and their communication with dedicated hardware components.

Operating systems

The course overviews the architecture of an operating system (OS), along with its corresponding development frameworks., with emphasis on Unix-based OS. This includes the analysis of the OS internal organization in relation to the underlying hardware infrastructure and the analysis of the services provided to the application software.

Operating systems

• Knowledge of the kernel structure and organization of an operating system • Knowledge of virtual memory mechanism • Knowledge of process scheduling and parallel execution threads • Skill for using system calls for the creation, synchronization and termination of processes and threads • Skill to understand device drivers • Skill to understand and implement programs based on system calls • Skill for using embedded systems development tools: cross-compilers, emulators, debuggers, profilers, virtualizers.

Operating systems

• Knowledge of the kernel structure and organization of an operating system • Knowledge of virtual memory mechanism • Knowledge of process scheduling and parallel execution threads • Skill for developing operating systems modules • Skill for using system calls for the creation, synchronization, and termination of processes and threads • Skill to understand and implement programs based on system calls • Skill for using embedded systems development tools: cross-compilers, emulators, debuggers, profilers, virtualizers.

Operating systems

• Knowledge of a computer system architecture: in particular structure of the CPU and memory • Knowledge of the interrupt mechanism and basics of an Assembler language • Knowledge of the main data type structures and algorithms • Good programming skill in C language

Operating systems

• Knowledge of a computer system architecture: in particular structure of the CPU and memory • Knowledge of the interrupt mechanism and basics of an Assembler language • Knowledge of the main data type structures and algorithms • Good programming skill in the C language

Operating systems

Operating system architecture (0.5 CFU) - Operating systems classification - Structure of an operating system in terms of resources and corresponding management modules. - The OS Kernel: possible organizations. - Process types Processes and Threads (2.1 CFU) - Processes: definition and types - Concurrent processes - Process management - Process scheduling - Process synchronization and synchronization primitives - Inter-Process Communication Memory management, virtualization (0.4 CFU) - Segmentation and Paging - Virtual memory Embedded Systems (1 CFU) - Introduction to Real Time systems - Development tool-chains for embedded systems - Challenges in device-drivers design

Operating systems

Operating system architecture (0.5 CFU) - Operating systems history - Operating systems classification - Structure of an operating system in terms of resources and corresponding management modules. - The OS Kernel: possible organizations. - Process types Processes and Threads (2.1 CFU) - Processes: definition and types - Concurrent processes - Process management - Process scheduling - Process synchronization and synchronization primitives - Inter-Process Communication Memory management, virtualization (0.4 CFU) - Segmentation and Paging - Virtual memory OS Development (1 CFU) - Introduction to small academic-oriented OS - Development tool-chains for OS development - Challenges in OS modules design

Operating systems

Operating systems

Operating systems

The course is organized in lectures and laboratories. Lectures (4 credits) consist in the presentation and discussion of slides that will be available on the teaching portal prior the starting of the lessons. During the laboratory activity (2 credits) the students will solve problems, implementing programs in C language, related to the main topics of the courses.

Operating systems

The course is organized in lectures and laboratories. Lectures (4 credits) consist of the presentation and discussion of slides that will be available on the teaching portal prior to the starting of the lessons as well as tutorials on OS code development. During the laboratory activity (2 credits) the students will solve problems, implementing programs in C language, related to the main topics of the courses.

Operating systems

The slides used for the course will be made available to the students, through the official page of the course on the web site. The textbooks are the following: • Silberschatz, Galvin, Gagne, "Operating System Concepts", 9th Edition, John Wiley & Son, 2013 • Tanenbaum, Bos, "Modern Operating Systems", 4th Edition, Pearson, 2015

Operating systems

The slides used for the course will be made available to the students, through the official page of the course on the website. The textbooks are the following: • Silberschatz, Galvin, Gagne, "Operating System Concepts", Tenth Edition, John Wiley & Son, 2018 • Tanenbaum, Bos, "Modern Operating Systems", 4th Edition, Pearson, 2015

Operating systems

Modalitΰ di esame: Prova scritta (in aula); Elaborato progettuale in gruppo;

Operating systems

The examination consists of a written test and an oral verification. The written test (duration of 120 minutes with closed books) consists of two parts: • 4 exercises/questions on the topics of the lectures (4 points each exercise) • the solution to a problem using threads or concurrent programming in C language (16 points). Students can access to the oral exam only if the evaluation of the written exam is higher than 17. The oral verification will be on the topics of the lectures and on the verification of the program developed at the written exam. For the verification of the program, the student will have to provide the debugged and running code. The oral exam contributes to the final grade modifying the evaluation of the written exam in a range of ±4 points. The verification will be organized as a discussion in front of a PC where the student will be asked to: – Compile/Build the software – Run the software – Explain a piece of code taken at random from the source files – Possibly explain how and where to modify the code to change one of the program functionalities – Discuss the results.

Operating systems

Exam: Written test; Group project;

Operating systems

The examination consists of two parts. PART 1: a written test including 6 questions covering all topics analyzed during classes. This may include: (1) open questions, (2) multiple-choice questions, (3) exercises on specific topics (e.g., memory management), (4) development of small C functions based on system calls. Every question receives a score between 1 and 3 points (the score of each question will be published during the exam). The maximum score for this part of the exam is 16. The duration is of 90 minutes. PART 2: a project focusing on OS development carried out in a team (typically 2/3 members). Every year a set of topics will be assigned. Nevertheless, the students are free to propose other topics of interest. In particular, projects that join activities with other courses are welcome. When the project is ready the student must prepare a presentation of the work done highlighting the contribution of each member of the team to the results. In this phase, the students may be asked questions to assess their knowledge of the developed work. The maximum score for this part of the exam is 16. The project aims at assessing: - The ability to implement an OS component based on the requirements of the project - The efficiency of the implementation in terms of performance, memory usage, etc. - The ability of the students to work in a team - The ability of the students to present their work - The individual contribution of each student to the project. The minimum score to pass each part of the exam is 9 out of 16 points. PART1 and PART2 can be completed in different time frames.

Operating systems

Modalitΰ di esame: Prova scritta a risposta aperta o chiusa tramite PC con l'utilizzo della piattaforma di ateneo Exam integrata con strumenti di proctoring (Respondus); Elaborato progettuale in gruppo;

Operating systems

The examination consists of a written test and an oral verification. The written test (duration of 120 minutes with closed books) consists of two parts: • 4 exercises/questions on the topics of the lectures (4 points each exercise) • the solution to a problem using threads or concurrent programming in C language (14 points). Students can access to the oral exam only if the evaluation of the written exam is higher than 17. The oral verification will be on the topics of the lectures and on the verification of the program developed at the written exam. For the verification of the program, the student will have to provide the debugged and running code. The oral exam contributes to the final grade modifying the evaluation of the written exam in a range of ±3 points. The verification will be organized as a discussion in front of a PC where the student will be asked to: – Compile/Build the software – Run the software – Explain a piece of code taken at random from the source files – Possibly explain how and where to modify the code to change one of the program functionalities – Discuss the results. Student can optionally develop an homework in groups of a maximum of three students focused on modifying or implementing specific operating systems components (e.g., device drivers). the homework can provide up to 5 points to the students that will add to those of the remaining parts of the exam.

Operating systems

Exam: Computer-based written test with open-ended questions or multiple-choice questions using the Exam platform and proctoring tools (Respondus); Group project;

Operating systems

The examination consists of two parts. PART 1: a written test including 6 questions covering all topics analyzed during classes. This may include: (1) open questions, (2) multiple-choice questions, (3) exercises on specific topics (e.g., memory management), (4) development of small C functions based on system calls. Every question receives a score between 1 and 3 points (the score of each question will be published during the exam). The maximum score for this part of the exam is 16. The duration is of 90 minutes. PART 2: a project focusing on OS development carried out in a team (typically 2/3 members). Every year a set of topics will be assigned. Nevertheless, the students are free to propose other topics of interest. In particular, projects that join activities with other courses are welcome. When the project is ready the student must prepare a presentation of the work done highlighting the contribution of each member of the team to the results. In this phase, the students may be asked questions to assess their knowledge of the developed work. The maximum score for this part of the exam is 16. The project aims at assessing: - The ability to implement an OS component based on the requirements of the project - The efficiency of the implementation in terms of performance, memory usage, etc. - The ability of the students to work in a team - The ability of the students to present their work - The individual contribution of each student to the project. The minimum score to pass each part of the exam is 9 out of 16 points. PART1 and PART2 can be completed in different time frames.

Operating systems

Modalitΰ di esame: Prova scritta a risposta aperta o chiusa tramite PC con l'utilizzo della piattaforma di ateneo Exam integrata con strumenti di proctoring (Respondus); Elaborato progettuale in gruppo;

Operating systems

The examination consists of a written test and an oral verification. The written test (duration of 120 minutes with closed books) consists of two parts: • 4 exercises/questions on the topics of the lectures (4 points each exercise) • the solution to a problem using threads or concurrent programming in C language (14 points). Students can access to the oral exam only if the evaluation of the written exam is higher than 17. The oral verification will be on the topics of the lectures and on the verification of the program developed at the written exam. For the verification of the program, the student will have to provide the debugged and running code. The oral exam contributes to the final grade modifying the evaluation of the written exam in a range of ±3 points. The verification will be organized as a discussion in front of a PC where the student will be asked to: – Compile/Build the software – Run the software – Explain a piece of code taken at random from the source files – Possibly explain how and where to modify the code to change one of the program functionalities – Discuss the results. Student can optionally develop an homework in groups of a maximum of three students focused on modifying or implementing specific operating systems components (e.g., device drivers). the homework can provide up to 5 points to the students that will add to those of the remaining parts of the exam.

Operating systems

Exam: Computer-based written test with open-ended questions or multiple-choice questions using the Exam platform and proctoring tools (Respondus); Group project;

Operating systems

The examination consists of two parts. PART 1: a written test including 6 questions covering all topics analyzed during classes. This may include: (1) open questions, (2) multiple-choice questions, (3) exercises on specific topics (e.g., memory management), (4) development of small C functions based on system calls. Every question receives a score between 1 and 3 points (the score of each question will be published during the exam). The maximum score for this part of the exam is 16. The duration is of 90 minutes. PART 2: a project focusing on OS development carried out in a team (typically 2/3 members). Every year a set of topics will be assigned. Nevertheless, the students are free to propose other topics of interest. In particular, projects that join activities with other courses are welcome. When the project is ready the student must prepare a presentation of the work done highlighting the contribution of each member of the team to the results. In this phase, the students may be asked questions to assess their knowledge of the developed work. The maximum score for this part of the exam is 16. The project aims at assessing: - The ability to implement an OS component based on the requirements of the project - The efficiency of the implementation in terms of performance, memory usage, etc. - The ability of the students to work in a team - The ability of the students to present their work - The individual contribution of each student to the project. The minimum score to pass each part of the exam is 9 out of 16 points. PART1 and PART2 can be completed in different time frames.

Esporta Word


© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
Contatti