GNU

Van Wikipedia, de gratis encyclopedie
Spring naar navigatie Spring naar zoeken
GNU
De GNU-mascotte
Gnome-2.18.1.png
Een van de desktop die bruikbaar is met GNU, Gnome 2
ontwikkelaar GNU-project
Licentie(s) GNU GPL
Kernel Doe microkernel / Linux
voorgeslacht GNU (geen voorouders)
talen) meertalig
www.gnu.org

GNU ( Duits en Engels [ ˈGnuː ], Audiobestand / audiovoorbeeld luister ? / i ) is een Unix-achtig besturingssysteem en volledig gratis software die wordt ontwikkeld als een softwareverzameling van applicaties en bibliotheken als onderdeel van het GNU-project , dat in 1984 begon. GNU valt onder de GNU General Public License (GPL). Omdat de eigen kernel van het project, GNU Hurd , niet geschikt is voor praktisch gebruik, wordt het systeem nu meestal gecombineerd met de Linux-kernel en GNU/Linux genoemd, maar meestal gewoon Linux .

De naam GNU is een recursief acroniem van "GNU's Not Unix" ("GNU is niet Unix") en moet, om verwarring te voorkomen, worden uitgesproken als het dier Gnu in het Duits, niet zoals in het Engels (niet als nieuw ). Als logo werd ook de kop van een Afrikaanse gnoe-antilope gekozen.

verhaal

Na de aankondiging in 1983 en de daaropvolgende oprichting van het GNU-project in 1984, dat tot doel had GNU te ontwikkelen, is het GNU-besturingssysteem sindsdien actief ontwikkeld. GNU is ontworpen om zo compatibel mogelijk te zijn met Unix . Er waren verschillende redenen voor deze beslissing: Aan de ene kant was het zeker dat de meeste bedrijven een fundamenteel nieuw besturingssysteem zouden afwijzen als de programma's die ze gebruikten er niet op zouden draaien. Aan de andere kant maakte de architectuur van Unix een snelle, eenvoudige en gedistribueerde ontwikkeling mogelijk, aangezien Unix uit veel kleine programma's bestaat die grotendeels onafhankelijk van elkaar kunnen worden ontwikkeld.

In 1990 werd een ontwikkelsysteem met de GNU C-compiler en veel systeemprogramma's voltooid, maar een kernel ontbrak nog. De Free Software Foundation besloot toen (na veel heen en weer) om de Mach- kernel te gebruiken. Op basis hiervan moet een multi-server besturingssysteem worden geschreven, zodat het systeem gemakkelijker kan worden uitgebreid met extra componenten en gebruikers zonder beheerdersrechten ook hun eigen componenten kunnen integreren zonder de stabiliteit van het totale systeem in gevaar te brengen.

Het systeem met meerdere servers kreeg de naam GNU Hurd . Omdat het echter intensief gebruik maakte van multithreading , bleek debuggen erg moeilijk. Het project werd erg groot en moeilijk te managen. Tegelijkertijd werden de ontwikkelaars aangetrokken door het veel pragmatischere Linux , waarin GNU Mach en GNU Hurd ontbraken. De ontwikkeling van deze onderdelen verliep traag. Gedurende deze tijd werd een running gag gemaakt waarin gebruikers vroegen wanneer Hurd klaar was en het antwoord verwees naar het volgende jaar. Hurd wordt daarom vaak vaporware genoemd .

In 1998 lanceerde Marcus Brinkmann het Debian GNU / Hurd- project om de ontwikkeling meer vaart te geven. De infrastructuur van het Debian- project werd bruikbaar gemaakt voor GNU Mach en GNU Hurd, waarbij voor het eerst een groter aantal applicaties naar het systeem werd geporteerd. Een bruikbare installatieroutine werd gecreëerd als onderdeel van Debian GNU / Hurd, en X11, Gnome en KDE werden ook naar het platform geporteerd. Bovendien profiteerde ze van het geavanceerde pakketbeheer met behulp van apt-get , dpkg en de andere tools die Debian biedt voor systeembeheer. Brinkmann breidde de GNU Hurd ook uit met een Unicode- compatibele console , die is gebaseerd op een client/server-architectuur en dus duidelijk beter presteert dan de Linux- console in termen van flexibiliteit.

In 2001 waren er ook pogingen om GNU Hurd over te zetten van de Mach-microkernel GNU Mach naar een L4- kernel, een microkernel van de tweede generatie. Net als Debian GNU / Hurd werd dit L4 Hurd- project ook grotendeels gepromoot en gecoördineerd door Marcus Brinkmann. De eerste fase van deze overdracht werd in februari 2005 voltooid. Sindsdien kunnen de eerste kleine programma's worden uitgevoerd onder een GNU Hurd L4-systeem. Noch een shell, noch de GNU-software zijn echter tot nu toe beschikbaar, zodat interactie met het systeem in eerste instantie beperkt is tot het gebruik van de kernel debugger . In januari 2006 waren er overwegingen om Coyotos te gebruiken in plaats van de L4 microkernel.

