• [^] # Re: Et les micro noyaux type HURD ?

    Posté par . En réponse à la dépêche La fin du verrou global dans le noyau Linux ?. Évalué à 6.

    Les performances des micros noyaux?
    Il faut arrêter, on n'est plus au temps de Minix 1...
    Il y a eu _beaucoup_ de progrès, la diminution de performance est négligeable.

    En ce qui concerne les ressources partagées, cela me rappele un poste de Linus, qui casse le mythe de la simplicité d'un micro-noyau par rapport à un noyau monolithique:

    The fundamental result of access space separation is that
    you can't share data structures. That means that you can't
    share locking, it means that you must copy any shared data,
    and that in turn means that you have a much harder time
    handling coherency. All your algorithms basically end up
    being distributed algorithms.
    And anybody who tells you that distributed algorithms
    are "simpler" is just so full of sh*t that it's not even
    funny.
    Microkernels are much harder to write and maintain
    exactly because of this issue. You can do simple
    things easily - and in particular, you can do things where
    the information only passes in one direction quite easily,
    but anythign else is much much harder, because there is
    no "shared state" (by design). And in the absense of shared
    state, you have a hell of a lot of problems trying to make
    any decision that spans more than one entity in the
    system.

    Le reste ici : http://www.realworldtech.com/forums/index.cfm?action=detail&(...)

    Sinon, il y a tout plein de méchanisme de synchronisation granulaires dans le noyau : spinlock_t, spinlock_bh, rw_lock_t, ...
    Le problème c'est qu'on ne peut pas employer n'importe quoi n'importe où (interruption, softirq, etc).