Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Google verandert naam van microkernel Fuchsia OS in Zircon

Door , 75 reacties, submitter: NiLSPACE

Google heeft de naam van de microkernel voor zijn nieuwe mobiele besturingssysteem Fuchsia gewijzigd. De nieuwe naam is Zircon; eerder was dat Magenta. Fuchsia wordt van de grond af aan opgebouwd en is in tegenstelling tot Android niet gebaseerd op Linux.

De naam van het besturingssysteem zelf is niet veranderd, maar Phoronix merkte op dat de naam van de microkernel waarop Fuchsia OS is gebaseerd, is aangepast. Dat blijkt uit een bericht op Github. Ook heeft Google een pagina online gezet met code en documentatie over Zircon.

Voor de naamswijziging stond Zircon bekend als Magenta. Het is de microkernel die door Google is gemaakt als basis voor het nieuwe mobiele besturingssysteem met de codenaam Fuchsia. De kernel is vanaf de grond aan door Google ontworpen en niet gebaseerd op een bestaand systeem.

In mei verscheen een installatiebestand voor Android-smartphones, waarmee gebruikers de interface van Fuchsia kunnen uitproberen. Het ging om een statische mock-up en geen volledig werkende app. Het zou echter kunnen aantonen welke richting Google op wil gaan met de interface van het nieuwe besturingssysteem.

Vorig jaar bleek dat Google werkt aan een nieuw mobiel besturingssysteem. Concrete plannen over Fuchsia heeft het bedrijf zelf nooit bekendgemaakt. Mogelijk moet het op den duur Android opvolgen. Waarschijnlijk duurt het nog jaren voordat het besturingssysteem klaar is.

Door Julian Huijbregts

Nieuwsredacteur

13-09-2017 • 13:06

75 Linkedin Google+

Submitter: NiLSPACE

Reacties (75)

Wijzig sortering
Een micro-kernel... Leeft Andrew Tanebaum nog? https://nl.wikipedia.org/wiki/Andrew_S._Tanenbaum. Daar waar Minix inspiratie was voor Linux zou de Amoeba kernel een (oer) voorbeeld voor deze microkernel kunnen zijn (https://nl.wikipedia.org/wiki/Amoeba_%28besturingssysteem%29).

Over een micro kernel: Wat ik daar van weet is dat deze kernel in tegenstelling tot de linux kernel, zo min mogelijk aan board heeft. Veel, zo niet alle device-drivers draaien in de applicatie laag en zijn dus als applicatie te vervangen.

Trek dat door naar een telefoon: Dan maakt het niet meer uit welk merk/type je hebt, als de micro-kernel maar draait. De drivers voor de camera, microfoon, speakers, telefoon, modem en dergelijke draaien allemaal als applicatie en zijn dus als applicatie te updaten.
De tradeoff van een microkernel is altijd geweest dat de extra laag van indirectie die erin zit van het switchen tussen verschillende drivers. Onderzoek heeft de performance-impact sterk verkleind, maar de impact zal nog steeds hoger zijn dan op een monolithische kernel. Let wel: dit was al een relatief klein probleem op computers uit begin jaren '90, waar zelfs Chinese telefoons van 50 euro van vandaag mijlen ver op vooruit lopen.

De modulariteit van een microkernel en verhoogde beveiligingsgaranties die een microkernel biedt waren traditioneel nooit een sterk tegenargument. Echter in een moderne wereld waarin telefoonupdates (onder andere) blijven hangen op drivers die allemaal in een enkel Linux-pakket, en waarin we allerlei onvertrouwde apps installeren op onze telefoons, is een microkernel relevanter dan ooit. Mooie zet van Google.
Het laatste wat ik gezien had bij fuchsia is dat ze sowieso alles een eigen adapter krijgt met eigen controles / beperken zonder performance verlies. Kijk bijvoorbeeld naar het aantal system calls wat erg weinig is en dat ze afstappen van de aanpak zoals legacy systemen als linux doen qua mapping van virtual to physical adressen in de kernel. Zelfde functionaliteit zonder performance verlies in "user space" (denk bijvoorbeeld aan gpu zaken). Moeten een shitload een architecten een shitload een discussie over hebben gehad.

Maar het mooiste is nog dat het systeem lekker veilig lijkt te worden ipv die gatenkasen die we tegenwoordig hebben en bijna niet uitgehard zijn te krijgen, authenticatie op processen in het geheugen, etc.

Maar het grootste deel van wat ik zie is niet nieuw trouwens, volgens mij bestaat alles al in een of andere vorm ergens alleen nu samen in één kernel. Maar al een paar jaar niet meer met kernels bezig, dus mijn kennis is wat gedateerd.
De code van Fuchsia was verspreid over een groot aantal repositories. Het team van Fuchsia wilde deze repo's samenvoegen tot een aantal lagen. Zircon is de onderste laag en bevat de kernel en een aantal low-level libraries. De andere lagen van Fuchsia zijn ook naar mineralen vernoemd.

[Reactie gewijzigd door Mithrildor op 13 september 2017 13:44]

Ik zie dit veel liever als bedrijven die pak 'm beet 20 jaar voortborduren op oude code, met alle mogelijke veiligheidsrisico's van dien.
Echt een nonsense argument. Als het 20 jaar niet onderhouden code is, dan heb je *misschien* gelijk (ligt geheel aan de kwaliteit van de oude en nieuwe code). Als het in die 20 jaar wel onderhouden is (en dan laten we nieuwe functionaliteit er even buiten - die code is namelijk ook geen 20 jaar oud) is het hoogstwaarschijnlijk *VEEL* veiliger dan je nieuw ontwikkelde spul. Dat heeft nog geen 20 jaar exposure gehad namelijk.