Kernel

Het GNU-project levert de GNU Hurd- kernel voor GNU. De keuze voor deze experimentele kernel was een belangrijke reden voor de trage ontwikkeling van een bruikbaar GNU-besturingssysteem.

GNU Mach is de favoriete microkernel van het GNU-project, [1] dat de abstractie van de hardware mogelijk maakt. Het is een implementatie van de Mach-kernel en momenteel (vanaf december 2015) de standaard microkernel van GNU Hurd. Tot nu toe draait GNU Mach alleen op machines met de verouderde Intel 32-bit architectuur . Voor de toekomst zijn nog meer havens gepland, maar de ontwikkeling stagneert. [2] Omdat de combinatie van Mach en Hurd nog steeds moeilijk productief te gebruiken is, wordt Linux heel vaak als kernel gebruikt en wordt het hele systeem alleen "Linux" genoemd in plaats van GNU / Linux .

"Hurd / L4" of "L4-Hurd" [3] is een project dat "GNU Hurd" naar de L4-microkernel moest porten en zo GNU Mach op de lange termijn zou vervangen. L4 is echter ongeschikt gebleken. [4]

GNU / Linux en zijn componenten

De combinatie van GNU en de Linux-kernel maakt een volwassen, stabiel besturingssysteem voor personal computers , servers en embedded systemen mogelijk en bestaat uit de volgende onderdelen:

Onderdelen met relevantie voor het besturingssysteem

Onderdelen die niet relevant zijn voor het besturingssysteem

  • Programma's onder vrije licentie (bijv. applicatieprogramma's, deels ook uit het GNU-project), [18] bijvoorbeeld Bazaar , GIMP of GNU Octave
  • Eigen programma's worden strikt afgewezen door het GNU Project en de Free Software Foundation, [19] omdat ze hun vrijheidsdoelen niet halen. Dit bevat B. Adobe Flash Player .

Programma's

Om een ​​compleet besturingssysteem mogelijk te maken, werden een softwarepakket van toepassingen, bibliotheken en hulpprogramma's voor ontwikkelaars - GNU-software of -pakketten genoemd - en GNU Hurd als de kernel geprogrammeerd. [20]

Aangezien GNU Hurd als systeemkernel tot nu toe slecht geschikt was voor productief gebruik, wordt het GNU-besturingssysteem meestal samen met de Linux-kernel gebruikt. Linux als kernel bevat echter ook propriëtaire firmware , daarom wordt er een gratis variant van het Fork Linux-libre ontwikkeld.

Unix-hulpprogramma's werden vervangen door overeenkomstige GNU-projecten omdat uit vergelijkingen bleek dat GNU-software stabieler was en minder vatbaar voor fouten. [21] Sommige GNU-programma's, b.v. De GNU Compiler Collection is bijvoorbeeld geport naar bijna alle besturingssystemen die tegenwoordig in gebruik zijn.

Andere bekende software van het GNU-project zijn de GNU-C-bibliotheek , de Bash (Bourne-Again-Shell), de teksteditor GNU Emacs en de GNU Debugger .

Opgemerkt moet worden dat niet alle software die gewoonlijk bij een GNU/Linux-distributie wordt geleverd, door het GNU-project is gemaakt. Het GNU-project doet het bijvoorbeeld zonder B. over het ontwikkelen van je eigen X Window Systeem , want inmiddels hebben anderen een gratis implementatie gemaakt.

verhaal

Het eerste programma dat voor GNU is geschreven, was de GNU Emacs-teksteditor van Richard Stallman . Het werk eraan begon in september 1984. [22] Begin 1985 classificeerde Stallman het zelf voor het eerst als bruikbaar. In die tijd was het nog niet gebruikelijk om software via internet te verkopen, omdat toegang schaars was. In plaats daarvan werd software op diskettes verkocht.

In 1991 ontwikkelde Linus Torvalds, geïnspireerd door GNU, een nieuwe kernel: Linux. Dit werd in 1992 uitgebracht onder de GNU General Public License en werd door sommige distributeurs gebruikt als een variant van de nog niet voltooide systeemkernel GNU Hurd. [23] Het is dankzij Linux dat een versie van het GNU-systeem tegenwoordig daadwerkelijk uitvoerbaar is. [24] In de loop van de toenemende populariteit werd deze variant ten onrechte GNU's "Linux" genoemd. Richard Stallman hecht dan ook veel belang aan de aanduiding GNU/Linux . [25] (Zie ook GNU/Linux-naamgeschil .)

