Uvod v Linux
Linux je odprtokodna družina operacijskih sistemov, podobna Unixu, ki temelji na jedru Linuxa, jedro OS pa je prvič objavil 17. septembra 1991 Linus Torvalds . Običajno je Linux pakiran kot distribucija Linuxa, ki vsebuje podporne knjižnice in sistemsko programsko opremo ter jedro, od katerih jih več ponuja projekt GNU. Več distribucij Linuxa uporablja izraz 'Linux' v naslovu, vendar Free Software Foundation uporablja 'GNU/Linux' naslov, ki se osredotoča na nujnost programske opreme GNU, kar je povzročilo nekaj polemik.
Znane distribucije Linuxa so Ubuntu, Fedora Linux in Debian, slednji je sestavljen iz več različnih modifikacij in distribucij, vključno z Xubuntu in Lubuntu. Komercialni distribuciji sta SUSE Linux Enterprise in Red Hat Enterprise Linux. Namizne distribucije Linuxa so okenski sistemi, kot sta Wayland ali X11, in namizna okolja, kot sta KDE Plasma in GNOME.
- Prvotno je bil Linux zasnovan za osebne računalnike, ki so temeljili na arhitekturi Intel x86, vendar je bil od takrat premaknjen v več okolij kot drugi operacijski sistemi.
- Vključno z Androidom ima Linux največjo nameščeno bazo med vsemi splošnimi operacijskimi sistemi zaradi nadzora Androida, ki temelji na Linuxu, nad pametnimi telefoni od maja 2022.
- Vendar pa Linux od novembra 2022 uporablja le okoli 2,6 % namiznih računalnikov.
- Poleg tega se Linux izvaja na številnih vgrajenih sistemih, tj. napravah, katerih operacijski sistem je običajno zasnovan v vdelani programski opremi in je izjemno prilagojen sistemu.
- Vključuje vesoljska plovila (rover Perseverance, kapsula Dragon crew in raketa Falcon 9), avtomobile (Toyota, Hyundai, Mercedes-Benz, Audi in Tesla), televizorje (LG in Samsung Smart TV), video igralne konzole, naprave za pametni dom, krmilniki avtomatizacije in usmerjevalniki.
Linux je eden najbolj izjemnih primerov sodelovanja med odprtokodno in brezplačno programsko opremo. Izvorno kodo lahko distribuira, spreminja in uporablja nekomercialno ali komercialno vsak pod pogoji svojih ustreznih licenc, kot je GNU GPL (Splošna javna licenca). Na primer, jedro Linuxa je licencirano po GPLv2.
Zgodovina OS Linux
Operacijski sistem, ki temelji na Unixu, je bil implementiran in zasnovan leta 1969 na Zvonec AT&T laboratorijih Joeja Ossanne, Douglasa Mcllroya, Dennisa Ritchieja in Kena Thompsona v ZDA. Unix, ki je bil prvič objavljen leta 1971, je bil v celoti napisan v zbirnem jeziku, kot je bila osnovna praksa tistega časa. Dennis Ritchie ga je leta 1973 na ključno pionirski način posodobil v jeziku C. Razpoložljivost implementacije jezika Unix na visoki ravni je olajšala prenos na različne računalniške platforme.
Torvalds se je med obiskom Univerze v Helsinkih jeseni 1990 vpisal na tečaj Unix. Pri tečaju je bil uporabljen miniračunalnik MicroVAX, ki izvaja Ultrix, eno od potrebnih besedil pa je bilo Operating Systems: Design and Implementation Andrewsa S. Tanenbauma. Učbenik je vseboval kopijo operacijskega sistema MINIX Tanenbauma. Skupaj s tem tečajem je Torvalds sprva postal odprt za Unix. Operacijski sistemi so ga začeli zanimati leta 1991. Razočaran nad licenciranjem MINIX, ki ga je takrat omejevalo le na izobraževalno uporabo, je začel delati na svojem jedru operacijskega sistema, ki je sčasoma postalo jedro Linuxa.
Torvalds je začel razvoj jedra Linuxa na MINIX-u, programska oprema, napisana za MINIX, pa je bila uporabljena tudi na Linuxu. Kasneje se je začel gojiti Linux, nato pa se je na sistemih Linux pojavil razvoj jedra Linux. Poleg tega so aplikacije GNU nadomestile vse komponente MINIX, ker je bilo koristno uporabljati brezplačno kodo prek projekta GNU z novim OS; kodo, licencirano po GNU GPL, je mogoče ponovno uporabiti v drugih računalniških funkcijah, če so tudi objavljene pod združljivo ali isto licenco.
Torvalds je začel prehod s svoje dejanske licence, ki je prepovedovala komercialno distribucijo, na GNU GPL. Razvijalci so si prizadevali za razvoj elementov GNU z jedrom Linux, s čimer so naredili brezplačen in popolnoma funkcionalen operacijski sistem.
Glavni vzdrževalec jedra Linuxa je Greg Kroah-Hartman ki vodi njegov razvoj. E-izvršni direktor Free Software Foundation je William John Sullivan , ki je nato podpiral komponente GNU. Korporacije in posamezniki končno razvijejo komponente tretjih oseb, ki niso GNU.
Komponente tretjih oseb so sestavljene iz širokega dela in lahko vsebujejo uporabniške knjižnice in aplikacije ter module jedra. Skupnost in prodajalci Linuxa distribuirajo in združujejo jedro, komponente, ki niso GNU, in komponente GNU z dodatno programsko opremo za upravljanje paketov na način distribucij Linuxa.
V produkcijskih okoljih se je sprejetje Linuxa začelo razvijati sredi devetdesetih let prejšnjega stoletja v superračunalniški skupnosti, namesto da bi ga uporabljali samo hobiji, kjer so organizacije, kot je NASA, začele vse bolj nadomeščati svoje drage stroje s poceni računalniškimi grozdi, ki poganjajo Linux. Komercialna uporaba se je začela, ko sta IBM in Dell, ki ju je zasledoval Hewlett-Packard, začela zagotavljati podporo za Linux, da bi se izognila monopolu Microsofta na trgu namiznih OS.
Sistemi Linux se danes v celoti uporabljajo v računalništvu, od vgrajenih sistemov do praktično vsakega superračunalnika, in so si zagotovili položaj v strežniških namestitvah, kot je slavni sklad aplikacij LAMP. Uporaba distribucij Linuxa v poslovnih in domačih namizjih se razvija.
Poleg tega so distribucije Linuxa postale znane na trgu netbookov, saj se več naprav premika z nameščenimi prilagojenimi distribucijami Linuxa, Google pa je objavil svoj ChromeOS, razvit za netbooke.
Oblikovanje OS Linux
Različni odprtokodni razvijalci priznavajo, da jedro Linuxa ni bilo razvito, temveč se je razvilo iz naravne selekcije. Sistem, ki temelji na Linuxu, je združljiv operacijski sistem, podoben Unixu, katerega običajna zasnova je večinoma izpeljana iz načel Unixa v sedemdesetih in osemdesetih letih prejšnjega stoletja. Takšen sistem uporablja jedro Linuxa, monolitno jedro, ki upravlja datotečne sisteme, periferni dostop, mreženje in nadzor procesov. Gonilniki naprav so neposredno integrirani z jedrom ali vključeni kot moduli, naloženi, ko je naprava aktivna.
Nameščene komponente sistema Linux vključujejo naslednje:
- A zagonski nalagalnik , na primer systemd-boot, SYSLINUX, LILO in GNU GRUB. To je program, ki lahko naloži jedro Linuxa v glavni pomnilnik računalnika, tako da ga računalnik zažene po izvedbi prijave v vdelano programsko opremo in ko je vklopljen.
- An vstopite v program , kot so tradicionalni sysvinit in novejši Upstart, OpenRC in systemd. To je prvi proces, ki sta ga napovedala jedro Linuxa in koren drevesa procesov. Z drugimi besedami, vsak proces se odpre od init. Sproži procese, kot so pozivi za prijavo in sistemske storitve (bodisi v terminalskem ali grafičnem načinu).
- Standardna knjižnica C je potrebna za izvajanje programov C v sistemu, ki uporablja knjižnico GNU C, ki je standard. Razvite so bile alternative, kot so uClibc (razvit za uClinux), EGLIBC (glibc fork, ki ga je nekoč uporabljal Debian) in musl. Vendar se prva dva zdaj ne vzdržujeta. Android uporablja svojo knjižnico C, ki je znana kot Bioničen .
- Lupine GUI so najbolj znani uporabniški vmesniki v namiznih sistemih, opremljeni s širokimi namiznimi okolji, kot so Xfce, Pantheon, LXDE, Cinnamon, MATE, GNOME in KDE Plasma, čeprav je na voljo vrsta več uporabniških vmesnikov.
- Večina znanih uporabniških vmesnikov deluje s konceptom okenskega sistema X, znanega kot 'X' .
- Ponuja preglednost omrežja in omogoča prikaz grafične aplikacije, ki je aktivna v sistemu, v drugem sistemu, v katerem lahko uporabnik sodeluje z aplikacijo.
- Čeprav nekatere razširitve sistema X Window ne morejo delovati v omrežju.
- Številni zaslonski strežniki X so na voljo s strežnikom X.Org, referenčna izvedba pa je najbolj znana.
Uporabniški vmesnik se imenuje tudi lupina. To je GUI (grafični uporabniški vmesnik), CLI (vmesnik ukazne vrstice) ali kontrolniki, povezani s sorodno strojno opremo, kar je običajno za vgrajene sisteme. Privzeti uporabniški vmesnik je grafični za namizne sisteme. Vendar je CLI na voljo v oknih terminalskega emulatorja ali na izolirani virtualni konzoli.
Lupine vmesnika ukazne vrstice so besedilni uporabniški vmesniki, ki uporabljajo besedilo za izhod in vnos. Prevladujoča lupina je bash (Bourne-Again Shell), ki se uporablja v Linuxu in je bila prvotno zasnovana za projekt GNU. Skoraj vsaka nizkonivojska komponenta Linuxa, vključno z več deli uporabniškega območja, uporablja izključno CLI. Zlasti CLI je združljiv z zakasnjeno ali ponavljajočo se avtomatizacijo opravil in omogoča zelo enostavno komunikacijo med procesi.
Trenutno ima Linux dva API-ja jedra uporabniškega prostora za upravljanje video vhodnih naprav: DVB API za TV sprejem in V4L2 API za radijske in video tokove.
Ta infrastruktura se mora razvijati, da bi se bolje prilegala drugim napravam zaradi raznolikosti in kompleksnosti različnih naprav ter zaradi velikega števila standardov in formatov, ki jih upravljajo ti API-ji. Boljša knjižnica naprav uporabniškega prostora je tudi ključ do uspeha pri aplikacijah uporabniškega prostora, ki lahko delujejo z vsakim formatom, ki ga podpirajo naprave.
Uporaba operacijskega sistema Linux
Več kvantitativnih študij odprtokodne/proste programske opreme se osredotoča na teme, kot sta zanesljivost in tržni delež, številne študije pa preučujejo posebej Linux. Trg Linuxa se razvija in velikost trga OS Linux naj bi se do leta 2027 povečala za 19,2 % in dosegla 15,64 milijarde dolarjev v primerjavi s 3,89 milijarde v letu 2019. Zagovorniki in analitiki asociativni uspeh Linuxa pripisujejo njegovi svobodi in nizki ceni , zanesljivost in varnost pred zaklepanjem prodajalca.
W3Cook objavlja statistiko, ki uporablja 1.000.000 najboljših domen Alexa, ki ocenjujejo, da 96,55 % spletnih strežnikov uporablja Linux, 1,73 % uporablja Windows in 1,72 % uporablja FreeBSD od maja 2015.
Glede na statistiko spletnih strežnikov je maja 2022 ocenjeni tržni delež Linuxa na namiznih računalnikih okoli 2,5 %. Microsoft Windows ima približno 75,5-odstotni tržni delež, medtem ko ima macOS približno 14,9-odstotni tržni delež.
Android je postal vodilni operacijski sistem za pametne telefone, ki temelji na jedru Linuxa. Julija 2022 je 71,9 % pametnih telefonov po vsem svetu, ki uporabljajo internet, uporabljalo Android. Poleg tega je Android znan operacijski sistem za tablične računalnike, saj je od leta 2013 odgovoren za več kot 60 % prodaje tablic.
Linux je že leta priljubljena platforma v filmski industriji. Prvi veliki film, objavljen na strežniku Linux, je bil Titanik iz leta 1997. Od takrat so se veliki studii, vključno z Industrial Light & Magic, Weta Digital, Pixar in DreamWorks Animation, preselili na Linux.
Distribucije Linuxa so postale priljubljene tudi v več nacionalnih in lokalnih vladah. Kerala je šla do obveznega obsega, da vsaka državna srednja šola uporablja Linux v svojih sistemih. Kitajska uporablja Linux izključno kot OS za svojo družino procesorjev Loongson za doseganje tehnološke neodvisnosti.
Nekaj regij je integriralo svojo distribucijo Linuxa v Španiji, ki se v veliki meri uporablja v uradnih in izobraževalnih ustanovah. Poleg tega sta Nemčija in Francija naredili korake k sprejetju Linuxa. Red Star OS iz Severne Koreje temelji na različici Fedora Linux, ki je bila razvita od leta 2002.
OS Linux deluje
Operacijski sistem Linux sledi standardni zasnovi, ki je ključna za njegove številne distribucije in različice. Vsaka distribucija Linuxa temelji na jedru Linuxa, vendar se lahko razlikuje glede na dejavnike, kot so:
- Gonilniki naprav, ki uporabljajo kodo, ki upravlja delovanje povezanih naprav.
- Gonilniki datotečnega sistema, ki uporabljajo kodo, ki upravlja, kako jedro deluje z različnimi datotečnimi sistemi.
- Sistemski klici, ki uporabljajo kodo, ki upravlja, kako programi zahtevajo storitve prek jedra.
- Zagon in nalaganje jedra Linuxa.
- Jedro ob zagonu obravnava vsak izhod in vnos sistema. Sistem se zažene in procese je mogoče inicializirati.
- Sistem je mogoče uporabiti za procese, ki vsebujejo ukaze, interaktivno vnesene z ukazno vrstico, funkcije omrežnega strežnika, namizne aplikacije ali kateri koli program ali aplikacijo, ko se sistemski procesi zaženejo.
Jedro je edina stvar, ki je skupna vsakemu sistemu, ki uporablja Linux. Linux deluje z:
Uporabniška izkušnja se lahko zelo razlikuje, odvisno od tega, kako se uporablja sistem Linux, medtem ko je jedro lahko skoraj enako z nekaterimi razlikami pri prevajanju in razlikami v konfiguraciji. Na primer, nekaj primerov uporabe Linuxa z različnimi uporabniškimi izkušnjami je:
Linux deluje podobno kot kateri koli operacijski sistem, ki temelji na grafičnem vmesniku, če ga uporabljate kot grafični vmesnik z namiznim okoljem. Aplikacije in številne druge vire lahko zaženete s pritiskom na ikone, datoteke pa lahko izbrišete, kopirate ali premaknete s sledilno ploščico ali miško.
Linux distribucije
Linux je sprejel določbe o avtorskem levu Free Software Foundation, ki je izdala GNU GPL od začetka razvoja. GPL opisuje, da je treba vse, kar je vzeto za spreminjanje in je brezplačno, prosto distribuirati.
Na voljo je na stotine različic Linuxa, imenovanih tudi distribucije ali distribucije. Običajno se distribucije razlikujejo skozi paket tako, da definirajo določen cilj, ciljni trg, funkcijo ali filozofijo.
Obstaja veliko distribucij za določene ciljne funkcije, kot so varnost, igre, namizni računalniki, strežniki ali vgrajene naprave, kot so sistemi Raspberry Pi. Skoraj vsaka sodobna distribucija je pripravljena za uporabo in vnaprej prevedena, medtem ko so druge, kot je Gentoo Linux, sestavljene iz izvorne kode, ki jo lahko vsak uporabnik lokalno prevede med začetkom namestitve za uporabo svoje sistemske konfiguracije.
Prednosti in slabosti operacijskega sistema Linux
Nekatere prednosti uporabe Linuxa so navedene in razložene spodaj:
Nekaj pomanjkljivosti Linuxa je: