GNU/Linux >> Znalost Linux >  >> Linux

Jaké jsou hlavní rozdíly mezi Bsd a Gnu/linux Userland?

Na Unixu a Linuxu jsem toho četl hodně o BSD a GNU atd. Ale stále nechápu, jaké jsou některé skutečné, praktické rozdíly mezi uživateli BSD a GNU, přestože se o nich často mluví. Může to někdo upřesnit?

Při odpovídání prosím plně vysvětlete historické souvislosti a mějte na paměti, že nežiji tak dlouho, abych zažil dobu, kdy GNU/Linux nebyl mainstreamovým UNIXem (kromě OS X).

Přijatá odpověď:

Termín „userland“ může odkazovat na mnoho věcí v různých kontextech, ale zde interpretuji „GNU userland“ vs „BSD userland“ jako výchozí minimální sadu programů, které jsou součástí distribuce.

Velký hlavní rozdíl je v tom, že dvě uživatelské země začínají se zcela odlišným zdrojovým kódem. Zdrojový kód kočky GNU Zdrojový kód kočky NetBSD. Právě z tohoto jednoduchého programu můžete vidět, že kočka NetBSD používá tradiční jednopísmenné příznaky příkazového řádku. GNU programy mají tendenci mít jednopísmenné příznaky, ale také --something-long možnosti typu. GNU programy také inklinují ke kompatibilitě POSIX.

Tento rozdíl ve zdrojovém kódu v některých případech propůjčí dvěma uživatelským zemím odlišné chování.

Také to vypadá, že NetBSD (alespoň) používá svou vlastní verzi libc, standardní knihovnu C. Dostávám se přes hlavu, ale libc a dynamické propojení spolu podivně souvisí. Opět platí, že odlišný zdrojový kód povede k odlišnému chování.

Myslím, že jako uživatel shellu byste našli, že ps by fungovalo jinak a ls vám může poskytnout trochu jiný výstup, než na jaký jste zvyklí. Pro některé programy byste museli najít ekvivalentní příznaky příkazového řádku, pokud použijete --long-option typ příznaků příkazového řádku.

Historicky to chápu tak, že uživatelská oblast BSD sestupuje přímo z V6 a V7 Bell Labs Unix přes 32V port na hardware VAX. Uživatelská země GNU je novější, napsaná alespoň trochu v reakci na pokusy AT&T udržet kód jako přísně střežené tajemství na počátku 80. let. Po odprodeji Bell System v roce 1983 se AT&T pokusilo „zpeněžit“ Unix. Součástí toho bylo licencovat zdrojový kód způsobem, který zabránil většině lidí, aby jej kdy viděli. Richard Stallman a další s tím měli problémy. Jejich projekt GNU existoval speciálně pro vytvoření volně sdíleného systému podobného Unixu.

Související:Přepínač – Přepínač připojený k neutrálu a zemi v dílčím panelu namísto hlavního panelu?

Mezitím, v roce 1993, AT&T zažaloval systém Kalifornské univerzity kvůli systémům BSD (‚B‘ je Berkeley, kde se nachází University of California). Lidé z Berkeley nahradili veškerý původní zdroj AT&T novým kódem a tento nový kód se stal předkem přinejmenším uživatelské země NetBSD. AT&T a UCB dospěly k dohodě v roce 1994, která byla veřejnosti odhalena v roce 2004.

Přirozeně, alespoň myšlenky se vzájemně opylují, takže mezi uživateli GNU a BSD existuje alespoň koncepční podobnost, ale rohové případy se rozhodně liší.


Linux
  1. Linux – Jaké jsou různé způsoby nastavení oprávnění k souborům atd. na Gnu/linux?

  2. Linux – Jaké jsou hlavní rozdíly mezi operačními systémy založenými na Bsd a Linux?

  3. Jaké jsou rozdíly mezi jádrem dodávaným Ubuntu a upstream jádrem?

  1. Jaký je rozdíl mezi vyrovnávací pamětí a mezipamětí v Linuxu?

  2. Jaký je rozdíl mezi „vyhledat“ a „najít“ v Linuxu?

  3. Jaké jsou rozdíly mezi soubory .txt pro Linux a Windows (kódování Unicode)

  1. Jaký je rozdíl mezi linuxovým kontejnerem a obrázkem?

  2. Router pfSense vs Netgear:Jaké jsou hlavní rozdíly?

  3. Jaký je rozdíl mezi příkazem locate a find v Linuxu