Hoe precies is één Linux-besturingssysteem gebaseerd op Nog een Linux-besturingssysteem?
Bij het beoordelen van verschillende smaken van Linux kom je vaak zinsdelen tegen zoals "Ubuntu is gebaseerd op Debian" maar wat betekent dat precies??
De Question & Answer-sessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een gemeenschapsgedreven groep van Q & A-websites.
De vraag
SuperUser-lezer PLPiper probeert greep te krijgen op hoe Linux-varianten werken:
Ik heb onlangs een flink aantal Linux-distro's bekeken om een idee te krijgen van wat er in de buurt is, en een zin die steeds weer naar boven komt, is dat "[dit besturingssysteem] is gebaseerd op [een ander besturingssysteem]". Bijvoorbeeld:
- Fedora is gebaseerd op Red Hat
- Ubuntu is gebaseerd op Debian
- Linux Mint is gebaseerd op Ubuntu
Voor iemand die uit een Mac-omgeving komt, begrijp ik hoe "OS X is gebaseerd op Darwin", maar als ik naar Linux Distros kijk, merk ik dat ik vraag "Zijn ze niet allemaal gebaseerd op Linux ...?"
In deze context, wat betekent het precies voor één Linux-besturingssysteem? gebaseerd op een ander Linux-besturingssysteem?
Wat betekent het precies als we het hebben over het feit dat één versie van Linux is gebaseerd op een andere versie?
Het antwoord
Bijdrager kostix van SuperUser biedt een degelijk overzicht van het hele systeem:
Linux is een pit - een (complex) stukje software dat met de hardware werkt en een bepaalde Application Programming Interface (API) exporteert, en binaire conventies over hoe het precies te gebruiken (Application Binary Interface, ABI) beschikbaar voor de "user-space" -toepassingen.
Debian, RedHat en anderen zijn dat besturingssystemen - complete software-omgevingen die bestaan uit de kernel en een reeks gebruikersruimteprogramma's die de computer bruikbaar maken als ze zinvolle taken uitvoeren (e-mail verzenden / ontvangen, zodat u op internet kunt surfen, een robot kunt besturen, enz.).
Nu elk van deze OS, terwijl het verstrekken van meestal dezelfde software (er zijn bijvoorbeeld niet zoveel gratis mailserverprogramma's of internetbrowsers of desktopomgevingen) verschillen in aanpak om dit te doen en ook in hun gestelde doelen en releasecycli.
Heel vaak worden deze besturingssystemen "distributies" genoemd. Dit is, IMO, een ietwat foute term die voortkomt uit het feit dat je technisch in staat bent om alle vereiste software met de hand te bouwen en het op een doelcomputer te installeren, dus deze besturingssystemen verdelen de verpakte software, zodat je het niet hoeft te bouwen (Debian, RedHat) of ze een dergelijk gebouw vergemakkelijken (Gentoo). Ze bieden meestal ook een installatieprogramma dat helpt om het besturingssysteem op een doelcomputer te installeren.
Een besturingssysteem maken en ondersteunen is een heel gecompliceerde taak waarvoor een complexe en ingewikkelde infrastructuur nodig is (uploadwachtrijen, build-servers, een bug-tracker en archiefservers, mailinglistsoftware, enz. enz.) en personeel. Dit verhoogt uiteraard een hoge drempel voor het maken van een nieuw besturingssysteem. Debian biedt bijvoorbeeld ongeveer. 37K-pakketten voor een vijftal hardware-architecturen - ga eens kijken hoeveel werk er wordt verricht om dit te ondersteunen.
Maar als iemand dat denkt nodig hebben om om wat voor reden dan ook een nieuw besturingssysteem te maken, kan het een goed idee zijn om een bestaand basis om op te bouwen. En dit is precies waar besturingssystemen gebaseerde op andere besturingssystemen komen tot stand. Ubuntu bouwt bijvoorbeeld op Debian door gewoon de meeste pakketten ervan te importeren en slechts een kleine subset ervan opnieuw in te pakken, plus een eigen verpakking, met eigen illustraties, standaardinstellingen, documentatie enz..
Merk op dat er variaties zijn op dit "gebaseerd op" ding. Debian bevordert bijvoorbeeld het creëren van "pure blends" van zichzelf: distributies die Debian vrij direct gebruiken, en gewoon een heleboel pakketten en andere dingen toevoegen die alleen nuttig zijn voor tamelijk kleine groepen gebruikers, zoals diegenen die werken in het onderwijs of medicijnen of muziek industrie enz.
Een andere draai is dat niet allemaal deze besturingssystemen zijn gebaseerd op Linux. Debian biedt bijvoorbeeld ook FreeBSD- en Hurd-kernels. Ze hebben redelijk kleine gebruikersgroepen, maar hoe dan ook.
Heb je iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk hier de volledige discussiethread.