logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:systeme:gnu-linux [03/05/2013 09:39]
smolski [Interface graphique]
doc:systeme:gnu-linux [04/05/2013 20:43]
smolski [Multitâche]
Ligne 10: Ligne 10:
  
  
-===== Généralités ​=====+===== Le PC =====
  
-Un ordinateur seul ne peut effectuer rien de très utile. \\ +Un est une machine qui écrit ​des 0 et des 1 dans un disque ​et une carte graphique ​pour nous permettre de les lire\\
-Pour lui un disque dur n'est qu'un endroit pour stocker ​des 0 et des 1 et une carte graphique ​n'est qu'un module mis dans un emplacement.+
  
-Pour lui dire que faire de tout cela, il y a //une première couche logicielle//​ qui est le système ​d'​exploitation ​(sur un PC il y a [[manuel:​bios | le BIOS]] avant tout). \\ +===== Système ​d'​exploitation ​=====
-On y trouve dedans tout ce qui est nécessaire pour gérer le matériel et fournir à l'​utilisateur les fonctions de base.+
  
-Certains systèmes ​d'​exploitation ​relativement récents rendent tout cela un peu confus ​en mélangeant toutes ​les couches. \\ +Un système ​d'​exploitation ​est un logiciel qui, en première couche possède ​les bases de fonctionnement pour gérer le matériel installé(([[manuel:​bios | le BIOS]])). \\ 
-//L'​interface graphique// ​est fournie //avec le système d'​exploitation//​ comme c'est le cas par exemple avec Windows depuis la version 95.+Plus ou moins séparé de cette première couche((windows par exemple mélange les couches.)), l'OS fournis aussi //l'​interface graphique//​.
  
-Pour qui souhaite un peu mieux comprendre l'​architecture interne, il vaut mieux s'​intéresser à un système comme **GNU/​Linux** qui met plus en évidence ce découpage.+===== La mémoire =====
  
-===== Gestion ​de la mémoire =====+La mémorisation permet ​de conserver et de distinguer la donnée individuelle propre à chacune des applications actives sur la machine.
  
-Un des premiers rôles du système ​d'exploitation((OS)) est de gérer ​la mémoire ​disponible sur la machine. \\ +La mémoire c'​est ​d'abord la RAM installée qui est gérée par l'OS, mais pas seulement, la swap(([[manuel:​partition?&#​la_swap]])) est aussi utilisée en cas de besoin. 
-Par cela, il s'agit de la **RAM** présente sur la machine, mais pas seulement, comme cela sera expliqué ci-après.+<note tip>​L'​OS gère la mémoire.</​note>​ 
 +En effet, une application en cours à besoin de conserver en mémoire des données à sauvegarder le temps de son exécution. \\ 
 +Plusieurs applications((programmes)) peuvent même s'éxécuter en même temps et doivent conserver ​**chacune** en //​mémoire//​ des données temporaires différentes. \\ 
 +Par exemple [[logiciel:​gimp]] conservera une couleur particulière à reproduire et en même temps une application de traitement de texte active conservera une police de texte en cours d'​utilisation.
  
-Sur une machine plusieurs programmes peuvent s'exécuter simultanément comme expliqué dans la section suivante. +L'OS se charge ​d'​écrire ​ces mémorisation ​directement dans des zones séparées ​de la mémoire. \\ 
-<note tip>Il ne faut pas que ceux-ci puissent interférer les uns avec les autres.</​note>​ +Les programmes ​eux voient ​un espace de mémoire ​//virtuelle// où ils stockent ​les données ​qu'ils ont besoin ​de conserver. \\
-Durant son déroulement,​ une application a besoin de sauvegarder des données temporairement. \\ +
-Quand vous utilisez un traitement de texte par exemple, il conserve la police actuellement utilisée. \\ +
-Cela se fait dans la //​mémoire//​. \\ +
-Et il ne faut pas que le jeu qui est en train d'être utilisé en même temps (par exemple) puisse altérer cette valeur lorsqu'​il enregistre l'​emplacement actuel du joueur. +
- +
-Pour réaliser cela, les programmes ne peuvent pas écrire directement dans la RAM de la machine. \\ +
-Pour eux tout se passe comme si c'​était le cas, mais le système d'​exploitation se charge d'​écrire dans certaines zones indépendantes les unes des autres. \\ +
-Le programme voit un espace de mémoire virtuelle ​dans lequel il peut faire ce qu'il veut sans risquer de déranger ​les autres. \\ +
- +
-Pour résoudre ce problème, il y a la notion de fichier d'​échange (ou **swap**). \\ +
-La place supplémentaire nécessaire est prise sur le disque dur. \\ +
-Si la mémoire est pleine et qu'il faut y écrire ​de nouvelles données, les plus anciennes (ou les moins fréquemment utilisées) seront sauvegardées sur le disque pour libérer de l'​espace. +
- +
-Un programme ne peut travailler directement qu'​avec les données en mémoire vive. \\ +
-Donc si celles qui avaient été sauvegardées sont requises, elles suivront le chemin inverse pour revenir en mémoire depuis le disque. +
- +
-Tout ce mécanisme est invisible pour l'​application. C'est le système d'​exploitation qui se charge de ces opérations selon les besoins. +
-<note tip>Les temps d'​accès au disque dur sont coûteux. Donc si la mémoire est insuffisante par rapport aux applications utilisées, l'​utilisation du **swap** sera intensive et ralentira la machine.</​note>​+
  
 ===== Multitâche ===== ===== Multitâche =====
  
-Sur un PC standard, on a un seul processeur. Celui-ci ​ne peut globalement ​exécuter qu'une opération à la fois. Or lorsqu'​on l'​utiliseon peut en même temps regarder ​une vidéorelever ses mails et graver un CD-ROM par exemple\\ +Un PC standard ​d'un seul processeur ne peut exécuter qu'une opération à la fois (schématiquement...). \\ 
-Vu de l'​utilisateur,​ c'​est ​comme si tous ces programmes s'​exécutaient ​simultanément. +Pourtantnous pouvons 
- +  - utiliser ​une application, 
-<note tip>En fait il n'en est rien du fait des limitations matérielles.</​note>​ +  ​naviguer sur internet, 
- +  - copier des fichiers, 
-Le rôle du système d'exploitation est de faire exécuter tour à tour ces applications. \\ +  - ..
-Chacune va à son tour disposer de l'unité de calcul (le processeur) pour réaliser ce qu'il désire. \\ +comme si tous ces programmes s'​exécutaient ​ensembles ! 
-Cet intervalle de temps (//​time-slice// ​en anglaispeut varier ​selon les systèmes de quelques millisecondes à plusieurs dizaines de millisecondes\\ +C'​est ​le principe ​du multitâche dit //​préemptif//​
-Plus la valeur est faible, plus l'​impression de multitâche sera grande. \\ +En fait, l'OS répartis ​ces actions en les exécutant non chacune dans son ensemble mais chacune en pointillées avec les autres et et donne ainsi l'illusion ​qu'elles s'​exécutent toutes en même temps ! 
-Mais le passage d'une application à une autre un coût en termes ​de temps. \\ +<​note>​En fait, entre ces pointillés il se crée un temps de quelques millisecondes ​(un //​time-slice//​) ​variable ​selon le système installé.</​note>​ 
-Il faut restaurer le contexte dans lequel se trouvait l'application avant que l'accès au processeur lui ait été retiré. +Le passage d'une application à l'autre à un coût de temps d'autant plus long qu'il s'y ajoute la restauration de l'ensemble des paramètres ​de chaque application en exécution simultanée,​ notamment la reconnaissance de la mémoire virtuelle ​attribuée et l'instant ​de calcul du processeur avant l'interruption.
- +
-Il faut donc trouver le bon compromis pour que tout le temps ne soit pas passé à basculer. +
- +
-Cette restauration ​de contexte comprend notamment le rétablissement ​de l'espace ​de mémoire virtuelle ​évoqué ci-dessus. \\ +
-Il y a aussi le processeur qui doit être remis comme il était lorsque le programme a été interrompu. +
- +
-Il faut noter qu'une application ne sait pas quand elle ne sera plus exécutée pour laisser la place à une autre. \\ +
-On parle de //​multitâche préemptif//​. \\ +
-C'est le système d'​exploitation qui prend la décision.+
  
 == Nota == == Nota ==
  
-Sur d'​anciens systèmes on avait un //​multitâche ​coopératif//, appelé parfois aussi //pseudo-multitâche//.+  - Plus le **time-slice** est faible, ​//plus l'​exécution du multitâche// ​ne sera pas apparente pour l'​utilisateur. 
 +  ​C'est l'​OS((le système d'​exploitation)) qui dirige le multitâche ​et non l'​application. 
 +  - L'​application n'​utilise directement que la RAM((la mémoire vive)).
  
-Dans ce cas-là, c'​étaient les applications qui décidaient qu'​elles n'​avaient pendant un certains temps plus besoin du processeur (par exemple si elles attendent des données provenant du disque dur ou du réseau) et peuvent donc être mise en sommeil. \\ 
-Windows 3.1 rajoutait cette couche de multitâche coopératif sur //MS DOS// qui était **monotâche**. 
  
 ===== Interface graphique ===== ===== Interface graphique =====
Ligne 125: Ligne 99:
   * [[manuel:​gnu_linux:​processus | Les processus dans le détail.]]   * [[manuel:​gnu_linux:​processus | Les processus dans le détail.]]
  
-===== Source ===== 
- 
-  * [[http://​www.c-sait.net/​cours/​systemes_exploitation.php | SAIT NET - Les systèmes d'​exploitation]] 
doc/systeme/gnu-linux.txt · Dernière modification: 19/04/2023 18:58 par bendia

Pied de page des forums

Propulsé par FluxBB