Daarbij gaat het niet alleen om je kernel, alle tooling die er onder draait kun je ook zo'n beetje opnieuw ontwikkelen. Met name voor low-level apps (je installer, je partitioner, format tools, C libraries en bergen ander spul). Ook die code was al redelijk stabiel na 20 jaar - kun je ook over nieuw mee beginnen.

Ja het heeft absoluut voordelen om iets nieuws te schrijven, maar dat heeft meer te maken met het feit dat je design veel nieuwer kan zijn. Stellen dat het veiliger is alleen omdat het nieuwer is raakt echter kant noch wal.

[Reactie gewijzigd door freaky op 13 september 2017 13:37]

Met het veiligheid argument ben ik het eens, nieuwer betekent niet automatisch veiliger. Het is echter wel mogelijk dat dingen veiliger worden door nieuwe technieken te gebruiken.

Neem bijvoorbeeld Servo, de nieuwe experimentele browser engine van Mozilla. Deze is geschreven in een nieuwe taal genaamd Rust waarmee bepaalde bugs gezien kunnen worden tijdens het compileren. Hierdoor kunnen fouten als data races, use-after-free en buffer overflows direct gezien worden simpelweg omdat het programma niet compileerd als er iets niet helemaal klopt. Laat zulk soort bugs nou net de meest voorkomende security exploits zijn in Firefox: https://www.mozilla.org/e...y/advisories/mfsa2017-18/

Echter betekent zo'n taal uiteraard niet dat het programma automatisch veilig is. Als de ontwikkelaar slechte keuzes maakt tijdens het schrijven van software heb je nog steeds een probleem. Daarom is het nog altijd belangrijk dat code goed gereviewd word voordat het in productie komt.

[Reactie gewijzigd door NiLSPACE op 13 september 2017 15:57]

Je ziet het verkeerd, zircon is geen OS en Android is een merknaam van google voor hun besturingsysteem (dus niet enkel een kernel).

Een OS (besturingssysteem) bestaat uit een heleboel onderdelen, waaronder een kernel.

Een fabrikant mag van een een apparaat alleen zeggen dat het android draait als het voldoet aan de voorwaarden van google, waaronder de aanwezigheid van specifiek apps, eisen aan de gebruikte kernel, etc.

Deze eisen veranderen voortdurend, dus kan google op moment X gewoon zeggen dat ze eisen dat je een linux-kernel of Zircon-kernel moet gebruiken, waarbij Zircon van de nodige voordelen geeft voor zowel fabrikanten als gebruikers.

Op moment Y zullen ze gewoon zircon verplichtstellen en whola android draait op zircon.

Beetje vereenvoudige weergave, maar ze gaan echt geen concurrent voor android maken, android wordt gewoon door ontwikkeld naar dit punt.

[Reactie gewijzigd door 2green op 13 september 2017 15:15]

Ik zie het niet verkeerd, ik had het ook niet over de kernel, maar over Fuchsia OS. Ik weet wel grotendeels hoe een OS werkt.

Ik denk gewoon niet dat ze deze kernel compatible gaan maken met Android, ik denk dat dat te moeilijk gaat worden. Ik denk dat Zircon van grond af aan opnieuw is ontwikkeld zonder erbij na te denken dat Android erop moet kunnen draaien. Het lijkt me makkelijker om apps compatible ermee te maken.
Een fabrikant mag van een een apparaat alleen zeggen dat het android draait als het voldoet aan de voorwaarden van google, waaronder de aanwezigheid van specifiek apps, eisen aan de gebruikte kernel, etc.
Dat is niet waar, Android is niet van Google, Google Android is gebasseerd op AOSP. Fabrikanten mogen alleen de Play Store erop hebben, als ze specifieke apps erbij toevoegen, dat is gewoon marketing. En volgens mij mogen fabrikanten verder gewoon de kernel aanpassen hoe zij willen.
Het voordeel van Open Source is dat iedereen er mee aan de slag mag gaan, binnen de voorwaarden die de specifieke Open Source licentie stelt. Sterker nog: Android IS Open Source. Het argument dat Google de resources terug in Linux moet steken houdt daarom geen stand.

Google heeft bijgedragen aan meer dan 2.000 Open Source projecten, waaronder Linux. Wellicht dat met de komst van de eigen kernel de inbreng voor Linux zal dalen, maar dat zou niet meer dan logisch zijn.
Fuchsia heeft een microkernel, o.a. de filesystems draaien als services in userspace. De kernel kan dus niet POSIX-compatible zijn. Er is wel een POSIX-compatibility laag in de userspace.

Zircon lijkt weinig op Linux, Zircon werkt voornamelijk met objects, en communicatie met de kernel gaat via handles voor die objects. Het lijkt meer op de kernel van Windows NT dan op Linux.

Op dit item kan niet meer gereageerd worden.


Apple iPhone X Google Pixel 2 XL LG W7 Samsung Galaxy S8 Google Pixel 2 Sony Bravia A1 OLED Microsoft Xbox One X Apple iPhone 8

© 1998 - 2017 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Hardware.Info de Persgroep Online Services B.V. Hosting door True

*