95 lines
4.6 KiB
Markdown
95 lines
4.6 KiB
Markdown
|
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
|
|||
|
d’exé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 l’exé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
|
|||
|
|