Systèmes

Diplômes intégrant cet élément pédagogique :

Descriptif

Ce cours vise à introduire quelques concepts de base des systèmes d'exploitations et d'initier à la manipulation de systèmes.

Le cours introduit tout d'abord quelques éléments d'architecture des ordinateurs avant de s'intéresser à la manipulation des systèmes de type Unix (Linux, MacOs, etc.) via l'interface de commande. Les points abordés sont l'organisation du système de fichiers, les commandes de manipulation de fichiers et une introduction à l’écriture de scripts BASH.

Dans un second temps, les notions de multiprogrammation et processus sont abordées. Cette partie présente entre autre le modèle de processus, leur cycle de vie, les mécanismes d'exécution, et d'ordonnancement, etc.

Dans une troisième partie, la gestion des ressources et la synchronisation sont présentées au travers de notions de concurrence d'accès, des mécanismes d'exclusion mutuelle et de verrouillage.

- Connaître quelques principes fondamentaux des systèmes d'exploitation.

- Savoir manipuler un système d'exploitation via son interface en ligne de commande.

- Avoir quelques notions de bases sur l'utilisation des thread en Java.

- Savoir reconnaître une situation d'accès concurrent et proposer une solution à base de verrous d'exclusion mutuelle.

Compétences visées

- la manipulation de de systèmes via l'interface en ligne de commande.

- l'écriture de script BASH.

- notions élémentaires de programmation concurrente.

 

Bibliographie

Andrew S. Tanenbaum and Herbert Bos. Modern Operating Systems (4th. ed.). Prentice Hall Press, USA. 2014.

Abraham Silberschatz, Peter B. Galvin, Greg Gagne. Operating System Concepts, 10th Edition. 2018.

Informations complémentaires

Lieu(x) : Grenoble
Langue(s) : Français