Kako točno je eden Linux OS na Drug Linux OS?
Pri pregledovanju različnih okusov Linuxa boste pogosto naleteli na fraze, kot je »Ubuntu temelji na Debianu«, toda kaj točno to pomeni?
Današnja seja vprašanj in odgovorov prihaja z namenom SuperUser-a, ki je del skupine Stack Exchange, ki temelji na skupnostih spletnih mest za vprašanja in odgovore.
Vprašanje
Bralnik SuperUser PLPiper poskuša ugotoviti, kako različice Linuxa delujejo:
Pred kratkim sem preučevala številne Linux distribucije, da dobim idejo o tem, kaj je naokoli, in ena fraza, ki se nadaljuje, je, da "[ta OS] temelji na [drugem OS]". Na primer:
- Fedora temelji na Red Hatu
- Ubuntu temelji na Debianu
- Linux Mint temelji na Ubuntu
Za nekoga, ki prihaja iz okolja Mac, razumem, kako »OS X temelji na Darwinu«, vendar ko pogledam na Linux Distros, se sprašujem »Ali ne temeljijo na Linuxu?«
V tem kontekstu, kaj točno pomeni za en operacijski sistem Linux temelji na drugi Linux OS?
Torej, kaj točno pomeni, ko govorimo o eni različici Linuxa, ki temelji na drugi različici?
Odgovor
Sodelavka SuperUser kostix ponuja trden pregled celotnega sistema:
Linux je jedro - (kompleksna) programska oprema, ki deluje s strojno opremo in izvaža določen uporabniški vmesnik (API), in binarne konvencije o tem, kako jo natančno uporabiti (aplikacijski binarni vmesnik, ABI), ki je na voljo aplikacijam "uporabniškega prostora".
Debian, RedHat in drugi so operacijski sistemi - popolna programska okolja, ki so sestavljena iz jedra in niza programov za uporabniške prostore, zaradi katerih je računalnik koristen pri opravljanju razumnih nalog (pošiljanje / prejemanje pošte, omogočanje brskanja po internetu, vožnja robota itd.).
Zdaj vsak tak OS, medtem ko zagotavljanje večinoma ista programska oprema (na primer ni tako veliko brezplačnih poštnih strežniških programov ali internetnih brskalnikov ali namiznih okolij), ki se razlikujejo v pristopih k temu in tudi v njihovih zastavljenih ciljih in ciklih sproščanja..
Povsem običajno se ti operacijski sistemi imenujejo »distribucije«. To je, IMO, nekoliko napačen izraz, ki izhaja iz dejstva, da ste tehnično sposobni ročno zgraditi vso zahtevano programsko opremo in jo namestiti na ciljni stroj, tako da te operacijske sisteme distribuirati pakirano programsko opremo, tako da vam ni treba izdelati (Debian, RedHat) ali pa olajšujejo takšno gradnjo (Gentoo). Običajno nudijo tudi namestitveni program, ki pomaga namestiti OS na ciljni stroj.
Izdelava in podpora OS je zelo zapletena naloga, ki zahteva kompleksno in zapleteno infrastrukturo (čakalne vrste za nalaganje, gradnjo strežnikov, sledilnik napak in arhivski strežniki, programska oprema za poštne sezname itd itd.) in osebje. To očitno postavlja visoko oviro pri ustvarjanju novega operacijskega sistema. Debian na primer zagotavlja ca. 37k paketov za pet arhitektur strojne opreme - poiščite, koliko dela je vloženega v podporo tej stvari.
Še vedno, če nekdo misli, da so potrebujejo za ustvarjanje novega OS iz kakršnega koli razloga, je morda dobra ideja, da uporabite obstoječih temelj za gradnjo. In to je točno tam, kjer OS temelji na drugih operacijskih sistemih. Na primer, Ubuntu gradi na Debianu tako, da samo uvozi večino paketov in prepakira le majhno podskupino teh paketov, ter pakira svoje, zagotavlja lastno umetniško delo, privzete nastavitve, dokumentacijo itd..
Upoštevajte, da obstajajo različice te "temelji na" stvari. Debian na primer spodbuja ustvarjanje »čistih mešanic« samega: distribucije, ki uporabljajo Debian precej neposredno, in samo dodajo kup paketov in drugih stvari, ki so koristne le za precej majhne skupine uporabnikov, kot so tisti, ki delajo v izobraževanju, medicini ali glasbi industrije itd.
Druga sprememba je, da ne vse ti operacijski sistemi temeljijo na Linuxu. Debian na primer zagotavlja tudi FreeBSD in Hurd jedra. Vseeno imajo zelo majhne skupine uporabnikov.
Imate kaj dodati pojasnilu? Zvok izključen v komentarjih. Želite prebrati več odgovorov drugih uporabnikov tehnologije Stack Exchange? Oglejte si celotno nit razprave tukaj.