PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

Elenco notifiche



Operating systems for embedded systems

02NPSOV

A.A. 2023/24

Course Language

Inglese

Degree programme(s)

Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino

Course structure
Teaching Hours
Lezioni 32
Esercitazioni in aula 28
Esercitazioni in laboratorio 20
Tutoraggio 20
Lecturers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Di Carlo Stefano Professore Ordinario IINF-05/A 32 0 0 0 4
Co-lectures
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 8 B - Caratterizzanti Ingegneria informatica
2023/24
The course is taught in English. This course is part of the Master Degree in Computer Engineering, focused on Embedded Systems, and it is eligible course for the Master Degree in Mechatronic Engineering. The course aims at deepening the concepts acquired during the Operating Systems course, describing the peculiarities of embedded systems, of the dedicated development tools, and outlining the peculiarities of some operating systems for embedded systems that are particularly relevant (process scheduler, OSEK/VDX, AUTOSAR, Linux). The course will also deepen the concepts of real-time embedded systems, and the issues of communications with ad-hoc hardware components.
The course is conducted in English and is included in the curriculum of the Master's Degree program in Computer Engineering, with a specific focus on Embedded Systems. Its main objective is to enhance the understanding of concepts learned in the Operating Systems course by exploring the unique characteristics of embedded systems. This includes delving into dedicated development tools and examining specific operating systems relevant to embedded systems, such as (micriumOS, freeRTOS, OSEK/VDX, and Embedded Linux). The course also provides a comprehensive study of real-time embedded systems, communication challenges with specialized hardware components, and an overview of security issues associated with operating systems.
- Concept of embedded system. - Understanding of the development tools for embedded systems: cross-compiler, emulator, debug tools, profiling tools, virtualization tools. - Concept of real-time embedded systems. - Understanding of examples of operating systems for embedded systems. - Skill for the development of modules for the communication with ad-hoc hardware components.
Students will acquire knowledge, varying in depth depending on the specific topic, as well as skills and a profound comprehension of the mechanisms and motivations underlying the following technologies and solutions: - Concept of embedded system. - Understanding of the development tools for embedded systems: cross-compiler, emulator, debug tools, profiling tools, and virtualization tools. - Concept of real-time embedded systems. - Understanding of examples of operating systems for embedded systems. - Skill for developing modules for communication with ad-hoc hardware components. - Understanding security issues in the embedded domain.
- Ability to develop programs in C language. - Knowledge of the architecture of computer-based systems: in particolar knowledge of processor architecture and memory organization. - Knowledge of the interrupt mechanisms, and basic knowledge of assembly programming.
- Ability to develop programs in C language. - Knowledge of the architecture of computer-based systems: in particular, knowledge of processor architecture and memory organization. - Knowledge of the interrupt mechanisms and basic knowledge of assembly programming.
Introduction to Embedded Systems (0.5 CFU) - Classification with respect to desktop systems. - Memory technology device. Development tools (0.5 CFU) - Cross-compiler. - Emulator. - Debugger. - Profiler. - Virtual platforms. Operating Systems for Embedded Systems (4 CFU) - Real time and process scheduling. - Analysis of the architecture and services offered by operating systems for embedded: process scheduler, VxWorks, OSEK/VDX, AUTOSAR, Linux. - Anatomy of an operating system for embedded systems. Programming of an embedded OSEK/VDX system (1 CFU): - I/O management, and device drivers. - Use of an evaluation board. - Building a OSEK/VDX operating system for embedded systems: how to use development tools. - Design and development of device drivers for custom devices. Advanced tools for debugging and profiling of embedded systems (1 CFU) AUTOSAR concept, and AUTOSAR basic software architecture (1 CFU):
Introduction to Embedded Systems (0.5 CFU) - Classification with respect to desktop systems. - Memory technology device. Development tools (0.5 CFU) - Cross-compiler. - Emulator. - Debugger. - Profiler. - Virtual platforms. Operating Systems for Embedded Systems (3 CFU) - Real-time and process scheduling. - Analysis of the architecture and services offered by operating systems for embedded: process scheduler, micriumOS, OSEK/VDX, Embedded Linux. - Anatomy of an operating system for embedded systems. Operating System Security (1 CFU) - HW/SW attack models - Countermeasures Programming of an embedded OS (2 CFU): - I/O management and device drivers. - Use of an evaluation board. - Building an OS for embedded systems: how to use development tools. - Design and development of device drivers for custom devices. Advanced tools for debugging and profiling embedded systems (1 CFU)
The course is organized in lectures and exercises in class, and practical exercises in laboratory. The topics are presented during formal lectures/exercises in class, and then are addressed from the practical point of view in the following week.
The course combines traditional classroom lectures with supervised exercise sessions, providing students with the opportunity to apply the concepts learned in practical scenarios and engage in discussions with the instructor. Additionally, certain topics within the course include dedicated lab sessions, allowing students to observe the practical implementation of related technologies and reinforce their understanding of the concepts covered in the lectures. The course is divided into two main components: classroom lectures and exercises, which account for 6 CFU (Crediti Formativi Universitari), and laboratory sessions, which contribute 2 CFU. Additionally, students will have the opportunity to be tutored for an amount of 2 CFU.
Notes provided by the teacher. Additional reading: A. Berger Embedded Systems Design: An Introduction to Processes, Tools and Techniques CMP Books, 2001, ISBN-10: 1-57-820073-3 Silbershatz A., Galvin. P., Gagne G. Operating Systems 8th Edition, Wiley, 2009, ISBN: 978-0-470-12872-5
Notes provided by the teacher. Additional reading: A. Berger Embedded Systems Design: An Introduction to Processes, Tools, and Techniques CMP Books, 2001, ISBN-10: 1-57-820073-3 Silbershatz A., Galvin. P., Gagne G. Operating Systems 8th Edition, Wiley, 2009, ISBN: 978-0-470-12872-5
Slides; Esercizi; Esercizi risolti; Esercitazioni di laboratorio; Esercitazioni di laboratorio risolte; Video lezioni dell’anno corrente;
Lecture slides; Exercises; Exercise with solutions ; Lab exercises; Lab exercises with solutions; Video lectures (current year);
Modalità di esame: Prova scritta (in aula); Prova orale obbligatoria; Elaborato progettuale in gruppo;
Exam: Written test; Compulsory oral exam; Group project;
... Exam Written exam lasting 60 minutes, closed books, composed of questions on the exam content, and numerical exercises to apply the theory presented in class. The maximum score for this part is 33. Assignment Students will be asked to deliver a group assignment (2 persons per group) to be developed during the semester, describing the activities done in lab. The maximum score for this part is 33. The final grade is obtained using the following weights: 70% for the written exam, 30% for the assignment. In case the final grade is 33/30, 30L will be recorded.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Written test; Compulsory oral exam; Group project;
(ANY MINOR CHANGES TO THESE POLICIES/PROCEDURES WILL BE TIMELY COMMUNICATED TO THE STUDENTS) The examination consists of two components. PART1: This part entails a written test that covers all the topics discussed in class. The test may include various types of questions, such as open-ended questions, multiple-choice questions, exercises focusing on specific topics, and the development of small programs. Each question is assigned a score, which is announced during the exam. The maximum score achievable in this part is 16, and the duration of the test is 60 minutes. PART2: The second part involves a project that emphasizes the application of the concepts learned in class and enhances the student's ability to independently find documentation and acquire new skills beyond the scope of the course. Each year, a set of topics will be assigned, but students are also encouraged to propose their own topics of interest. Projects that involve collaborations with other courses are particularly welcome. Once the project is completed, students are required to present it during an oral exam session, highlighting each team member's contribution to the results. The project aims to assess: - The student's proficiency in implementing and developing embedded applications. - The efficiency of the implementation. - The student's ability to work effectively in a team. - The student's presentation skills. - The individual contributions of each student to the project. To pass each part of the exam, a minimum grade of 9 out of 16 points is required. The final grade is determined by summing up the grades obtained in PART 1 and PART 2. The highest distinction, "Laude," is awarded if the total grade equals 32. PART 1 and PART 2 can be completed within different timeframes. However, PART 2 must be finished within one year (prior to the start of the next course edition). If PART 2 is not submitted, students can still pass the exam based solely on the written test (PART 1). However, the highest grade attainable in this case would be 22, calculated as follows: Grade = (written exam grade) * 22 / 16. Note: This implies that the minimum grade required in PART 1 to pass the exam is 13.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word