Système d'exploitations
Cours de B2 AKA OS
Introduction
Informations horarires, crédits, seconde sess Les cours théoriques représentent 42h et les labora...
Le langage C
Partie du cours d'OS sur le langage C ATTENTION, ce chapitre n'est pas complet
Introduction aux laboratoires
Outils Linux (une machine virtuelle est disponible sur l’espace de cours) Clion (Jetbrains) est ...
Introduction au C
Qu’est ce que le C Le langage C est un langage de bas niveau (contrairement à Java qui est plus u...
Hello World
/* Les lignes commençant par # sont des directives au préprocesseur C Dans ce cas avec #includ...
Chaines de caractères (et tableaux)
En C il n'y a pas de type String, les chaines de caractères sont simplement des tableaux de carac...
Génération d'aléatoire
La généréation d'aléatoire se fait via la fonction rand, cependant il est important de se rappell...
Les structures
Les structures en C permettent de créer des types personalisés, un peu comme les classes en Java ...
Les tableaux
Il est possible en C de déclarer un tableau contenant des données de types identiques qui sont en...
Les processus
Les processus
Un processus est un programme en cours d'exécution. Un programme est donc un élément passif (un e...
La communication IPC
Il est nécessaire que les processus communiquent entre-eux (pour le partage d'information, la rép...
Synchronisation
Lorsque plusieurs processus coopèrent, ils doivent souvent intéragir entre eux, ils doivent parfo...
Sections critiques
C'est bien beau la synchronisation sauf que la coopération entre plusieurs processus pose égaleme...
Les threads
Les processus que l'on a vu n'avait qu'un seul fil d'exécution (monothread) mais il est possible ...
Les interblocages
Les ressources (la mémoire, CPU, périphériques, etc) sont limitées, il faut donc gérer les ressou...
La mémoire
Introduction
La mémoire a toujours été une ressource indispensable d'un système. Elle est partagée entre tous ...
Allocation
Le système d'exploitation, les processus systèmes et utilisateurs se trouvent dans la mémoire, il...
La pagination
La pagination permet d'avoir un espace adressage en mémoire physique non contigu. Elle nécessite...
La segmentation
Un·e utilisateur·ice voit un programme comme un ensemble d'instructions, de données, de fonctions...
Segmentation et pagination
Pour combiner les avantages de la segmentation avec les avantages de la pagination, on va regarde...
Mémoire virtuelle
Il a été dit précédemment qu'il faut qu'un programme soit entièrement en mémoire pour pouvoir s'e...
Le système de fichiers
Introduction et définition d'un fichier
Définition d'un fichier Un fichier est une collection nommée d'information en relation. Pour l'ut...
Structure du système de fichiers
Pour organiser le système de fichier, il y a deux structures principales, La partition qui est un...
Implémentation
Maintenant on va voir comment la structure vue précédemment est implémentée dans le système d'exp...
Entrées sorties
Introduction
Un système sans entrée ou sortie n'est pas très utile. Car s'il n'y a pas d'entrée-sortie, ça veu...
Côté matériel
Au niveau matériel, on distingue plusieurs éléments : Le périphérique d'entrée-sortie, par exemp...
Côté logiciel
La partie logicielle de l'entrée-sortie est une partie du système d'exploitation qui a pour but d...
Disque
Matériel Un disque magnétique est composé de plusieurs disques physiques appelés les plateaux. Le...
Horloge
L'horloge est un périphérique spécial et essentiel. Il sert simplement à déterminer la date et l'...
Sécurité
Protection, domaine et matrice d'accès
Lorsque l'on parle de protection, on parle de l'ensemble des mécanismes mis en place pour l'accès...
Sécurité contre les attaques
Nous avons vu comment protéger le système et déterminer les droits d'accès. Maintenant, il faut t...
Authentification
Les systèmes actuels ne fonctionnent que lorsque l'utilisateur·ice est authentifié·e. Nous allons...
Sécurité des applications, attaques et logiciels malveillants
Écrire du code exempt d'erreur est difficile, et les erreurs peuvent conduire à des vulnérabilité...
Protection contre les attaques
Pour se protéger contre des attaques, il est important de protéger le périmètre (tout ce qui est ...
Introduction et histoire de la cryptographie
La cryptographie consiste à cacher des informations en utilisant des algorithmes. Il ne faut pas ...
Cryptographie symétrique et asymétrique
Entre les deux extrêmes que nous venons de voir (code de césar d'un côté et le one-time pad). Div...
Signatures cryptographiques
Une signature permet d'identifier que quelqu'un a bien écrit quelque chose. Une signature doit êt...
Résumé global
Question 1 (processus) Définissez le concept de processus, décrivez les mécanismes de communicat...