Linux

Linuxi all mõeldakse tavaliselt Linuxi tuumal põhinevat operatsioonisüsteemi, kuid algselt tähendas see ainult Linuxi tuuma. Linux võib tähendada ka selle operatsioonisüsteemi distributsiooni.
Linux on UNIXi-laadne ja suuremas osas POSIX-i nõuetele vastav operatsioonisüsteem, mis ühendab Linuxi tuuma, GNU projekti teegid ja abiprogrammid ning muu tarkvara terviklikuks operatsioonisüsteemiks. Selle tõttu väidab Free Software Foundation, et operatsioonisüsteemi peaks nimetama GNU/Linux, et mitte alahinnata GNU osa operatsioonisüsteemi loomises. See väide on aga vaidlusalune – ka Linuxi algse looja Linus Torvaldsi poolt, kuna on olemas ka Linuxi tuuma kasutavaid operatsioonisüsteeme, mis ei sisalda GNU komponente.
Linux arendati algselt vaba operatsioonisüsteemina Intel x86 arhitektuuriga personaalarvutitele, kuid aja jooksul on seda kohandatud ja arendatud rohkematele riistvaraplatvormidele kui ükski teine operatsioonisüsteem. Kuna Linuxil põhinev Android on nutitelefonides võrreldes teiste mobiilseadmete operatsioonisüsteemidega suures ülekaalus, on Linux paigaldatud kõige suuremale hulgale tavakasutaja seadmetele maailmas. Lisaks sellele on Linux oma tavavormis juhtiv operatsioonisüsteem superarvutitel ning infrastruktuuri- ja tavaserveritel. Personaalarvutites kasutab Linuxit aga ligikaudu 1,5% kõigist arvutikasutajatest.
Linux jookseb ja on väga populaarne ka manussüsteemidel – seadmetel, mida luuakse vastavalt vajadusele. Nendel seadmetel on tihti operatsioonisüsteem juba püsivaraga kaasas, nagu näiteks ruuterid, televiisorid, tahvelarvutid ja mobiiltelefonid.
Linux on tuntuim näide vabast ja avatud lähtekoodiga arendusmudelitega tarkvarast – erinevalt teistest levinumatest operatsioonisüsteemidest (nt Microsoft Windows ja Mac OS X) on kogu selle lähtekood avalik ja igaüks võib seda kasutada, muuta ja levitada GNU Avaliku Litsentsi määratud tingimustel.
Suuremad/levinumad Linuxi distributsioonid on Debian, Ubuntu (Ubuntu Unity,Ubuntu Studio,Ubuntu MATE,Ubuntu Cinnamon,Ubuntu Budgie,Lubuntu, Kubuntu, Edubuntu, Xubuntu,Ubuntu Kylin), Red Hat (Fedora, Centos, Scientific Linux, Alma Linux, Rocky Linux, Oracle Linux), openSUSE, Debian, Mandriva, Gentoo, Arch Linux ja Slackware.
Personaalarvutite jaoks kohandatud distributsioonides on lisaks Linuxi tuumale enamasti ka X11 graafiline kasutajaliides ja mitmed distributsioonist olenevad tööriistad, samas kui serveritele või isegi manussüsteemidele mõeldud Linuxi distributsioonid võivad lihtsuse, töökindluse ja kiiruse nimel välja jätta suure osa oma tööriistadest, graafilistest liidestest või isegi tuumast.
Ajalugu.
Eelkäijad.
Linuxi põhiliseks eelkäijaks peetakse operatsioonisüsteemi Unixi, mille lõid aastal 1969 Ameerika Ühendriikides AT&amp;T Bell laboratooriumides Ken Thompson, Dennis Ritchie, Douglas McIlroy ja Joe Ossanna. Unix oli täielikult kirjutatud assemblerkeeles, kuna see oli tollel ajal hea praktika. Aastal 1973 kirjutas põhiliselt Dennis Ritchie selle ümber C programmeerimiskeelde.
Linuxi loomisel oli veel eeskujuks Andrew S. Tanenbaumi 1987. aastal õppeotstarbeks loodud Unixi-laadne 16-bitine MINIX, mis mahtus ühele ümbrikkettale (disketile). Kuigi MINIXi lähtekood oli avalik, ei lubanud litsentsitingimused MINIXit tasuta kasutada muudel eesmärkidel kui õppetööks.
Loomine.
1991. aastal alustas Helsingi Ülikooli üliõpilane Linus Torvalds tööd oma operatsioonisüsteemi kallal, millest sai alguse Linuxi tuum. Torvalds ei olnud rahul litsentsiga, mis lubas MINIX-it kasutada ainult õppetööks. Torvalds viis oma operatsioonisüsteemi GNU litsentsi alla, mis lubab lähtekoodi kasutada ja levitada, kuidas kasutaja ise soovib ja kasutab siiani kompileerimiseks GCC-d. Kogu edasine Linuxi tuuma ja rakenduste areng on olnud GNU litsentsi all.
Nimetamine.
Torvalds tahtis kutsuda enda loodud operatsioonisüsteemi Freaxiks. Kokku pandud sõnadest "free" (ingl. 'tasuta') ja x vihjena Unixile. Selle nime all hoidis ka Linus vajalikke faile. Ta oli ka mõelnud siis nimele Linux, aga loobus sellest ideest, kuna see tundus liiga egoistlik.
1991. aastal laaditi failid üles FTP-serverisse, et oleks lihtsam teha koostööd kaastöötajatega. Kuna aga Helsingi Tehnikaülikooli failiserveri haldurile Ari Lemmkele see nimi ei meeldinud, muutis ta projekti nime Linuxiks ilma Linusega konsulteerimata. Lõpuks Linus nõustus nimega.
Linus on ka andnud välja helijuhise, kuidas tuleks nime "Linux" hääldada. ()
Praegune arendustöö.
Linuxi tuuma arendamist juhib seniajani Linus Torvalds (november 2015). Free Software Foundation arendab ja toetab GNU osasid ning Linuxi kommuun ning korporatsioonid arendavad kolmanda-osapoole GNU väliseid komponente. GNU väliste osade hulka kuuluvad Linuxi tuuma moodulid, kasutajate programmid ja tarkvarateegid.
Linuxi kommuuniga liitumiseks tuleb liituda Linuxi arendajate postiloendiga ja lugeda nende kodulehel asuvat õpetust.
Disain.
Ülesehitus.
Linuxipõhine süsteem kasutab modulaarset Unixi sarnast operatsioonisüsteemi, kus operatsioonisüsteemi keskmes on monoliitne Linuxi tuum, mis korraldab arvuti tööd, arvutivõrguga suhtlemist ning juurdepääsu välisseadmetele ja failisüsteemidele. Välisseadmete kontrollerid võivad olla kas tuuma osad või laaditakse moodulitena mällu arvuti töötamise ajal.
Monoliitne tuum on operatsioonisüsteemi arhitektuur, kus terve operatsioonisüsteem töötab teises ruumis kui kasutaja, mida kutsutakse tuuma ruumiks (ingl "kernel space") ja kontrollib kõike masinas toimuvat superviisorina. Selline tuum erineb teistest selle poolest, et see saab üksinda hakkama virtuaalse kõrgema taseme liidese loomisega arvuti riistvara peale, mille puhul kasutavad programmid süsteemi kutseid (ingl "system call") suhtlemiseks tuumaga.
Kasutajaliides.
Linux operatsioonisüsteemiga arvutiga saab kasutaja suhelda kas käsurealt või graafilise kasutajaliidese vahendusel. Graafiline kasutajaliides on enamasti kasutusel personaalarvutite keskkonnas, samas kui serverites ja superarvutites kasutatakse enamasti ainult käsurida.
Graafiline kasutajaliides.
Personaalarvutites on populaarsed graafilised kasutajaliidesed, millega tuleb kaasa töölaud, nagu GNOME, KDE, Xfce, LXDE, FVWM, Enlightenment, Window Maker. Graafilised kasutajaliidesed töötavad valdavalt X-serveri keskkonnas (X Window System), mis võimaldab graafilistel programmidel samas võrgus suhelda üle vajaliku protokolli ja lubab näidata ühes süsteemis töötavaid graafilisi rakendusi teises süsteemis nii, et ka kasutaja saab seda mõjutada. On mitmeid X-serveri süsteeme, aga X.Org on siiamaani kõige populaarsem.
Wayland on uuemat tüüpi graafiline server mille algne eesmärk oli asendada x11 protokoll. Aasta 2015 seisuga ei ole veel Waylandi suuremas mastaabis kasutusele võetud.
Käsurida.
Käsurida, tuntud ka nimetusega "shell", on käsurealiides, millega saab kasutada Linuxi süsteeme. Käsurida on tekstipõhine kasutajaliides, mis kasutab teksti nii sisendiks kui ka väljundiks. Kõige populaarsem käsurealiides on GNU Bourne-Again Shell (bash), mis algselt arendati GNU projekti raames. Käsurida kasutab suurem osa madala tasandi Linuxi osasid, kaasa arvatud mitmed osad kasutaja ruumist. Käsurida sobib eriti hästi korduvate tegevuste automatiseerimiseks, sest see on loodud kiiresti tegutsema suure hulga andmetega ja sellel on väga hea protsesside vaheline suhtlus. Lisaks on Linuxi kogukond loonud tööriistu enamiku tihti esinevate ülesannete täitmiseks ja lisaks sellele saab käske omavahel siduda, suunates ühe käsu väljundi teise käsu sisendisse. Käsurida on kasutatav ka graafilises kasutajaliideses terminali emulaatori aknas või eraldi virtuaalsel konsoolil.
Kasutusalad.
Linuxi distributsioonid on tihti disainitud kindlaks eesmärgiks. Kuigi iga levinud distributsioon saab enamasti levinud probleemidega hakkama, on kõvasti optimaalsem kasutada selleks loodud distributsiooni.
Personaalarvutid.
Linuxi kasutusmugavuse tõstmiseks personaalarvutitel on pühendatud viimasel ajal palju ressursse. Projektid nagu Upstart ja Systemd üritavad saavutada kiiremat käivitumist ja parandada kasutajamugavust. Samal ajal projektid Wayland ja Mir tahavad asendada x11 graafilist süsteemi, et suurendada jõudlust ja turvalisust.
Personaalarvutitel levinud Linuxi distributsioonid tulevad tihti graafilise süsteemiga ja neil on enamasti olemas vahendid kontoritööks, pildi- ja muusikatöötluseks, programmeerimiseks, andmebaaside haldamiseks. Vaba tarkvarana kättesaadava tarkvara hulk on väga suur ja mitmekesine. Veelgi lihtsamaks teeb kasutaja jaoks asja pakihaldussüsteem, mis lubab toetatud tarkvara paari nupuvajutusega installeerida repositooriumitest. Mitmed tarkvarafirmad pakuvad ka kommertstooteid paralleelselt MS Windowsile, Macile ja Unixile, kaasa arvatud Linux, nagu näiteks Mozilla Firefox, LibreOffice ja Blender.
Populaarsemateks personaalarvutite distributsioonideks peetakse Fedorat, Ubuntut, Mageiat, Debiani ja Linux Minti.
Serverid.
Linuxi distributsioonid on pikka aega olnud populaarsed serveritel ja tänapäevalgi jätkavad seda trendi stabiilsuse, turvalisuse ja vabaduse tõttu. Linuxi distributsioonid on LAMP pinu (Linux, Apache veebiserver, MariaDB/MySQL, Perl/PHP/Python) alustalaks, kuna Linuxis on seda lihtne üles seada. Seetõttu on ka võitnud Linux veebiarendajate ja -majutuspakkujate südamed.
Klastrid ja superarvutid.
Linux on populaarseks operatsioonisüsteemiks kobar- ja superarvutitel. 2015. aasta juunis töötas 500-st maailma parimast superarvutist 488 Linuxi operatsioonisüsteemiga.
Linux on väga paindlik – selle saab võtta väga väikesteks tükkideks nii, et alles jääb ainult optimaalne osa. Lisaks on Linux olemas väga paljudes süsteemides ja arhitektuuridega. Seega võib öelda, et Linux on hästi laienemisvõimeline.
Nutiseadmed.
Mitmed operatsioonisüsteemid nutiseadmetele, nagu nutitelefonid, tahvelarvutid ja televiisorid, põhinevad Linuxil. Suuremad sellised platvormid on näiteks Android, Firefox OS, Mer ja Tizen.
Android on nutitelefonide seas kõige populaarsem operatsioonisüsteem. Aasta 2015 teise kvartali seisuga on 82,8% müüdud nutitelefonidest Androidi operatsioonisüsteemiga.
Linuxiga töötas 19. aprillil 2021 Marsil esimese lennu teinud NASA helikopteri juhtarvuti.
Peamiselt tuleneb Linuxi populaarsus selle paindlikkusest, modulaarsusest ja GNU litsentsist, mille tõttu on kõvasti lihtsam kohandada Android vastavalt vajadusele kui on luua uus nutiseadmele sobiv operatsioonisüsteem.