Distributed Systems and Applications (SAR)
The objective of the SAR program is to train specialists in the design and development of distributed systems who are capable of understanding and implementing the methods, techniques and mechanisms of the discipline. It draws on the expertise of the following institutions:
- the Computer Science Laboratory of Sorbonne University (LIP6),
- the Information Processing and Communication Laboratory (LTCI) of Télécom ParisTech (formerly ENST),
- the Institute for Research and Coordination of Acoustics/Music (IRCAM).
Presentation
Distributed systems and applications are sets of components that cooperate to achieve a common goal and run on different machines connected in a network, exchanging data. The Internet is a typical case of a distributed system: each component (browser, general server or provider of specific services) contributes to the creation of services offered to users. Other applications can be cited, such as the use of "grids of machines" to perform complex calculations. Note that the most powerful machines in the world are almost all assemblies of sometimes several hundred "PC" type computers; the applications that run on these systems use the network intensively and are seen as distributed applications.
The design and development of these systems is a difficult problem that requires:
- infrastructures capable of supporting cooperation between system components,
- applications whose behavior must remain correct regardless of the execution conditions,
- consideration of constraints (real-time, memory footprint or any other constraint) in the execution.
The UE of the SAR course are organized according to three main themes, which can be freely combined to acquire the skills required in the target professions of the course:
- Systèmes d'exploitation (Operating systems) (OS),
- Algorithmique et programmation dans le contexte réparti (Algorithms and programming in the distributed context) (AP),
- Systèmes critiques (Critical Systems) (SC).
These themes centered on system execution infrastructures are at the heart of today's IT.
In addition to these themes, a specific course focusing on musical applications is offered from the second year onwards: Acoustics, signal processing and computer science applied to music. This multidisciplinary course combines computer science with acoustics and signal processing. It is briefly described in the second year program.
Program
This table summarizes the structure of the courses in M1 and M2:
You will find more details in the three tabs below:
First semester (M1-S1)
The first semester provides basic knowledge in the field of distributed systems and applications, with two compulsory courses:
- Advanced architecture of system kernels (NOYAU),
- Distributed and Concurrent System Programming (PSCR).
The three complementary courses can be chosen within the other courses, according to the following modalities
- As the SAR course is thematically close to the RES, STL and SESI courses, it is natural to choose additional UEs from these courses. Suggested courses are ARES (RES), ARCHI 1 (SESI), DLP and ALGAV (STL). The MLBDA UE of the DAC course can also be chosen for the introduction to databases.
- For students who wish to apply to the ATIAM course in M2, it is recommended in addition to the General Acoustics UE (from M1 Acoustics) and the SIGNAL UE (SESI).
- Considering the common system of the Master of Computer Science, it is possible to change program at the end of the first semester provided that the two compulsory courses of the program in question have been validated.
Second semester (M1-S2)
The second semester enables students to deepen their knowledge in the field of distributed systems and applications. Students must choose at least 4 UEs from the SAR path and can complete their course with a UE from another path if they wish. The recommended introductory courses are PERI (SESI), HPC (SFPN) or BDR (DAC).
The objective of the second year of the SAR program is to provide students with advanced skills in the areas of distributed systems and applications.
The courses of the third semester (M2-S3) aim to consolidate the theoretical and technological knowledge of students by teaching them the latest advances in the fields of distributed systems and applications. The design of the UE allows students to compose a set of specific competencies, according to their targeted profession (see the list of UEs in the tab below for more details).
The fourth semester (M2-S4) concludes the training with a minimum 5-month internship, which can take place in a company or research center (industrial or academic). Internships abroad are also possible.
The ATIAM course
The "Acoustics, signal processing and computer science applied to music" program is intended for students who wish to learn about research and technology in three fields of science applied to music: acoustics, computer science and signal processing. To enter this program in the second year, students must have completed an M1 (from UPMC or another institution) in one of these three fields, with additional courses in the others.They must also justify their knowledge and practice of music and/or musicology, which will be evaluated by the teaching staff.
The second year of the course is attached to the two programs of Computer Science or Engineering Sciences, including two UEs of the SAR master (IM and PAM) and three UEs of the Engineering Sciences program. It takes place mainly at IRCAM, which provides a classroom, a coordinator, a specific secretary, computer resources, a media library, and access to its conferences and seminars. More information can be found here.
You will find the UEs proposed by the SAR course listed below, with a column specifying the themes: operating systems (OS), algorithmic and distributed programming (AP), critical systems (SC, green background) or music applications (AM, reserved for the ATIAM course).
First semester (M1-S1)
Acronym | Title | Person in charge | ECTS | Theme |
NOYAU | Advanced architecture of operating system kernels | P. Sens | 6 | OS |
PSCR |
Distributed and concurrent system programming |
B. Folliot | 6 | AP |
Second year (M1-S2)
Acronym | Title | Person in charge | ECTS | Theme |
AR | Distributed Algorithms | F. Petit | 6 | AP |
PNL | Programming in the heart of the Linux kernel | J. Sopena | 6 | OS |
PSAR | SAR Project | P. Sens | 6 | |
SAS | Security and system administration | F. Legond-Aubry | 6 | AP |
SFTR | Security, reliability and real-time | E. Encrenaz | 6 | SC |
SRCS | Distributed systems and clients/servers | J. Lejeune | 6 | AP |
Troisième semestre (M2-S3)
Acronym | Title | Person in charge | ECTS | Theme |
ARA | Advanced Distributed Algorithms | L. Arantes | 6 | AP |
ASTRE | Distributed real-time embedded applications and systems | N. Sznajder | 6 | SC |
DEVREP | Methods and software tools for the development of distributed applications | T. Ziadi | 6 | AP |
SAS | Security and system administration | F. Legond-Aubry | 6 | AP |
NMV | Multi-core kernels and virtualization | J. Sopena | 6 | OS |
Introduction of the themes from the other courses
The figure below lists the UEs that could complete the SAR themes with introductions to other fields of application. This list is indicative and each pedagogical contract must be discussed at the beginning of the semester with the people in charge according to your professional objectives.
Target audience and prerequisites
The SAR program is intended for students with a Bachelor's degree in Computer Science (or equivalent). It is also be open to students who have completed their first year of a Master's degree in another French or foreign school or university.
To enter the SAR program, you must have an interest in applications with a strong focus on systems (Internet applications, parallel or distributed applications, real-time or embedded applications, databases, etc.).
The prerequisites for the first year for SAR are the knowledge and concepts acquired at the level of a bachelor’s degree in computer science. However, these prerequisites are centered on the basic notions of systems (use and mechanisms), networks and architecture. Strong knowledge of imperative and object programming techniques is necessary while concepts of concurrent programming are recommended.
The figure below summarizes the prerequisites to follow the SAR pathway. The mandatory knowledge (presented in the middle of the figure) defines the body of necessary concepts. Recommended skills (shown on the periphery) are also encouraged depending on the pathway chosen.
Opportunities
The objective of the Distributed Systems and Applications (RSA) program is to train specialists in the design and development of distributed systems who are capable of understanding and implementing the methods, techniques and mechanisms of the discipline. There are career opportunities in both the industrial world and research centers (industry or university).
Opportunities in the industrial world include experts in the development of infrastructures for distributed systems, the design/realization of distributed and/or embedded applications, the integration of systems and the design and implementation of distributed databases.
Opportunities within the academic world are doctorates in the following fields: operating systems and virtualization; large-scale distributed systems and algorithms; modeling/analysis/realization of reliable distributed applications (i.e. whose behavior is deterministic); analysis/creation of partially embedded distributed systems subject to real-time constraints and music computing (taking into account multi-media aspects).
The image below offers some examples of companies that have hired students (interns and/or graduates) in recent years.
Contacts
Secretary
Sandra Morais Pinto
Couloir 24-25, 2e étage, bureau 214
Case courrier 166
4 place Jussieu
75252 Paris cedex 05