Université Lyon 1
Arqus
Accueil  >>  Licence  >>  Informatique  >>  Informatique et mathématiques  >>  Programmation concurrente et administration système
  • Domaine : Licences du domaine SCIENCES ET TECHNOLOGIES
  • Diplôme : Licence
  • Mention : Informatique
  • Parcours : Informatique et mathématiques
  • Unité d'enseignement : Programmation concurrente et administration système
Nombre de crédits de l'UE : 3
Code APOGEE : INF3055L
UE Libre pour ce parcours
UE valable pour le semestre 1 de ce parcours
    Responsabilité de l'UE :
MOY MATTHIEU
 matthieu.moyuniv-lyon1.fr
PICHON GREGOIRE
 gregoire.pichonuniv-lyon1.fr
    Type d'enseignement
Nb heures *
Cours Magistraux (CM)
6 h
Travaux Dirigés (TD)
7.5 h
Travaux Pratiques (TP)
16.5 h
Durée de projet en autonomie (PRJ)
0 h
Durée du stage
0 h
Effectif Cours magistraux (CM)
210 étudiants
Effectif Travaux dirigés (TD)
35 étudiants
Effectif Travaux pratiques (TP)
18 étudiants

* Ces horaires sont donnés à titre indicatif.

    Pré-requis :
Programmation en C++, notions en systèmes d'exploitation.

Il est recommandé d'avoir suivi les UEs "Algorithmique, programmation et structures de données",
 "Unix" et "Système d'exploitation" 
    Compétences attestées (transversales, spécifiques) :
Analyser et décomposer une tâche pour concevoir un algorithme
Programmer un logiciel implémentant une spécification fonctionnelle et technique
Exploiter le parallélisme des machines à l’exécution
Utiliser les interfaces de programmation d’un système d’exploitation
Programmer des interactions fines avec le matériel grâce au système d'exploitation
Analyser et interpréter les résultats produits par l'exécution d’un programme
Déployer et exploiter un logiciel existant ou développé sur mesure, dans son environnement (poste de travail, système d’exploitation, pile logicielle)
Décrire les éléments constitutifs d’un ordinateur et de son système d’exploitation (Unix et Windows)
Utiliser un système d’exploitation (ligne de commandes...) en mode utilisateur et administrateur
Installer et configurer un logiciel et le matériel associé
Assurer la mise à jour d’un logiciel
Diagnostiquer et résoudre les problèmes de fonctionnement d’un logiciel (fichiers de logs, …)
Diagnostiquer et résoudre les problèmes de fonctionnement matériels
Interpréter (à la main et via un programme) un code écrit dans un langage
Dérouler un algorithme
Programmer de petites applications multi-processus ou multi-threads
Distinguer les modèles importants pour la programmation système (par exemple fork-join, producteurs-consommateurs, lecteurs-rédacteurs)
Gérer les droits d’accès standards des utilisateurs
    Programme de l'UE / Thématiques abordées :
I. Programmation concurrente
  - Principes de la programmation concurrente (ou « parallèle »)
  - Mise en œuvre en utilisant la bibliothèque de threads de C++11
  - Problèmes classiques et solutions possibles
II. Ordonnancement
  - Principe de l'ordonnanceur d'un système d'exploitation
  - Politiques d'ordonnancement (temps-réel et non-temps réel)
  - Fonctionnement dans les OS courants (Linux, Windows)
III. Administration système
  - Gestion des utilisateurs et des droits
  - Installation de logiciels sous Linux
  - Gestion des services, mise en œuvre avec systemd, fichiers de log
SELECT MEN_ID, `MEN_DIP_ABREVIATION`, `MEN_TITLE`, `PAR_TITLE`, `PAR_ID` FROM parcours INNER JOIN ue_parcours ON PAR_ID_FK=PAR_ID INNER JOIN mention ON MEN_ID = PAR_MENTION_FK WHERE PAR_ACTIVATE = 0 AND UE_ID_FK='25757' ORDER BY `MEN_DIP_ABREVIATION`, `MEN_TITLE`, `PAR_TITLE`