unix-geinspireerd
VOOR EENS EN ALTIJD (heb dit al een gepost)
Eerst was er UNIX uitgevonden door BELLS en AT als ik het goed heb.
UNIX was daarmee een studie materiaal voor universiteiten.
Daar is er nagedacht geweest en standaarden opgesteld.
Toen kwamen er varianten voornamelijk, Solaris, HP-UX en AIX.
UNIX was duur. Linus, student leerde het systeem, net als iedereen, en wou snel iets in elkaar hacken dat erop leek. hij maakte een kernel, en zette het op internet, en vroeg anderen om hem te helpen, hij had nog veel werk.
Een ander studie team waren bezig alle tools van UNIX na te maken. GNU-tools. Maar de kernel hadden ze nog niet gemaakt om hun tools zonder unix te kunnen gebruiken.
Of ze waren al begonnen, maar het ging niet vooruit, ze wilde iets maken wat de perfectie nastreefde, zonder ervaring te hebben in de nieuwe technieken. Er was dan ook geen deadline. Hun kernel is trouwens wel nog steeds in ontwikkeling: HURD. Een kernel waarin dus nieuwe technieken in worden geimplementeerd zonder ervaring ermee te hebben.
Dus namen ze het ding van Linus, stemden hun tools erop af, en een nieuw systeem was geboren.
Linus war er zo fier op, en noemde het voorlopig Linux, tegen de zin dan het ander team.
Maar zo is het dus gebleven.
Echter is er nog zo'n gast die Andrew Tanenbaum, die maakte Minix, linux liet zich trouwens hierdoor inspireren. Zeer knap van deze knappe maneer, maar vind ik dat Andrew Tanenbaum brutaal overkomt.
Echter zijn er nog andere universiteiten die een kernel ontwikkelde compatible met unix, bijvoorbeeld BSD en Mach.
BSD en MACH hebben beide hun sterke punten, daarom ontwierp apple een systeem dat een mix maakt van de 2 en noemde het Darwin.
Darwin is een heel sterk OS op zich. Voeg daar de tools toe van Next OS toe en je hebt OS X. Er zijn ook tools toegevoegd uit het linux-landschap omdat die gemakkelijk compatible gemaakt kunnen worden met Darwin.Maar die profiteren dus niet van alle lagen boven darwin.
Android is dan weer echt de linux kernel met totaal andere tools toegevoegd dan desktop linux-systemen. Die laatste gebruiken KDE of Gnome, xfce als window-manager.
Windows is dan weer iets totaal anders vroeger gebaseerd op DOS, tegenwoordig op de NT-Kernel. Windows laadt ook de win32-lib in, die wordt nagebouwd omUNIX-compatible te zijn in het project wine.
Er zijn grofweg 2 soorten kernels, slanke kleine, waar alles moet worden op ingeladen, en de grote logge waar alles intern geregeld word.
De Darwin kernel is een hybride, daar Mach een kleine kernel is en BSD een grote kernel is, de meerderheid is groot, behalve MINIX-kernel, en HURD kernel. Er is weinig ervarin met kleine kernels. Ontwikkling gaat traag, omdat het voornamelijk studiemateriaal is.
Grote zijn makelijker te bouwen, veel ervaring is opgedaan, intern kun je makkelijker van alles knoeien om alles aan het werk te krijgen. Drivers worden bij een grote kernel ook aan de kernel gehangen.
kleine kernels zijn stabieler, en sneller ingeladen. Als de kernel is ingeladen, kun je beslissen om alleen onderdelen in te laden die je nodig heb. Als een driver hangt kan je deze herladen zonder opnieuw op te starten. het is ook makkelijker om een systeem gebaseerd op een kleine kernel om te zetten voor een andere architectuur. Zie OS X
edit:typo's
[Reactie gewijzigd door g4wx3 op 23 juli 2024 07:05]