Le terme "userland" peut faire référence à de nombreuses choses dans différents contextes, mais j'interprète ici "utilisateur GNU" vs "utilisateur BSD" comme étant le jeu minimum par défaut de programmes fournis avec une distribution.
La principale différence réside dans le fait que les deux zones utilisateur commencent par un code source complètement différent. Code source du chat GNU Code source du chat NetBSD . À partir de ce programme simple, vous pouvez constater que le chat de NetBSD utilise des indicateurs de ligne de commande classiques à une lettre. Les programmes GNU ont tendance à avoir des drapeaux à une lettre, mais aussi les --something-long
options de type. Les programmes GNU tendent également vers la compatibilité POSIX.
Cette différence de code source prêtera aux deux utilisateurs des comportements différents dans certains cas.
Il semble également que NetBSD (au moins) utilise sa propre version de libc, la bibliothèque C standard. Je suis au-dessus de ma tête ici, mais la libc et les liens dynamiques sont étrangement liés. De nouveau, un code source différent conduira à un comportement différent.
Je pense qu'en tant qu'utilisateur shell, vous constateriez que ps
cela agirait différemment et ls
pourrait vous donner une sortie légèrement différente de celle à laquelle vous êtes habitué. Si vous utilisez le --long-option
type d’indicateurs de ligne de commande, vous devez rechercher des indicateurs de ligne de commande équivalents pour certains programmes .
Auparavant, si je comprends bien, le domaine utilisateur BSD descend plus directement des Unix V6 et V7 des Bell Labs, via le port 32 V vers le matériel VAX. GNU userland est plus récent, écrit au moins un peu en réaction aux tentatives d’AT & T de garder le code très secret au début des années 80. Après la cession du système Bell en 1983, AT & T a tenté de "monétiser" Unix. Une partie de cela consistait à octroyer une licence au code source de manière à empêcher la plupart des gens de le voir. Richard Stallman et d'autres ont eu des problèmes avec cela. Leur projet GNU visait spécifiquement à créer un système de type Unix pouvant être partagé librement.
Entre-temps, en 1993, AT & T avait assigné en justice le système de l'Université de Californie sur les systèmes BSD («B» est Berkeley, où se trouve l'Université de Californie). Les employés de Berkeley avaient remplacé l’ensemble des sources originales d’AT & T par un nouveau code, qui est devenu l’ancêtre d’au moins le pays d’utilisation de NetBSD. AT & T et UCB sont parvenus à un accord en 1994, révélé au public en 2004.
Naturellement, au moins les idées se croisent, il y a donc au moins une similitude conceptuelle entre GNU et BSD, mais les cas d'école diffèrent nettement.