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:26]
smolski [GNU/Linux]
doc:systeme:gnu-linux [04/05/2013 21:52]
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.+l'OS fournis aussi //l'​interface graphique// ​qui se trouvera à être plus ou moins séparée de cette première couche. Par exemple windows mélange les couches alors que, dans un but de clarté pour l'utilisateur,​ GNU/Linux les sépare davantage.
  
-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. \\ +==== Multitâche ====
-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**). \\ +Un PC standard ​d'un seul processeur ne peut exécuter qu'une opération à la fois (schématiquement...). \\ 
-La place supplémentaire nécessaire est prise sur le disque dur. \\ +Pourtantnous pouvons 
-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. +  - utiliser ​une application, 
- +  ​naviguer sur internet, 
-Un programme ne peut travailler directement qu'​avec les données en mémoire vive. \\ +  - copier des fichiers, 
-Donc si celles qui avaient été sauvegardées sont requises, elles suivront le chemin inverse pour revenir en mémoire depuis le disque. +  - ..
- +comme si tous ces programmes s'​exécutaient ​ensembles ! 
-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. +C'​est ​le principe ​du multitâche dit //​préemptif//​
-<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>​ +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 ! 
- +<​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>​ 
-===== Multitâche ===== +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.
- +
-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\\ +
-Vu de l'​utilisateur,​ c'​est ​comme si tous ces programmes s'​exécutaient ​simultanément. +
- +
-<note tip>En fait il n'en est rien du fait des limitations matérielles.</​note>​ +
- +
-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. \\ +
-Cet intervalle de temps (//​time-slice// ​en anglaispeut varier ​selon les systèmes de quelques millisecondes à plusieurs dizaines de millisecondes\\ +
-Plus la valeur est faible, plus l'​impression de multitâche sera grande. \\ +
-Mais le passage d'une application à une autre un coût en termes ​de temps. \\ +
-Il faut restaurer le contexte dans lequel se trouvait l'application avant que l'accès au processeur lui ait été retiré. +
- +
-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 =====
  
-Comme dit précédemment, l'​interface graphique ne fait pas réellement partie ​du système d'exploitation ​lui-même. \\ +Bien que fournis avec, l'​interface graphique ne fait pas réellement partie ​de l'OS lui-même. \\ 
-L'​interface graphique vient se placer au-dessus de ce dernier et se divise ​encore ​en plusieurs parties.+L'​interface graphique vient se placer au-dessus de ce dernier et, de plus se divise en plusieurs parties ​encore.
  
-Tout d'​abord la partie la plus proche du matériel ​qui comprend ​les pilotes ​des cartes graphiques (voir section suivante). \\ +  - Tout ce qui est proche du matériel ​comme les pilotes ​de la carte graphique et les fonctions ​essentielles : affichage, manipulation ​de ce qui apparaît à l'​écran, ​gestion de la 3D... Sous GNU/Linux c'​est ​//X.Org// qui s'en charge. 
-Cette partie utilise ​les spécificités du matériel pour fournir des fonctions de base (afficher ou déplacer un rectangle par exemple) ou plus avancées (gestion de la 3D notamment)\\ +  - [[manuel:​gestionnaires | Les gestionnaire de fenêtres]]. 
-Sous GNU/Linux c'​est ​le plus souvent géré par XFree86.+  - [[manuel:​gui | Les gestionnaire de bureau]].
  
-Ensuite vient [[manuel:​gestionnaires | le gestionnaire de fenêtres]]. \\ 
-Il permet d'​avoir comme son nom l'​indique des fenêtres pour les applications. \\ 
-Celles-ci peuvent être agrandies, réduites,​... Et le passage d'une application à une autre est facilité. 
  
-Et enfin on trouve la partie la plus optionnelle,​ [[manuel:​gui | le gestionnaire de bureau]]. \\ +===== Le pilote de périphérique =====
-Il permet d'​avoir un environnement de travail avec un ou plusieurs bureaux virtuels sur lesquels peuvent être placés des liens vers des programmes. \\ +
-Il y a aussi généralement d'​autres outils comme une barre des tâches ou des menus configurables. +
-<​note>​Les deux représentants les plus connus sous GNU/Linux sont **KDE** et **GNOME**.</​note>​ +
- +
-===== Rôle d'​un ​pilote de périphérique =====+
  
 Appelé driver en anglais, le pilote de périphérique est l'​interface entre le matériel et le système d'​exploitation. \\ Appelé driver en anglais, le pilote de périphérique est l'​interface entre le matériel et le système d'​exploitation. \\
Ligne 124: Ligne 90:
  
   * [[manuel:​gnu_linux:​processus | Les processus dans le détail.]]   * [[manuel:​gnu_linux:​processus | Les processus dans le détail.]]
 +
doc/systeme/gnu-linux.txt · Dernière modification: 19/04/2023 18:58 par bendia

Pied de page des forums

Propulsé par FluxBB