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:28]
smolski [Processus]
doc:systeme:gnu-linux [04/05/2013 11:57]
smolski [La mémoire]
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. \\ +Sur un PC standard, on a un seul processeur. Celui-ci ne peut donc (shématiquement) ​exécuter qu'une opération à la fois. \\ 
-Vu de l'​utilisateur,​ c'​est ​comme si tous ces programmes s'​exécutaient ​simultanément. +Pourtantnous pouvons ​en même temps utiliser ​une applicationnaviguer sur internet ​et même copier des fichiers ​comme si tous ces programmes s'​exécutaient ​ensembles ! \\ 
- +C'​est ​l'OS qui répartis ces actions en éxécutant ​ces applications ​alternativement et non chacune dans son ensemble
-<note tip>En fait il n'en est rien du fait des limitations matérielles.</​note>​ +Il se crée alors entre chaque réactivation un temps((un //​time-slice// ​variable ​selon le système installé)) ​de quelques millisecondes dans le calcul ​du processeur. \\
- +
-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 anglais) peut 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 a 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 == +
- +
-Sur d'​anciens systèmes on avait un //​multitâche coopératif//,​ appelé parfois aussi //​pseudo-multitâche//​. +
- +
-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 86: Ligne 46:
 Tout d'​abord la partie la plus proche du matériel qui comprend les pilotes des cartes graphiques (voir section suivante). \\ Tout d'​abord la partie la plus proche du matériel qui comprend les pilotes des cartes graphiques (voir section suivante). \\
 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). \\ 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). \\
-Sous GNU/Linux c'est le plus souvent géré par XFree86.+Sous GNU/Linux c'est le plus souvent géré par **X.Org**((un fork de XFree86, réalisé juste avant le changement de licence)).
  
 Ensuite vient [[manuel:​gestionnaires | le gestionnaire de fenêtres]]. \\ Ensuite vient [[manuel:​gestionnaires | le gestionnaire de fenêtres]]. \\
Ligne 125: Ligne 85:
   * [[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