If-Koubou

Cum este exact un sistem de operare Linux bazat pe un alt sistem de operare Linux?

Cum este exact un sistem de operare Linux bazat pe un alt sistem de operare Linux? (Cum să)

Când revizuiți diferitele arome ale Linux, veți întâlni frecvent expresii precum "Ubuntu se bazează pe Debian", dar ce anume înseamnă asta?

Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare bazată pe comunitate a site-urilor Q & A.

Intrebarea

Cititorul de super-aplicație PLPiper încearcă să obțină o manevră asupra modului în care funcționează variantele Linux:

Am căutat destul de multe distribuții de Linux recent pentru a obține o idee despre ceea ce este în jur și o frază care continuă să vină este că "[acest sistem] se bazează pe [un alt sistem de operare]". De exemplu:

  • Fedora se bazează pe Red Hat
  • Ubuntu se bazează pe Debian
  • Linux Mint se bazează pe Ubuntu

Pentru cineva care vine dintr-un mediu Mac înțeleg cum "OS X se bazează pe Darwin", totuși când mă uit la Linux Distros, mă găsesc întrebat: "Nu sunt toate bazate pe Linux ...?"

În acest context, ce anume înseamnă pentru un sistem de operare Linuxbazat pe un alt sistem de operare Linux?

Deci, ce anume înseamnă atunci când vorbim despre o versiune de Linux bazată pe o altă versiune?

Răspunsul

Contributorul superuser kostix oferă o imagine de ansamblu solidă a întregului sistem:

Linux este anucleu - un software (complex) care lucrează cu hardware-ul și exporta o anumită interfață de programare a aplicațiilor (API) și convenții binare privind utilizarea precisă a acestuia (Application Binary Interface, ABI) disponibile pentru aplicațiile "spațiu utilizator".

Debian, RedHat și altele suntsisteme de operare - medii software complete care constau în kernel și un set de programe de spațiu utilizator care fac calculatorul util în timp ce efectuează sarcini sensibile (trimiterea / primirea de e-mail, permițându-vă să navigați pe Internet, să conduceți un robot etc.).

Acum, fiecare astfel de sistem de operare, în timp cefurnizarea cea mai mare parte a aceluiași software (nu există atât de multe programe gratuite de servere de mail sau browsere de Internet sau medii de birou, de exemplu), diferă în abordările pentru a face acest lucru și, de asemenea, în scopurile lor declarate și ciclurile de eliberare.

În mod tipic aceste sisteme de operare se numesc "distribuții". Aceasta este, IMO, un termen oarecum greșit, care rezultă din faptul că sunteți din punct de vedere tehnic capabil să construiți manual toate programele necesare și să le instalați pe o mașină țintă, astfel încât aceste OSdistribui software-ul ambalat, astfel încât fie să nu aveți nevoie să îl construiți (Debian, RedHat), fie să faciliteze o astfel de clădire (Gentoo). De asemenea, acestea oferă, de obicei, un instalator care vă ajută să instalați sistemul de operare pe o mașină țintă.

Efectuarea și susținerea unui sistem de operare este afoarte o sarcină complicată care necesită o infrastructură complexă și complexă (cozi de încărcare, servere de construire, un tracker de erori, servere de arhivă, software de listă de corespondență etc etc) și personal. Acest lucru ridică în mod evident o barieră ridicată pentru crearea unui sistem de operare nou, de la zero. De exemplu, Debian oferă ca. Pachetele de 37k pentru câteva arhitecturi hardware - gândiți-vă cât de mult este pusă munca în susținerea acestor lucruri.

Totuși, dacă cineva crede astanevoie pentru a crea un nou sistem de operare, indiferent de motiv, ar putea fi o idee bună să folosiți unexistent fundație pentru a construi. Și acesta este exact în cazul în care OSbazat pe alte OS-uri apar. De exemplu, Ubuntu se bazează pe Debian prin importarea majorității pachetelor din pachet și reambalând doar un mic subset al acestora, plus un ambalaj propriu, oferind propriile lucrări de artă, setările implicite, documentația etc.

Rețineți că există variații la acest lucru "bazat pe". De exemplu, Debian încurajează crearea de "amestecuri pure" în sine: distribuții care utilizează Debian mai degrabă în mod direct și doar adaugă o grămadă de pachete și alte elemente utile doar pentru grupuri de utilizatori destul de mici, cum ar fi cei care lucrează în educație sau medicină sau muzică industrie etc.

O altă întorsătură nu este astatoate aceste OS sunt bazate pe Linux. De exemplu, Debian furnizează și kernel-uri FreeBSD și Hurd. Ei au grupuri de utilizatori destul de mici, dar oricum.

Aveți ceva de adăugat la explicație? Sunați în comentariile. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.