• [^] # Re: Petite question: noyau monolithique?

    Posté par . En réponse à la dépêche Nouvelle version 2.6.27 du noyau Linux. Évalué à 2.

    Ben non, le "driver de FS" n'écrit pas sur le disque dur, mais bien le driver (micro-serveur) "disque dur". Avec une architecture traditionnelle, quand ton pilote controleur disque dur plante, il entraîne ton pilote FS avec. Avec une architecture telle que minix3 ce n'est pas forcément vrai. Comme on dit, 90% des écrans de la morts sont dûs à de mauvais pilotes; j'ai la faiblesse de penser que les autres couches sont plus robustes.

    C'est pas le probleme, le probleme c'est que t'as beau mettre les 3 couches du dessus dans un autre espace memoire(user), ce que ces couches font est tellement sensible (s'occuper d'ecrire sur le disque) que si elle plantent, les redemarrer n'est de toute facon pas une bonne idee.

    Toutafé, mais nous discuttions de problèmes dûs aux pilotes et tu nous parles de problème de sous-systèmes indépendants du matériel. Au risque de me répéter, ton bug qui apparaît quelque part dans ton noyau peut impacter une toute autre partie de celui-ci (le temps qu'"il se rende compte que qq chose ne va pas"), entraînant des dégats collatéraux non déterminés/ables; ce qui n'arrive pas avec un micro noyau.

    Cela arrive certes moins avec un micro-noyau, mais la difference au final n'est pas si grande qu'on veut bien le croire.

    Tu jettes un oeil au kernel NT, a la base c'est un micro-kernel, le code central est vraiment petit est a rarement des problemes, ce qui merde d'habitude c'est le reste : IO manager, memory manager, FS, ...

    Et quand un de ceux-ci plantent, meme si ils etaient hors du kernel, c'est qqe fois possible de redemarrer, c'est souvent dangereux.

    Il tourne en user-mode mais le noyau lui permet de dialoguer directement avec le matos, le plaçant donc au niveau des autres pilotes. C'est à cause de cette dichotomie kernel/user mode qu'on se retrouve avec des trucs goret comme cela.

    Justement non.
    Quand X11 plante, c'est pas le kernel qui tombe, c'est X11, ton apache va tranquillement continuer a tourner.
    Le probleme c'est que les apps graphiques dependent de X11, quand il claque, ben il peut redemarrer, mais comment faire pour garder la consistence avec ce que l'instance precedente avait emmagasine comme info ? C'est pour ca que les apps graphiques claquent, parce qu'elles ne peuvent pas tourner sans cette info qui a ete perdue lors du crash.