blog-source/content/les-differentes-couches-dun-systeme-dexploitation.md

95 lines
4.6 KiB
Markdown
Raw Normal View History

2015-09-03 20:08:14 +02:00
Title: Les différentes couches d'un système d'exploitation
Date: 2012-09-06 23:29
Author: Wxcafe
Category: Teaching
Slug: les-differentes-couches-dun-systeme-dexploitation
Étant utilisateur plus ou moins fidèle de GNU/Linux depuis quelques
années (plus ou moins, parce que j'ai toujours un Windows en dual boot,
principalement pour les jeux (possiblement plus pour longtemps, avec
l'arrivée de Steam pour Linux... ) ), je commence a connaître plus ou
moins bien mon système. Or il y a plusieurs choses a savoir sur les
systèmes d'exploitation, et celle dont je vais parler aujourd'hui, c'est
le système de couches.
Un système d'exploitation (de type UNIX, \<troll\>enfin un vrai système quoi.
\</troll\>) incorpore plusieurs systèmes de couches.
Ainsi, Linux (le noyau) a commencé en étant un kernel monolithique,
c'est a dire que tous les composants sont intégrés au kernel. Ce qui
signifie que rien ne peut être ajouté au noyau sans recompiler celui ci.
Or, quand on sait que le noyau comprend entre autres les drivers du
matériel et des systèmes de fichier, cela peut poser des problèmes quand
a la taille du kernel et a la licence libre de ce dernier.
Depuis un certain temps, le kernel linux est devenu un kernel modulaire, ce qui
signifie que des modules peuvent être chargé a tout moment en cours
dexécution, ce qui permet l'utilisation de nouveaux systèmes de
fichiers a chaud, ou l'insertion de matériel et l'installation de
drivers sans interrompre lexécution du système (Windows utilise un
système de fausse installation de drivers pour le matériel externe, et
un système de pré-installation des drivers pour les périphériques dits
"plug and play")
Après le noyau intervient le système. Or, au tous premiers instants du
boot, les systèmes GNU/Linux utilisent un système permettant de limiter
l'utilisation de ressources systèmes si elles ne sont pas nécessaires,
et incorpore ainsi un système dit de "runlevels"
Ainsi, au runlevel 0, le système s'éteint après avoir booté. Ainsi, ce
runlevel permet de tester le bon démarrage du système sans avoir a
effectuer de manipulation pour le ré-éteindre
Le runlevel 1 est appelé mode single user, et c'est un nom plutôt adapté
étant donné que ce runlevel donne accès a un système en étant
automatiquement loggé en tant que root, avec tous les autres
utilisateurs désactivés, de même que tous les systèmes de réseaux
Le runlevel 2 est appelé mode multi user, et vous mets en face d'un
système classique. en ligne de commande, mais avec tous les systèmes de
réseau désactivés.
Le runlevel 3 est le même que le 2, mais avec les systèmes de réseaux
activés.
Le runlevel 4 n'est pas officiellement défini, et est censé être
activable en fonction des besoins de l'utilisateur. Sur la plupart des
distributions grand public, ce runlevel est lié au...
Runlevel 5! Multi-user, networking, with working GUI! c'est le système
tel que vous le connaissez, avec l'interface graphique et le système de
login graphique.
Le runlevel 6, enfin, est le bien nommé "reboot", qui reboot la machine
quand il devient le runlevel courant.
(Il est a noter que Debian, et donc toutes les distribs qui en sont
dérivées, ne font pas de distinction entre les differents runlevels du 2
au 5. Ainsi, Ubuntu fonctionne par défaut au runlevel 2, avec un login
et une interface graphique, et un mode réseau fonctionnel, bref avec des
fonctionnalités qui ne sont normalement disponibles que sous le runlevel 5.)
Il est possible de changer de runlevel grâce a la commande runlevel
(oui, c'est évident...)
Les systèmes Linux utilisent aussi un système dit de SandBox , qui en
informatique est un système permettant d'isoler les processus les uns
des autres. Ainsi, la pile réseau, qui est le système auquel les
différents processus envoient les différents paquets qui doivent sortir
de la machine , et qui redistribue ces paquets, est isolée du reste du
système, en cela qu'aucun des autres processus ne peuvent modifier cette
pile hors du runlevel 1 ou 2.
De la même façon, le navigateur chrom/ium fait fonctionner tous les
onglets, ainsi que toutes les extensions, dans des processus différents.
Certaines distributions linux implémentent un système de cette sorte
pour toutes les applications, ou seulement pour certaines. ainsi Chakra
Linux a un système d'installation d'applications dans des disques
virtuels, ce qui permet une sécurité totale du processus.
Voila, j'espère vous en avoir appris un peu sur le fonctionnement des
différentes couches de linux, et j'espère que cet article vous poussera
a tester un peu votre système et a vous amuser avec les différents
runlevels