GNU

**GNU** je operativni sistem sastavljen isključivo od slobodnog softvera. Njegovo ime je rekurzivna skraćenica za "GNU Nije Unix" (''"GNU's Not Unix"*). Ričard Stalman je 1983. objavio **Projekat GNU**, u cilju stvaranja potpunog UNIX kompatibilnog operativnog sistema — poznatog kao **GNU sistem** ili prosto **GNU** — koji je slobodan softver. Projekat GNU se danas odvija pod pokroviteljstvom Fondacije za slobodni softver (*Free Software Foundation*).

Razvoj GNU sistema je značio i pisanje mnogih programa, poznatih kao **GNU programi** ili **GNU paketi**. Među njima su i uređivač teksta Emacs, GCC, GNU-ov debugger i radno okruženje GNOME.

GNU sistem se obično koristi u kombinaciji sa Linux kernelom, koji je razvijen van projekta GNU. Ova kombinacija čini potpuno funkcionalan operativni sistem, GNU/Linux, koji se međutim često pogrešno naziva samo "Linux".

GNU-ovi programi se često koriste i samostalno. Nije neuobičajeno naći komponente GNU-a instalirane na vlasničkim UNIX sistemima umjesto prvobitnih UNIX programa — posebno onih koji su alatke za programiranje i koji se često nazivaju zajedničkim imenom *GNU-ov skup alata*. (to je samo mali dio cjeline GNU sistema.) Koriste se na ovaj način jer su se pokazali kao superiorni u odnosu na ekvivalentne UNIX verzije, čak i onda kada nisu potpuno saglasni sa POSIX standardom. Također, zbog popularnosti kombinacije GNU sa Linuxom, mnogi koji rade na razvoju softvera instaliraju GNU-ov skup alata na druge sisteme zbog kompatibilnosti ili zato što skup radi ujednačeno na svim platformama. Mnogi GNU-ovi programi su također prebačeni () na Microsoft Windows, macOS i razne druge vlasničke platforme. Međutim, razlog za postojanje portova je da pomognu da se ti sistemi zamijene slobodnim softverom.

## Historija 
Projekat GNU je javno oglašen 27. septembra 1983. godine na diskusionim grupama net.unix-wizards i net.usoft. Pravi rad na projektu je počeo 5. januara sljedeće godine, kada je Stallman dao ostavku na MIT-u da bi ih onemogućio da polaže bilo kakva prava ili da ometaju raspodjelu (distribuciju) GNU-a kao slobodnog softvera. Prvobitna objava je praćena Stalmanovim "Manifestom GNU-a" i drugim esejima koji su izložili njegove motive za projekat GNU, od kojih je jedan bio i „vraćanje duha saradnje koji je preovlađivao u računarskoj zajednici u njenim ranijim danima".

Kada je GNU predložen, vlasnički operativni sistem UNIX je već bio u širokoj upotrebi. Budući da se arhitektura UNIXa pokazala tehnički stabilnom, sistem GNU je dizajniran tako da bude kompatibilan sa njim. UNIX arhitektura je omogućavala da GNU bude napisan od pojedinačnih softverskih komponenti. One komponente koje su već bile slobodno dostupne, kao što su TeX sistem za prelom teksta i X Window grafički sistem, će biti prilagođene i ponovo iskorištene, dok će nedostajuće biti napisane od nule.

1985. godine Stalman je osnovao Fondaciju slobodnog softvera (FSF), neprofitnu organizaciju da bi pružala logističku, pravnu i finansijsku podršku projektu GNU. FSF također zapošljava i programere da doprinose GNU-u, mada je značajan dio razvoja bio (i još uvijek je) djelo dobrovoljaca. Kako se GNU sve više isticao, tako su zainteresovani biznisi počeli da doprinose razvoju ili prodaji GNU softvera i tehničke podrške. Najistaknutiji i najuspješniji od ovih je bio Cygnus Solutions), danas dio Red Hata.

Da bi osigurao da GNU softver ostane slobodan, projekat je 1989 godine izdao prvu verziju GNU javne licence. Ovu licencu danas koristi najveći dio GNU programa, kao i veliki broj programa slobodnog softvera koji nisu dio projekta GNU; to je jedna od najčešće korištenih licenci slobodnog softvera na svijetu. Ona daje pravo svima koji prime program da ga pokreću, kopiraju, mijenjaju i distribuiraju a istovremeno im brani da nametnu dalja ograničenja na kopije koje oni raspodijele. Ova ideja se naziva copyleft).

Do 1990 godine, sistem GNU je imao proširivi uređivač teksta (Emacs), vrlo uspješan optimizirajući kompajler) (GCC) kao i većinu osnovnih biblioteka i alatki jedne standardne UNIX distribucije. Glavna komponenta koja je još uvek nedostajala je bio kernel. U Manifestu GNU-a, Stallman je pomenuo da "osnove kernela postoje, ali nam nedostaje još osobina do emulacije UNIXa". On je mislio na TRIX, jezgro sa udaljenim pozivom postupka (*remote procedure call kernel*), koje je razvijeno na MIT-u i čiji su autori odlučili da ga raspodjeljuju besplatno (*for free*) a koji je bio kompatibilan sa verzijom 7 UNIXa. U decembru 1986. počeo je rad na prilagođavanju ovog kernela. Međutim, razvojni tim je na kraju odlučio da je ono beskorisno kao početna tačka zato što se moglo pokrenuti jedino na „rijetkoj i skupoj 68000 platformi" ("*an obscure, expensive 68000 box*") i da bi ga zato trebalo portovati (prebaciti) na druge platforme pre nego što uopće bude korišteno. Do 1988 je umesto njega razmatran Mach, kernel sa slanjem poruka (*message-passing kernel*), koji je razvijan na Univerzitetu Karnegi Melon, mada je njegovo izdanje kao slobodnog softvera odloženo do 1990 godine, dok razvojni tim nije uklonio kod koji je bio vlasništvo ATT-a (*AT&T*).

Budući da je Mach obezbjeđivao samo najniže funkcije kernela, Projekat GNU je morao da razvije dijelove višeg nivoa kernela, i to kao zbirku korisničkih programa. Ova zbirka je prvobitno trebala da se zove Aliks (*Alix*), ali je kasnije razvijaču () Michael Bushnell-u draže bio dio imena Hurd. pa je Alix prvo pomjereno za ime podsistema i na kraju i konačno izbačeno. Na koncu, razvoj Hurd-a se otegao zbog tehničkih i sukoba ličnosti.

1991 godine Linus Torvalds (Linus Torvalds) napisao je UNIX kompatibilni kernel Linux. Mada prvobitno nije bilo slobodan softver, Torvalds je licencu promijenio na GNU-ovu GPL 1992 Linuks su dalje razvijali razni programeri preko Interneta. 1992. je kombinovano sa GNU sistemom, što je za rezultat imalo potpuno funkcionalan slodoban operativni sistem. Komponente iz GNU sistema se najčešće sreću uklopljene u Linux sistem, zbog čega brojni pojedinci Linux ispravnije zovu "GNU/Linux". Od 2005 Hurd je u sporom razvoju te je sada zvanični kernel GNU sistema. Postoji također i projekat koji radi na portovanju GNU sistema na jezgra FreeBSD-a i NetBSD-a.

## GNU softver 
Dio softvera koji je razvijen u okviru projekta GNU:

* Sistemski softver
** GNU bison &ndash; (*parser generator*) namijenjen kao zamjena za yacc
** Bash &ndash; komandna školjka
** BFD &ndash; biblioteka objektnih datoteka
** Classpath &ndash; biblioteke za Javu
** Coreutils &ndash; osnovni Unix alati, kao što su cat, ls i rm
** Emacs &ndash; proširivi, samodokumentujući uređivač teksta
** glibc &ndash; POSIX standardna biblioteka za C, sa dodatnom funkcionalnošću

** gzip &ndash; biblioteka i program za kompresiju podataka
** GNU-ov alatni lanac za razvoj softvera: 
*** GNU Binutils &ndash; assembler (assembler), linker (linker) i srodni alati
*** GNU-ov sistem za gradnju (GNU build system) &ndash; Automake, Autoconf, Libtool
*** GCC &ndash; optimizirajući prevodilac za mnoge programske jezike, uključujući C, C++, FORTRAN, Adu i Javu
*** GDB &ndash; debugger
** GNU MDK &ndash; razvojni komplet (development kit) za programiranje u MIX-u
** Screen &ndash; multipleksor (multiplexer) terminala
** Texinfo &ndash; dokumentacioni sistem za proizvodnju mrežnih (online) i štampanih uputstava
** GNU wget &ndash; napredno preizimanje datoteka sa mreža i Interneta
** GNUnet &ndash; decentralizovana „peer-to-peer“ komunikaciona mreža dizajnirana da bude otporna na cenzuru
** DotGNU &ndash; zamjena za .NET
** GNU Hurd &ndash; skup servera utemeljen na kernelu koji obavlja iste funkcije kao i Unix kernel
* Aplikativni softver
** GIMP &ndash; GNU-ov program za manipulaciju slikama (GNU Image Manipulation Program)
** GLPK &ndash; paket namjenjen rješavanju problema u linearnom programiranju (LP), mixed integer programming (MIP) i sličnih.
** GMP &ndash; biblioteka za numeričke proračune u proizvoljnoj preciznosti 
** GNOME &ndash; grafičko okruženje
** GNU LilyPond &ndash; program za pisanje notnih zapisa
** GNU Octave &ndash; program za numeričke proračune sličan MATLAB-u
** GNU Privacy Guard (GnuPG) &ndash; slobodna alatka za enkripciju koja može da zamijeni PGP
** GNU Robots &ndash; mala ali zarazna igra za računarske programere
** GSL &ndash; GNU-ova naučna biblioteka (GNU Scientific Library)
** GNUstep &ndash; izvedba (implementacija) OpenStep standarda za skup biblioteka i razvojnih alata za grafičke aplikacije
** Guile &ndash; ugradivi (embeddable) interpreter za Scheme 

GNU projekat također raspodjeljuje i pomaže u razvoju drugih paketa koji su nastali drugdje, npr:
* DDD &ndash; grafički frontend za debuggere
* eCos &ndash; mali operativni sistem za ugrađene (embedded) uređaje
* CVS &ndash; kontrola izvornog koda

U januaru 2004. godine bilo je ukupno 260 GNU paketa dostupnih na GNU-ovom sajtu Savana (*Savanah*) koji služe u tu svrhu. Ostali se mogu naći na na drugim mjestima.

## Govornici 
Zvanični govornici projekta GNU http://www.gnu.org/people/speakers.html:
* Robert J. Chassell
* Loïc Dachary
* Ricardo Galli
* Georg Greve
* Federico Heinz
* Bradley Kuhn
* Eben Moglen
* Richard Stallman
* David Sugar

## Također pogledajte 
* Fondacija slobodnog softvera
* Pokret slobodnog softvera
* Slobodan softver
* Otvoreni softver
* Copyleft
* GNUzilla

## Reference 
* Kopija prvobitne objave Ričarda Stalmana

## Vanjski linkovi 
* Službena stranica projekta GNU 
* Stalmanova objava projekta GNU iz 1983. 
* Poduže Stalmanovo lično mišljenje o projektu i njegovoj historiji 
* *Slobodna univerzalna enciklopedija i izvor za učenje'' (The Free Universal Encyclopedia and Learning Resource), Stalmanov esej o GNU-ovoj enciklopediji 

Kategorija:Skraćenice
Kategorija:UNIX
Kategorija:GNU