Descriptif
Ce cours vise à combiner deux objectifs :
* Apprendre quelques structures de données algorithmiques non abordées en IN101 / IN102.
* Utiliser le point précédent pour expliquer et implémenter (de manière simplifiée par rapport à la réalité) :
- les (des) rôles d'un système d'exploitation,
- les (des) mécanismes permettant de passer d'un code source à un programme en exécution.
* Apprendre quelques structures de données algorithmiques non abordées en IN101 / IN102.
* Utiliser le point précédent pour expliquer et implémenter (de manière simplifiée par rapport à la réalité) :
- les (des) rôles d'un système d'exploitation,
- les (des) mécanismes permettant de passer d'un code source à un programme en exécution.
Objectifs pédagogiques
Sur la base du cours de langage C (IN102), être capable de construire des structures de données plus complexes, comprendre certains principes simplifiés mais principaux d'un système d'exploitation et mettre en application les structures de données étudiées dans ce cadre. En particulier, être capable de :
- comprendre la structure de pile et dans quels cas l'utiliser ;
- comprendre la structure de file et dans quels cas l'utiliser ;
- comprendre la structure de liste chaînée et dans quels cas l'utiliser ;
- comprendre les différentes étapes se déroulant entre un code source et son exécution sur un micro-processeur ;
- comprendre de manière simplifiée comment un micro-processeur effectue les calculs issus de la compilation d'un code source ;
- comprendre comment plusieurs processus cohabitent sur un même micro-processeur ;
- comprendre les problèmes de synchronisation et de concurrence ;
- comprendre la notion de signal / interruption et de calculs asynchrones.
- comprendre la structure de pile et dans quels cas l'utiliser ;
- comprendre la structure de file et dans quels cas l'utiliser ;
- comprendre la structure de liste chaînée et dans quels cas l'utiliser ;
- comprendre les différentes étapes se déroulant entre un code source et son exécution sur un micro-processeur ;
- comprendre de manière simplifiée comment un micro-processeur effectue les calculs issus de la compilation d'un code source ;
- comprendre comment plusieurs processus cohabitent sur un même micro-processeur ;
- comprendre les problèmes de synchronisation et de concurrence ;
- comprendre la notion de signal / interruption et de calculs asynchrones.
18 heures en présentiel (6 blocs ou créneaux)
réparties en:
- Contrôle : 3
- Cours magistral : 5
- Travaux dirigés en salle info : 10
effectifs minimal / maximal:
145/155Diplôme(s) concerné(s)
Pour les étudiants du diplôme Diplôme d'Ingénieur de l'Ecole Nationale Supérieure de Techniques Avancées
Avoir suivi les cours IN101 et IN102.
Format des notes
Numérique sur 20Littérale/grade européenPour les étudiants du diplôme Diplôme d'Ingénieur de l'Ecole Nationale Supérieure de Techniques Avancées
Vos modalités d'acquisition :
Examen sur machine.
Le rattrapage est autorisé (Max entre les deux notes écrêté à une note seuil)- le rattrapage est obligatoire si :
- Note initiale < 6
- le rattrapage peut être demandé par l'étudiant si :
- 6 ≤ note initiale < 10
- Crédits ECTS acquis : 1.5 ECTS
- Scientifique acquis : 1.5
Le coefficient de l'UE est : 1.5
La note obtenue rentre dans le calcul de votre GPA.
L'UE est évaluée par les étudiants.
Programme détaillé
Voir le programme détaillé sur http://wwwdfr.ensta.fr/Cours/index.php?usebdd=ensta&sigle=IN103&afficher=prog .
Mots clés
Système d'exploitation, Langage C, Programmation, Structure de donnéesMéthodes pédagogiques
Transparents et résumés de cours à téléchargerSupport pédagogique multimédia