GNU: Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
NickyBot (dyskusja | edycje)
m przeniesienie sablonu DisambigR
m lw
Linia 6:
|rodzina = [[system uniksopodobny|uniksopodobne]]
|wersja = 2.1.4
|data =
|producent = [[Projekt GNU]]
|licencja = [[GNU General Public License|GPL]] i inne licencje [[Wolne Oprogramowanie|wolnego oprogramowania]]
|system =
|kernel = [[mikrojądro]]
|środowisko =
|www = [http://gnu.org gnu.org]
|distrowatch =
|pakiety =
|live = tak
|grafika = GNU screenshot.png
Linia 22:
Projekt mający na celu stworzenie GNU to ''[[Projekt GNU]]'', a programy przez niego wydawane nazywane bywają ''pakietami GNU'' lub ''programami GNU''. Podstawowe składniki systemu to zestaw kompilatorów [[GNU Compiler Collection]] (GCC), narzędzia programistyczne [[Binutils|GNU Binary Utilities]] (binutils), powłoka [[bash]], [[biblioteka standardowa języka C|biblioteka standardowych funkcji języka C]] [[GNU C Library]] (glibc) i narzędzia [[GNU Coreutils]] (coreutils).
 
Pomimo tego, że większość elementów systemu została już dawno skompletowana i jest w powszechnym użyciu od ponad dziesięciu lat, oficjalne [[jądro systemu operacyjnego|jądro]] GNU, [[GNU Hurd|Hurd]], jest niekompletne i nie wszystkie elementy mogą z nim współpracować. Z tego powodu większość użytkowników systemu GNU używa jądra [[Linux (jądro)|Linux]]. Nie zostało ono jednak uznane za jądro systemu, mimo że GNU oficjalnie zawiera zewnętrzne oprogramowanie, jak np. implementację [[X.Org]] dla [[X Window System]] czy system profesjonalnego składu drukarskiego [[TeX]]. Wiele programów GNU zostało dodatkowo przeniesionych na inne systemy operacyjne, jak np. [[Microsoft Windows]], [[Solaris (system operacyjny)|Solaris]], [[Mac OS]] czy różnorakie warianty systemu [[Berkeley Software Distribution|BSD]]<ref name="LinuxAndGnu">{{cytuj stronę|url=http://www.gnu.org/gnu/linux-and-gnu.html|tytuł="Linux and the GNU Project"|autor=Richar Stallman|język=en|data dostępu=2011-01-26}}</ref>.
 
Specjalnie na użytek Projektu GNU napisano licencje [[GNU General Public License]] (GPL), [[GNU Lesser General Public License]] (LGPL) i [[GNU Free Documentation License]] (GFDL), obecnie używane także przez wiele projektów z nim niezwiązanych<ref name="GPL">{{cytuj stronę|url=http://www.gnu.org/gnu/thegnuproject.html|tytuł="The GNU Project"|autor=Richard Stallman|język=en|data dostępu=2011-01-26}}</ref>.
Linia 28:
== Historia ==
{{main|Historia Wolnego Oprogramowania}}
Projekt systemu GNU został publicznie ogłoszony [[27 września]] [[1983]] roku przez [[Richard Stallman|Richarda Stallmana]] na grupach dyskusyjnych net.unix-wizards i net.usoft<ref>[[Richard Stallman]], [http://groups.google.com/group/net.unix-wizards/msg/4dadd63a976019d7 net.unix-wizards, ''"New UNIX implementation"'' (''"Nowa implementacja Uniksa"'')], [[27 września]] [[1983]] {{lang|en}} ([http://www.gnu.org/gnu/initial-announcement.pl.html polskojęzyczne tłumaczenie])</ref>. Rozwój oprogramowania zaczął się [[5 stycznia]] [[1984]] roku, gdy Stallman zakończył pracę na [[Massachusetts Institute of Technology]]; miało to uniemożliwić uczelni wtrącanie się w udostępnianie GNU na zasadach wolnego oprogramowania oraz roszczenie sobie do niego praw autorskich. Według Stallmana nazwa systemu zainspirowana została przez różnorodne gry słowne, w tym m.in. piosenkę ''[[The Gnu|The GNU]]''.
 
Zamierzeniem Stallmana było stworzenie w pełni wolnego systemu operacyjnego. Chciał on zapewnić użytkownikom komputerów swobodę – taką jaką mieli oni w latach [[lata 60. XX wieku|60.]] i [[lata 70. XX wieku|70.]] XX wieku: możliwość analizowania kodu źródłowego oprogramowania, którego używają, swobodę dzielenia się oprogramowaniem z innymi osobami, możliwość zmiany zachowania oprogramowania oraz swobodę publikowania zmodyfikowanych wersji oprogramowania. Filozofia ta została opublikowana w marcu [[1985]] roku jako [[Manifest GNU]] i posłużyła w późniejszym czasie do stworzenia [[Definicja Wolnego Oprogramowania|Definicji Wolnego Oprogramowania]].
Linia 36:
Większość GNU napisana została przez wolontariuszy w ich wolnym czasie; niektórzy z nich opłacani byli przez różnorodne przedsiębiorstwa, instytucje i organizacje non-profit.
 
Doświadczenia Richarda Stallmana z [[ITS (system operacyjny)|Incompatible Timesharing System]] (ITS), wczesnym systemem operacyjnym napisanym w [[asembler]]ze, który stał się przestarzały z powodu braku kontynuacji prac nad komputerami [[PDP-10]], doprowadziły do decyzji, że system GNU musiał być przenośny <ref>[http://fsfeurope.org/documents/rms-fs-2006-03-09.en.html#choosing-the-unix-design ''Transcript of Richard Stallmann on the Free Software movement, Zagreb; 2006-03-09''] {{lang|en}}</ref>. Zdecydowano także, że ma być jak najbardziej zgodny z [[Unix|Uniksem]].
 
Z biegiem czasu w rozwój GNU zaczęły angażować się prywatne przedsiębiorstwa, sprzedające oprogramowanie GNU i zapewniające dla niego komercyjne wsparcie techniczne. Najbardziej znaną taką firmą było [[Cygnus Solutions]], obecnie część [[Red Hat]]a.
 
== Budowa i realizacja ==
W roku 1990 system GNU posiadał już [[edytor tekstu]] ([[Emacs]]), [[kompilator]] ([[GNU Compiler Collection|GCC]]) oraz większość podstawowych bibliotek i narzędzi standardowej dystrybucji Uniksa. Jako że głównym założeniem było stworzenie w pełni wolnego systemu operacyjnego, a nie napisanie go zupełnie od nowa, starano się używać wolnego oprogramowania wszędzie, gdzie było to możliwe. W latach 80. nie było go zbyt wiele; skorzystano więc z okienkowego systemu graficznego [[X Window System]], systemu profesjonalnego składu drukarskiego [[TeX]] i mikrojądra [[Mach (system operacyjnyjądro)|Mach]] i włączono je do GNU.
 
Najważniejszym brakującym składnikiem GNU było jądro. W Manifeście GNU Stallman wspominał, że "''istnieje znajdujące się w początkowym stadium rozwoju jądro, ale jeszcze brakuje mu wiele, aby emulować Uniksa''". Odnosił się on do jądra systemu [[TRIX (system operacyjny)|TRIX]], którego autorzy zdecydowali udostępnić je na zasadach wolnego oprogramowania i które było zgodne z 7. wersją Uniksa. Prace nad modyfikacją tego jądra rozpoczęły się w grudniu [[1986]] roku. Ostatecznie zdecydowano się jednak porzucić je ze względu na małą użyteczność i fakt działania wyłącznie na "''rzadkiej, drogiej [[MC68000|68000]]''", co w przyszłości wymusiłoby dodatkowe prace nad przeniesieniem go na inne architektury, zanim mogłoby być uruchomione.
 
Początkowym planem Projektu GNU była adaptacja jądra systemu BSD 4.4-Lite. Ze względu na brak współpracy ze strony programistów z [[UniwersytetUniversity Kalifornijskiof wCalifornia, Berkeley|Berkeley]], Richard Stallman od roku 1988 rozważał użycie [[Mach (system operacyjnyjądro)|jądra Mach]] zamiast jądra BSD 4.4-Lite, jednak na jego udostępnienie na zasadach wolnego oprogramowania trzeba było poczekać aż do roku 1990; w tym czasie programiści nad nim pracujący starali się usunąć z niego kod objęty prawami autorskimi [[AT&T]]. Budowa jądra miała być największą różnicą pomiędzy GNU a "tradycyjnym" Uniksem. Jądro GNU miało być wielowątkowym [[mikrojądro|mikrojądrem]] i miało składać się z zestawu programów nazywanych ''serwerami'', które miały oferować taką samą funkcjonalność jak tradycyjne jądro Uniksa.
 
Ponieważ Mach zapewniał jedynie niskopoziomową funkcjonalność jądra, Projekt GNU zmuszony był do stworzenia wysokopoziomowych części jądra jako zbioru programów użytkownika. Początkowo zbiór ten miał nazwany być Alix na cześć ówczesnej partnerki Richarda Stallmana, ale [[Thomas Bushnell]], główny twórca jądra GNU, preferował nazwę Hurd. Nazwą Alix nazwana została część jądra przechwytująca, obsługująca i wysyłająca komunikaty systemowe do ''serwerów'' Hurda, ostatecznie – po tym, jak biblioteka C mogła wysyłać komunikaty bezpośrednio do ''serwerów'' – porzucona<ref>[http://www.gnu.org/gnu/thegnuproject.pl.html "''O projekcie GNU''"]</ref>. Od początku lat 90. rozwój Hurda został gwałtownie zahamowany przez pojawiające się problemy techniczne. Richard Stallman wspominał o tym [[9 marca]] [[2006]] roku w Zagrzebiu<ref>[http://fsfeurope.org/documents/rms-fs-2006-03-09.en.html#gnu-and-linux FSFEurope, ''Transcript of Richard Stallmann on the Free Software movement, Zagreb; 2006-03-09''] {{lang|en}}</ref>:
Linia 71:
 
== Oprogramowanie ==
Wiele programów GNU zostało przeniesionych na inne systemy operacyjne, w tym różne zamknięte platformy, jak np. [[Microsoft Windows]] czy [[OS X|Mac OS X]]. Bywają one instalowane w zamkniętych wariantach Uniksa jako zamienniki dla oryginalnych narzędzi producenta. W przypadku testów bywają uznawane za bardziej niezawodne niż ich zamknięte Uniksowe odpowiedniki<ref>[http://ftp.cs.wisc.edu/pub/paradyn/technical_papers/fuzz-revisited.ps Fuzz Revisited: A Re-examination of the Reliability of UNIX Utilities and Services] {{lang|en}}</ref>.
 
Niektóre przykłady oprogramowania powstałego w ramach projektu GNU (uszeregowane alfabetycznie):
Linia 86:
* [[GRUB]] – [[Program rozruchowy|bootloader]]
* [[GNU Hurd]] – zestaw ''serwerów'' mikrojądra pełniący tę samą funkcję, co tradycyjne jądro Uniksa
* [[GNU C Library|GNU libc]] – biblioteka standardowych funkcji języka [[C (język programowania)|C]], stanowiąca pomost między systemem operacyjnym a aplikacjami
* [[GNUnet]] – niezależna i zdecentralizowana infrastruktura dla bezpiecznych sieci typu [[Peer-to-peer|P2P]]
* [[GNU Octave]] – środowisko obliczeń oraz język programowania przeznaczony dla prowadzania obliczeń numerycznych
* [[GNU Scientific Library]] – zaawansowana biblioteka funkcji obliczeniowych i naukowych
* [[GNU Screen]] – menedżer ekranów
* [[gzip]] – biblioteka i program przeznaczony do [[kompresja bezstratna|bezstratnej kompresji]] danych
* [[Pidgin (komunikator internetowy)|Pidgin]] – komunikator internetowy
* [[wget]] – program służący do pobierania plików z Internetu
 
Linia 98:
 
=== Dystrybucje GNU ===
System GNU (używający Hurda jako jądra) może być wypróbowany przy użyciu [[Live CD|LiveCD]]. Do dystrybucji GNU należą m.in.:
* [[Bee GNU/Hurd]]
* [[Debian GNU/Hurd]]
Linia 108:
* [[Warianty systemu GNU#Jądro BSD|Debian GNU/kFreeBSD]]
* [[Warianty systemu GNU#Jądro BSD|Debian GNU/NetBSD]]
* [[Nexenta|Nexenta OS]] — GNU z jądrem [[OpenSolaris]]a
 
== Logo ==
[[Logo (znak graficzny)|Logo]] GNU jest stylizowana [[antropomorfizmAntropomorfizacja|antropomorficzna]] głowa [[Gnu pręgowane|antylopy gnu]]. Oryginalny projekt stworzony został przez [[Etienne Suvasa|Etienne Suvasę]]. Jest on używany w oprogramowaniu GNU, drukowanych i elektronicznych wersjach dokumentacji Projektu GNU oraz w materiałach Free Software Foundation<ref>[http://www.gnu.org/graphics/agnuhead.pl.html Strona Projektu GNU opisująca logo]</ref>.
 
== Zobacz też ==
Linia 125:
== Bibliografia ==
* {{Cytuj książkę | nazwisko=Williams | imię=Sam | tytuł=W obronie wolności: Krucjata hakera na rzecz wolnego oprogramowania | data=2003 | wydawca=Helion | miejsce=Gliwice | isbn = 83-7361-247-5}}
* {{Cytuj książkę | nazwisko=Stallman | imię=Richard M. |tytuł=Free Software, Free Society: Selected Essays of Richard M. Stallman | data=2002 | wydawca=Free Software Foundation | miejsce=Filadelfia | isbn = 1882114981}} {{lang| język = en}}
 
== Linki zewnętrzne ==