[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [HS] Le gouvernement américain a-t-il tenté de mettre un accès secret dans Linux ?



Bzzz wrote:
On Fri, 20 Sep 2013 12:35:45 +0200
BERTRAND Joël<joel.bertrand@systella.fr>  wrote:

	En ce sens, le noyau linux est d'une qualité et d'une
maintenabilité exécrables. Bien plus complexe qu'un noyau offrant
les mêmes fonctionnalités et tournant par exemple sur un L4/X2.
Chaque pilote dans son propre plan mémoire et les octets seront
bien gardés. Par ailleurs, la sécurité du noyau où la présence est
testée à grands coups de NULL permet de faire des choses
intéressantes.

Si tu peux apporter des améliorations (ou même simplement les
suggérer), alors vas-y; toute contribution positive me semble
bonne à prendre dans un tel contexte - mais dans ce cas, tiens nous
au courant, notamment de l'accueil de tes propositions.

J'ai fait des propositions (essentiellement sur les noyaux alpha et sparc32 entre 1999 et 2010), j'ai débuggué du code (cassé dès la révision suivante du noyau parce que les API changent subtilement), j'ai eu un accueil sympathique par les devs du noyau Alpha, déplorable par celui du support sparc32/64. Je ne vais pas revenir sur le passé, les gens sont ce qu'ils sont.

En revanche, je trouve assez bizarre que les patches de sécurité réglant les problèmes de déréférencement des pointeurs NULL (entre autre) ne soient pas inclus d'office dans le noyau et je continue de penser que le système de développement du noyau est aberrant. Beaucoup d'énergie pour pas grand'chose d'autant qu'il n'y a plus réellement de noyaux de test. Aujourd'hui, en dehors des versions x86 ou amd64, il faut croiser les doigts, en cas de changement de noyau, pour que le système reste bootable. Typiquement, le sparc64 est cassé (plantage sur un deadlock lors de la montée en charge) depuis le 2.6.32 et pas corrigé à ce jour (plantages sur U5, U60, Blade2000, mais pas sur T1000 ni sur V440/445, sans doute un problème de MMU) !

Contrairement à un NetBSD où les décisions sont prises par un groupe autoritaire, le développement du noyau Linux est très darwinien. On rajoute des tas de choses dans le noyau, on regarde ce que ça donne (avant que ce soit stabilisé) et on coupe ce qui merdoie trop. Ce n'est pas viable sur le long terme.

À titre personnel et ayant passé pas mal de temps sur les problèmes de design de langage et d'OS, je pense que le système parfait est un ensemble de serveurs sur un micronoyau (un vrai, un L4, pas un Mach ou un XNU qui sont des noyaux hydrides), ce qui est encore différent d'un L4/Linux. C'est ce qui est expliqué ici : http://www.freevms.net. Chaque bout de code, chaque pilote dans un espace mémoire propre à lui et indépendant de tout le reste. Sans cela, tout système va se complexifier à l'extrême jusqu'à ne plus être maintenable.

Développer sur un L4 a un autre avantage. Seule la gestion de la mémoire et des files d'exécutions sont laissées à la discrétion du noyau L4, qui est le seul bout de code à modifier pour porter le système sur une autre architecture (ou rajouter une fonctionnalité comme la dernière nouveauté d'Intel sur les limites des valeurs des pointeurs). Tout le reste est écrit en C.

	Cordialement,

	JKB


Reply to: