GNU projekat

S Vikipedije, slobodne enciklopedije
GNU-ova maskota, napravljena od strane Aurelija A. Hekerta[1] (slika predstavlja jednostavniju verziju, verzije Etijena Suvasa)[2]

GNU projekat je slobodni softver, projekat masovne saradnje, osmišljen 27. septembra 1983. godine, od strane Ričarda Stalmana na MIT-u. Cilj ovog projekta je bio da zajedničkim razvojem i proizvodnjom softvera da slobodu i kontrolu korisnicima kompjutera i kompjuterskih uređaja. Termin "sloboda" podrazumeva sledeća prava slobode: korisnici slobodno mogu da koriste softver, da ga dele (kopiraju, distribuiraju), proučavaju ili da ga modifikuju. GNU softver garantuje (svojom licencom) da su ova prava slobode apsolutno legalna, pa samim tim GNU projekat predstavlja slobodni softver.

Da bi bila osigurana sva prava koja računarski softver garantuje svojim korisnicima (korišćenje, deljenje, učenje, modifikacija), čak i najbitniji deo - operativni sistem (uključujući sve numeričke korisne programe), mora da bude slobodni softver. Osnovni cilj projekta je da se izgradi slobodni operativni sistem, i da, ukoliko je moguće, "sve korisno koje obično dolazi u pakteu sa Juniks sistemom, bude dostpuno bez ikakvog neophodnog posedovanja vlasničkog softvera". Stalman je odlučio da nazove ovaj operativni sistem GNU (rekurzivna skraćenica koja znači "GNU-ovo ne Juniksovo"), baziran na Juniksu, vlasničkom operativnom sistemu.[3] Njegov razvoj je započet u januaru 1984. godine. U 1991. godini, kada se pojavilo Linuksovo jezgro, napravljeno od strane Linusa Torvaldsa,[4] napravljena je verzija 2 u decembru 1992. godine pod GNU-ovom opštom javnom licencom.[5] U kombinaciji sa vrlinama već postojećeg operativnog sistema razvijenog od strane GNU tima, stvorili su se uslovi za prvi operativni sistem koji je slobodan softver, poznat kao Linuks ili GNU/Linuks.

Trenutni posao projekta uključuje softverski razvoj, buđenje svesti, političku kampanju i deljenje novog materijala.

Poreklo[uredi | uredi izvor]

Ričard Stalman je najavio svoju ideju za pokretanje kodiranja GNU projekta u Juznet poruci u septembru 1983. godine.[6]

Kada je GNU porjekat startovao sa radom, imali su "Emaks tekst editor preko Lispa (programsog jezika) za pisanje komandi, debager izvornog nivoa, Yacc-kompaktibilan raščlanjivač generatora, i linker"[7] GNUovom sistemu je bilo potrebno da imaju sopstveni C (C) kompajler i alate kao slobodne softvere, pa je i na tome moralo da se radi. Do juna 1987. godine, projekat je nadogradio i razvio slobodni softver za asembler, skoro završio prilagođavanje C kompajlera (GCC), editor (GNU Emaks) kao i razne Juniksove karakteristike (kao što su ls, grep, awk, make i ld).[8] Imali su početno jezgro koje je zahtevalo više ažuriranja.

Kada su završeni jezgro i kompajler, GNU se mogao koristiti kao alatka za razvoj programa. Glavni cilj je bio da se napravi više različitih aplikacija da liče na Juniks sistem. GNU je mogao da pokrene Juniksove programe ali nije bio isti kao Juniks. GNU je ubacio duža imena fajlova, brojeve verzije fajla i jedan fajl sistem koji je otporan na bagovanje. GNU Manifesto je objavio da dobija podršku i učešće drugih na projektu. Programeri su se ohrabrili da zauzmu deo u bilo kom delu projekta koji im je interesantan. Ljudi su mogli da doniraju sredstva, delove kompjutera, ili čak i njihove kodove i programe za projekat.[3]

Nastanak i razvoj većine aspekata GNU projekta (i slobodnog softvera generalno) se nalaze u detaljno objašnjenom Emaks pomoćnom sistemu. ("C-h g" pokreće Emaks editor komandu.) Takođe, istorija GNU projekta je detaljno objašnjena i na njihovom veb sajtu.


GNU Manifesto[uredi | uredi izvor]

GNU Manifesto (časopis) je pisao Ričard Stolman da bi pridobio podršku i pomoć u GNU projektu. U GNU Manifestu, Stalman je napisao četiri osnovne slobode bitne za korisnike softvera: sloboda da se pokreće program za bilo kakvu svrhu, sloboda da se uči mehanika programa i da se sam program izmeni, sloboda da se redistribuiraju kopije i sloboda da se poprave i modifikuju verzije za javnu upotrebu.[9][10] Za realizaciju ovih sloboda, korisnicima je potreban 100% pristup kodu. Da bi se obezbedilo da kod ostane slobodan i dostupan javnosti, Stolman je kreirao GNU-ovu opštu javnu licencu (GOL), što je omogućilo da softver i njegove buduće generacije istog koda ostanu slobodni za javnu upotrebu.

Filozofija i aktivizam[uredi | uredi izvor]

Iako je većina GNU-ovih projekata tehničke prirode, svi ti projekti su pokrenuti kao socijalna, etnička i politička inicijativa. GNU porjekat je objavio veliki broj spisa, dok je većina od njih napisana od strane Ričarda Stalmana.

Slobodni softver[uredi | uredi izvor]

GNU projekat koristi softvere koji dozvoljavaju korisnicima da ih slobodno kopiraju, menjaju i distribuiraju. Predstavlja slobodni softver u smislu da omogućava svojim korisnicima da ga menjaju i prilagode sopstvenim potrebama. Način na koji programeri dobijaju slobodni softver zavisi od toga gde su ga nabavili. Softver se može dobiti od strane prijatelja ili preko interneta, ili od kompanije za koju programer radi gde može nabaviti traženi softver.


Finansiranje[uredi | uredi izvor]

Prihodovanje od pridruženih članova, prodaja i donacija kao vid podrške za GNU projekat.[11]

Kopileft[uredi | uredi izvor]

Kopileft predstavlja spregu koja pomaže da se održi slobodno korišćenje ovih softvera među drugim programerima. Kopileft daje legalno pravo da svi koriste, menjaju i redistribuiraju programe ili programske kodove sve dok se ne menjaju uslovi distribuiranja. Kao rezultat, svaki korisnik koji je dobio softver legalno ima istu slobodu kao svi ostali korisnici.

GNU projekat i fondacija slobodnog softvera ponekad biraju "jak" a nekad "slab" kopileft. "Slabi" kopileft programi uglavnom dozvoljavaju distribuciju za njihovo spajanje sa vlasničkim programima, dok "jaki" kopileft programi strogo zabranjuju ovu praksu. Većina verzija GNU-ovih projekata je objavljena pod jakim kopileftom, dok su neki objavljeni pod slabim kopileftom ili popustljivom licencom slobodnog softvera.

Razvoj operativnog sistema[uredi | uredi izvor]

GNU Hurd lajv CD

Prvi cilj GNU projekta je bio da napravi ceo operativni sistem slobodnog softvera. Do 1992. godine, GNU projekat je kompletirao sve glavne komponente operativnog sistema osim jezgra, GNU Hurda. Sa objavljivanjem Linuks jezgra, koje je samostalno počeo Linus Torvalds 1991. godine, i objavljivanjem verzije 0.12, 1992. godine pod Gnu-ovom licencom, po prvi put je bilo moguće pokrenuti operativni sistem sačinjen isključivo od slobodnog softvera. Iako jezgro Linuksa nije deo GNU-ovog projekta, ono je nadograđeno koristeći GCC i ostale GNU programske alate i objavljeno je kao slobodni softver pod GNU-ovom opštom javnom licencom.[12]

GNU/Linuks[uredi | uredi izvor]

Danas, stabilna GNU-ova verzija (ili varijanta) se može pokrenuti kombinacijom GNU paketa sa Juniks-lajk Linuks jezgrom. GNU projekat ovo naziva GNU/Linuks, a definisane karakteristike su kombinacija:

U okviru GNU vebsajta postavljena je lista projekata i svaki projekat je specifiran i ukazuje koji tip programera može da radi na zadatku potrebnom za GNU projekat. Nivo veštine varira od projekta do projekta ali svakom ko ima predznanje u programiranju je omogućeno da učestvuje u projektu.

Pakovanje GNU alata, zajedno sa Linuksovim jezgrom i drugim programima, se obično naziva Linuks distribucija (distro). GNU Projekat poziva ostale na kombinaciju GNU i Linuks jezgra "GNU/Linuks",[24] što dovodi do GNU/Linuks problema imenovanja.

Danas većina Linuks distribucija kombinuje GNU pakete sa Linuks jezgrom koji sadrži vlasničke binarne mrlje i veliki broj vlasničkih programa.

GNU-ove smernice distribucije slobodnog softvera[uredi | uredi izvor]

GNU-ove smernice distribucije slobodnog softveera (GNU SDSS) predstavljaju obavezni sistem distribucije koji se koristi da objasni šta je potrebno instaliranim distribucijama sistema (kao što je GNU/Linuks distribucija) da se kvalifikuju kao slobodni, i da pomogne pri distribuciji developera koji prave svoje distribucije.

Uglavnom, ovo obuhvata distribucije koje predstavljaju kombinaciju GNU paketa sa Linuks-Libre jezgrom (modifikovano jezgro Linuksa, koje briše binarne mrlje, menja kod i delove koda pod vlasničkom licencom) i sastoji se samo od slobodnog softvera (izbegavajući vlasnički softver u potpunosti).[25][26][27] Distribucije koje su usvojene od strane GNU SDSS-a uključuju kuNjuSens (qNewSense),Parabla GNU/Linuks-libre (Parabla GNU/Linux-libre), Triskel GNU/Linuks, Ututo, i još neke.[28]

Fedora projekat smernice distribucije licence su korišćene kao osnova za SDSS.[29]

Strateški projekti[uredi | uredi izvor]

Od sredine 1990-ih, puno je kompanija investiralo u razvoj slobodnog softvera. Zadužbina za slobodni softver je preusmerila svoje resurse ka legalnom i politički podržanom razvoju slobodnog softvera. Razvoj softvera se od tog trenutka fokusira na održavanje postojećih projekata, dok su se novi projekti pokretali samo kada je na tržištu pretila ozbiljna opasnost zajednici slobodnog softvera. Jedan od najznačajnih projekata ikada pokrenutih od strane GNU Projekta je GNU kolekcija kompajlera, čije su komponente usvojene kao standardni kompajler sistem na mnogim Juniks-lajk sistemima.

GNOM[uredi | uredi izvor]

GNOM desktop okruženje je pokrenuto od strane GNU Projekta zato što je drugi desktop sistem, KDE, koji je bio veoma popularan, zahtevao od korisnika da instaliraju KuTe (Qt), koji je bio vlasnički softver. Da bi zaštitili ljude od iskušenja da instaliraju KDE i KuTe, GNU Projekat je pokrenuo dva projekta. Jedan projekat je poznat pod imenom "Harmonijski alati". On je predstavljao pokušaj da se napravi slobodni softver kao zamena za KuTe. Da je ovaj projekat bio uspešan, postojeći problemi sa KDE bi mogli biti rešeni. Drugi projekat je GNOM, koji bi rešavao isti problem iz drugog ugla. Bio je planiran kao zamena za KDE koji nije zavisio od vlasničkog softvera. Prvi projekat nije odmakao daleko, ali je projekat vezan za GNOM dobro razvijen i odrađen. Na kraju, vlasnička komponenta zbog koje je KDE zavisio od KuTe-a je objavljena kao slobodni softver.[30]

GNU Preduzeće[uredi | uredi izvor]

GNU Predzeće (GNUp) je meta projekat započet 1996. godine,[31] i može se označiti kao potrojekat GNU Projekta . GNU-ov cilj je da napravi slobodno "preduzeće klase podataka bazirano na svesnim aplikacijama"  (ERP itd.). GNUp je dizajniran da okupi preduzetne softvere za GNU sistem na jedno mesto (slično kao GNOM projekat koji prikuplja desktop softvere).

Priznanje[uredi | uredi izvor]

U 2001. godini, GNU projekat je primio USENIX nagradu za doživotno delo za "rasprostranjenost, širinu i kvalitet svojih slobodnih i pristupačnih softvera koji se mogu redistribuirati i modifikovati, što je omogućilo generaciju istraživanja i komercijalnog razvoja".[32]

Vidi još[uredi | uredi izvor]

Reference[uredi | uredi izvor]

  1. ^ „A Bold GNU Head”. Pristupljeno 30. 11. 2014. „We thank Aurelio A. Heckert...for donating this graphic to us. 
  2. ^ „A GNU Head”. Pristupljeno 30. 11. 2014. „This graphic was drawn by Etienne Suvasa 
  3. ^ a b "The GNU Manifesto".
  4. ^ Torvalds, Linus Benedict (August 1991). "comp.os.minix"
  5. ^ z-archive of Linux version 0.99[mrtva veza], kernel.org, December 1992
  6. ^ Richard Stallman. "new Unix implementation".
  7. ^ Wardrip-Fruin, Noah; and Nick Montfort.
  8. ^ "GNU's Bulletin, vol. 1 no. 3". gnu.org.
  9. ^ Stallman, Richard (March 1985).
  10. ^ Weber, S. (2004).
  11. ^ Helping the GNU Project and the Free Software Movement – GNU Project – Free Software Foundation. gnu.org.
  12. ^ Linus Benedict Torvalds (26 August 1991).
  13. ^ a b „All GNU packages”. gnu.org. 
  14. ^ a b GNU @ Free Software Directory (fsf.org)
  15. ^ POSIX - The GNU C Library
  16. ^ GNU C Library#A temporary fork
  17. ^ GCC Architectures
  18. ^ The Linux Kernel Archives
  19. ^ Release Notes for Linux v0.12
  20. ^ Should the GNU/name convention be applied to all programs that are GPL'ed?
  21. ^ Why do you write “GNU/Linux” instead of “GNU Linux”?
  22. ^ Isn't it wrong for us to label Linus Torvalds' work as GNU?
  23. ^ Does Linus Torvalds agree that Linux is just the kernel?
  24. ^ Why do you call it GNU/Linux and not Linux?
  25. ^ "Guidelines for Free System Distributions". gnu.org.
  26. ^ "Avoiding Ruinous Compromises". gnu.org.
  27. ^ "Explaining Why We Don't Endorse Other Systems". gnu.org.
  28. ^ "List of Free GNU/Linux Distributions – GNU Project – Free Software Foundation". gnu.org
  29. ^ "Free System Distribution Guidelines (GNU FSDG) - GNU Project". gnu.org. publisher
  30. ^ Richard Stallman (5 September 2000).
  31. ^ „Community History”. Arhivirano iz originala 16. 01. 2013. g. Pristupljeno 10. 01. 2016. 
  32. ^ "USENIX Lifetime Achievement Award ("The Flame")".

Spoljašnje veze[uredi | uredi izvor]