toestand

Het besturingssysteem wordt nog steeds voortdurend bijgewerkt. GNU Hurd is ook slechts sporadisch in ontwikkeling, [2] omdat nog niet alle gebieden van Hurd zijn geïmplementeerd. De ontwikkeling van de microkernels is inmiddels deels in slaap gevallen. Aan de andere kant zijn de GNU-hulpprogramma's compleet. GNU wordt al jaren voornamelijk gebruikt in de op Linux gebaseerde variant GNU/Linux en op gratis en propriëtaire Unix-systemen op alle gebieden.

Debian GNU / Hurd

De meest geavanceerde en actieve GNU- distributie op basis van Hurd is momenteel Debian GNU / Hurd. Ongeveer 78% van de ongeveer 30.000 pakketten in het officiële Debian-archief is tot dusver met succes vertaald voor Debian GNU / Hurd. [26]

Gentoo / Hurd

Naast de Debian GNU/Hurd port zijn er ook Gentoo /Hurd projecten, maar die liggen sinds september 2006 stil en zoeken ondersteuning.

Arch Hurd

Sinds januari 2010 is er actief gewerkt aan een Hurd-distributie die de principes van Arch Linux vertegenwoordigt .

varianten

Het GNU-systeem was in feite een besturingssysteem zonder een kernel. Aangezien de software kan worden uitgerold naar andere kernels dan de GNU Hurd, zijn er systemen die varianten van GNU kunnen worden genoemd. GNU/Linux is verreweg de meest populaire variant van GNU en wordt vaak Linux genoemd (zie GNU/Linux naamgeschil ).

Er is ook de Cygwin ontwikkeld door Red Hat (voorheen Cygnus Solutions ), een op Windows gebaseerd GNU-systeem.

Zie ook

Portal: Vrije Software - Overzicht van Wikipedia-inhoud over het onderwerp Vrije Software

web links

Commons : GNU- album met foto's, video's en audiobestanden

Individueel bewijs

  1. Inleiding tot GNU Mach. (Niet langer online beschikbaar.) In: gnu.org. Free Software Foundation 20 januari 2007, gearchiveerd van het origineel op 12 november 2008 ; geopend op 17 januari 2013 .
  2. a b NIEUWS - hurd / gnumach.git - GNU Mach. Ontvangen 1 september 2019 .
  3. Mailinglijsten op de GNU-website
  4. Wat is er gebeurd met de L4 / Coyotos / viengoos micro-kernels? In: GNU-website - Hurd faq. Free Software Foundation, Inc., 19 juli 2011, geraadpleegd op 25 maart 2012 .
  5. Alle GNU-pakketten (gnu.org)
  6. GNU @ Vrije Software Directory (fsf.org)
  7. ^ POSIX - De GNU C-bibliotheek
  8. glibc (Posix)
  9. GCC-doelsystemen
  10. https://ftp.gnu.org/non-gnu/
  11. https://ftp.gnu.org/non-gnu/X11.README
  12. ^ De Linux-kernelarchieven
  13. Release-opmerkingen voor Linux v0.12
  14. Moet de GNU / [Naam] Conventie worden toegepast op alle programma's die onder de GPL vallen? Veelgestelde vragen over GNU / Linux door Richard Stallman
  15. Waarom GNU / Linux schrijven in plaats van GNU Linux? Veelgestelde vragen over GNU / Linux door Richard Stallman
  16. Is het niet verkeerd om het werk van Linus Torvalds GNU te noemen? Veelgestelde vragen over GNU / Linux door Richard Stallman
  17. Is Linus Torvalds het ermee eens dat Linux slechts de kernel van het besturingssysteem is? Veelgestelde vragen over GNU / Linux door Richard Stallman
  18. FSF Vrije Software-map
  19. Vermijd verderfelijke compromissen (gnu.org)
  20. ^ Cornerstone GNU-software op de GNU-website
  21. ^ Barton P. Miller et al : Fuzz Revisited: A Re-onderzoek van de betrouwbaarheid van Unix Utilities and Services , 18 februari 2000.
  22. Richard Stallman: Het GNU project op gnu.org, 17 april 2012.
  23. GNU Hurd-status , 17 april 2012.
  24. ^ Richard Stallman: Het GNU-project , 17 april 2012.
  25. ^ Richard Stallman, GNU-gebruikers die nog nooit van GNU hebben gehoord , 17 april 2012.
  26. ^ De GNU / Hurd-architectuur, handige functies en het laatste nieuws. (PDF) Ontvangen 11 februari 2013 .