'Google bereidt upgrade van Linux-kernel voor Pixel-telefoons voor'

Google bereidt naar verluidt een kernelupgrade voor zijn Pixel-telefoons met Tensor-soc voor. Die moet de versie van de Linux-kernel van 5.10 of 5.15 naar 6.1 brengen. Kernelupgrades op Android zijn zeldzaam.

Medewerkers van Google praten over de kernelupgrade in comments bij de Android-broncode, meldt Mishaal Rahman. Het zou gaan om upgrades voor de Pixel 6, 6a, 7, 7a, Fold en 8. Ook de Pixel 9 zou na release de upgrade nog moeten krijgen.

Het upgraden van de kernel moet de telefoons door optimalisaties in die versie sneller maken. Ook maakt het langere ondersteuning van de telefoons makkelijker, wat vooral van belang is voor de Pixel 8-telefoons. Google belooft bij die telefoons ondersteuning tot 2030; bij de Pixel 7 is dat tot 2027.

Het upgraden van de kernel kan als reguliere update in Android en vereist voor de gebruiker geen speciale stappen. Google heeft het werk aan de kernelupgrade niet bevestigd. Het is onbekend wanneer die upgrade moet uitkomen, maar omdat de Pixel 9 na release de upgrade zou krijgen, lijkt het erop dat de kernelupgrade nog een jaar of langer op zich kan laten wachten.

Door Arnoud Wokke

Redacteur Tweakers

10-01-2024 • 09:59

102

Reacties (102)

102
98
52
4
0
27
Wijzig sortering
Waarom is kernelupgrade op Android zeldzaam?
Krijgt Android niet iedere jaar een nieuwe versie van besturingssysteem? Maar daar zit ook kernel upgrade/update?

(hier Apple gebruiker :P, ben gewoon nieuwsgierig).

[Reactie gewijzigd door Dark Angel 58 op 24 juli 2024 09:07]

Waarom is kernelupgrade op Android zeldzaam?
Krijgt Android niet iedere jaar een nieuwe versie van besturingssysteem? Maar daar zit ook kernel upgrade/update?
Het komt door een combinatie van redenen.
Deels zijn die technisch en deels financieel en deels organisatorisch.
De financiele reden is uiteraard simpelweg dat het goedkoper is voor de fabrikanten om niks te doen.

De technische reden is dat sommige chipfabrikanten er voor kiezen om hun drivers geheim te houden en alleen te leveren in een formaat (binary blob) dat niet door anderen onderhouden kan worden en gebonden is aan een bepaald model. Net zoals je een brood niet meer kan veranderen nadat het in de oven is geweest. Heel Linux is gebouwd rond het idee dat iedereen alle ingredienten beschikbaar heeft om een snel nieuw brood te bakken. Oud en bedorven brood gooi je weg, conserveringsmiddelen zijn dan ook niet nodig.
Veel fabrikanten willen alleen gebakken brood verkopen om hun recept geheim te houden (net zoals dat iedere bakker denkt dat z'n brood uniek is) maar ze willen ook "geen conserveringsmiddelen" op de verpakking zetten. Dat gaat niet goed.

Anderen publiceren hun werk wel maar voldoen niet aan de kwaliteitseisen die nodig zijn om te worden opgenomen in de Linux-kernel.

De meeste andere systemen (zoals Windows en iOS) hebben een andere aanpak en zullen ook 10 jaar oud brood accepteren. Die systemen zijn gericht op alles kunnen eten ("liever ziek dan hongerig").
Het is maar waar je prioriteit ligt, zo lang mogelijk leven of zo lang mogelijk gezond zijn.

De organisatorische reden is dat verantwoordelijkheid is uitgespreid over veel partijen, de fabrikant van de chips, de fabrikant van de telefoon, de Linux-programmeurs, de onafhankelijke Android-programmeurs, de programmeurs van Google, (soms) het telefoonbedrijf en de eindgebruiker. Al die partijen zijn van elkaar afhankelijk en het begint bij de partijen die het verste van de eindgebruiker staan. Alle partijen daarna zijn afhankelijk van hun voorganger en als de chipfabrikant niet mee wil werken (of al failliet is gegaan) dan kan de rest ook niet veel. Als klant wordt je van het kastje naar de muur gestuurd. De telefoonfabrikant wijst naar de fabrikant van de chips. De fabrikant van de chips praat niet met consumenten want dat zijn geen directe klanten.

Als klant zou je dat niet moeten accepteren maar je hebt weinig te kiezen. Ze doen het bijna allemaal en dat blijven ze doen zolang de meeste gebruikers het accepteren. De meeste gebruikers weten echter niet eens dat er een probleem is. Ze weten niet beter dan dat het normaal is dat brood groene vlekken heeft.

Nu zou je kunnen zeggen dat Apple dat beter voor elkaar heeft en in praktijk klopt dat. Fundamenteel is het probleem daar echter veel groter. Apple heeft nog meer controle over de hardware en software dan bij Android en binnen het Apple ecosysteem zijn er geen alternatieven. Alles komt alleen maar van Apple. Pragmatisch gezien werkt dat momenteel beter dan het Android model, principieel gezien raak je van de regen in de drup. Onder Android wordt in ieder geval een deel van de hardware ondersteunt met open drivers, bij Apple is alles onder controle van Apple.

De situatie onder Android is gelukkig niet helemaal kansloos. Geheime/gesloten drivers kunnen altijd nog worden geopenbaard of vervangen door nieuwe drivers. Alle stukjes zijn er maar iemand moet ze samenbrengen en/of de fabrikanten betalen om mee te werken of hun code te publiceren, of de documentatie zodat anderen zelf een driver kunnen schrijven. Als zo'n driver eenmaal netjes wordt gepubliceerd kan die worden opgenomen in de kernel en gebruikt worden door iedereen met zo'n chip, in plaats van dat iedere telefoonfabrikant z'n eigen kopie van de driver moet hebben die allemaal weer onderhouden (zouden) moeten worden.

Ik denk dat Google dus bezig is met oude drivers op te vragen bij fabrikanten en het werk af te maken door ze op te nemen in de Linux kernel zodat er voortaan één generieke driver is voor iedereen, in plaats van dat ieder model telefoon z'n eigen versie van die driver heeft die allemaal apart worden worden onderhouden.
Er zijn zat kernel updates bij Android:
https://source.android.co...ure/kernel/android-common

[Reactie gewijzigd door watercoolertje op 24 juli 2024 09:07]

Daar gaat het niet om, wat bedoelt word is dat wanneer je bijvoorbeeld een galaxy s23 koopt met Android 14 en Linux kernel x.x en je krijgt een update naar Android 15, meestal de Linux kernel niet geupdate word maar hetzelfde blijft.

Zo heeft mijn S22ultra de update van 13 -> 14 gekregen maar vanaf het begin nog steeds Linux kernel 5.10
Als je kijkt naar de LTS versies van de Linux Kernel, dan zie je dat zelf 4.19 nog support heeft. Er is dus vaak geen noodzaak te up daten, gezien de security issues gewoon worden geback-port.
Ooit van backporten gehoord? Dat je op kernel 5.10 zit wil niet zeggen dat die kernel niet is voorzien van patches/updates die voor nieuwere kernels zijn uitgekomen. Niet alles laat zich even makkelijk backporten, bijvoorbeeld vanwege bepaalde afhankelijkheden waardoor het (te) veel werk kan zijn. Dat werk kan dan beter worden gestoken in het updaten van de kernel en zorgen dat de rest van je stack compatible wordt met upstream. Precies wat Google met deze stap lijkt te gaan doen.

[Reactie gewijzigd door Jorick op 24 juli 2024 09:07]

Klopt, was niet helemaal volledig, bedoelde in feite bijvoorbeeld 5.10.x de patches worden natuurlijk wel toegevoegd😉
Het nummer blijft helemaal niet hetzelfde, in jouw voorbeeld toevallig wel, maar er zijn al meerdere upgrades aan de kernel geweest bij Android, dat zie je dus ook terug op die link die ik heb gepost.

Dan een specifiek toestel er uit pikken, tja het zal wel, zegt niet zo veel over de (Android) kernels van de afgelopen 15 jaar natuurlijk...

[Reactie gewijzigd door watercoolertje op 24 juli 2024 09:07]

Er zijn meerdere redenen daarvoor. Er zijn maar weinig voordelen om major kernel version upgrades te doen: vaak zijn nieuwe features niet nodig, en ze introduceren alleen maar meer risico op regressies. De belangrijkste reden om kernels te upgraden voor bestaande devices zijn critical bugfixes en security updates, en die krijg je prima mee op bestaande LTS kernels.

Daarnaast heeft de linux kernel ook geen stable ABI, wat het dus onmogelijk kan maken om binary drivers op nieuwe kernel versies te gebruiken. Android heeft daar sinds kort een oplossing voor: zij houden zelf wel de ABI constant voor bepaalde kernel branches, zie hier.
Dat is helemaal niet het punt. Ja, verschillende Android versies ondersteunen verschillende Linux kernels. Het punt is dat de Linux kernel van de Android versie waar je telefoon mee kwam 9 op de 10 ook dezelfde Linux kernel is als die je telefoon heeft nadat het al zijn Android upgrades heeft gehad want fabrikanten, inclusief Google, werken die kernels nooit bij op patches na.
Omdat Android alleen in naam open-source is. Veel hardware drivers worden als closed-source binary blobs geleverd door de fabrikanten van de SoC, en die drivers zijn er dan alleen voor een specifieke Linux kernel. Vervolgens is er 0 support vanuit de fabrikant voor nieuwere kernel versies.
Android is gewoon open source, niet enkel in naam.

Drivers (van 3de) zijn geen Android natuurlijk en vallen dus ook niet onder die open source licentie/verplichtingen...

[Reactie gewijzigd door watercoolertje op 24 juli 2024 09:07]

Wat de meeste mensen "Android" zouden noemen is wel degelijk maar half-half. Google heeft AOSP zover uitgekleed dat het nog amper een bruikbaar OS is in zijn bare-bones vorm. Grote delen van de API zijn deel van GPS tegenwoordig, veel van de in-box apps in AOSP hebben al sinds de Android 4 dagen geen noemenswaardige ontwikkeling meer gezien omdat Google zijn eigen closed-source versie van apps heeft gebouwd, etc.

Het idee dat Google's Android "open source" is, is nogal erg kort door de bocht.
Ook niet helemaal waar. De CPU drivers/kernel weet even niet meer exact welke van Samsung is jarenlang al een gesteggel, omdat ze door hun opbouw wel open source zouden moeten zijn, maar Samsung alleen de blobs leverd(e).
In de letterlijke interpretatie ja. In de praktijk zien mensen Android als het hele besturingssysteem inclusief drivers en Google Play frameworks.
Ja, Android is “open source”. Maar wil je Google services, dan komen er ineens heel veel voorwaarden bij kijken. Aangezien geen enkele fabrikant zijn Android toestel wil leveren zonder playstore, is open source Android toch behoorlijk beperkter dan je zou verwachten op basis van open source (het verbod op Android forken bijvoorbeeld). Al heeft bovenstaande weinig te maken met de kernel discussie.
Puur Android (Android Open Source Project, AOSP) wel inderdaad. Maar AOSP is steeds minder bruikbaar door alles wat eruit wordt gesloopt en in GMS wordt gestopt. Het Android wat standaard op je telefoon staat in de meeste gevallen is voor een behoorlijk deel geen open source meer.
Deze delen zijn dan wel (deels) vervangbaar met bijvoorbeeld MicroG, maar AOSP op zichzelf is enorm kaal.
Hey daar is spuit 11 weer :Y)

Feitelijk heb ik gewoon gelijk hoor, Android is Open Source:
https://source.android.com/docs/setup/download/downloading

Loller heeft het over noemen, niet over zijn:
Wat de meeste mensen "Android" zouden noemen
Hij heeft niet meer of minder gelijk dan ik, we hebben alleen een andere definitie van wat Android is. Ik zie het als de basis waar telefoonbouwers wat mee doen, hij als eindproduct...

[Reactie gewijzigd door watercoolertje op 24 juli 2024 09:07]

Potetoes potatoes

Als ik van 6 hoog overdag een piano uit het raam kieper boven een drukke winkelstraat en iemand overlijdt daarbij is dat moord ook al kende ik die persoon niet of wilde ik hem helemal niet dood..

Dus wat je moord noemt en wat moord is is soms nét even anders toch zijn de uitkomsten gelijk

De ongelukkige voorbijganger leeft niet meer en ik ga voor vele jaren avhter slot en grendel

In zoverre kun je Android niet open noemen omdat je zonder die blobs simpelweg geen werkende hardware meer hebt

Zonder Google framework kun je nog prima voor alternatieve apps of oplossingen kiezen maar zonder aangepaste drivers gaat die opensource kernel niet werken


Android als ontwikkelplatform is dus weliswaar opensource maar Android als OS (rom) op je telefoon of tablet is dat niet
En daarom hou ik zo van iPhones, hoewel er veel af te dingen valt op Apple als vendor met beleid omtrent Appstore, prijzen etc etc.

Apple is als enige in staat om courante toestellen (tot 5 jaar) volledig up to date te houden.
Je weet dat de Pixel 8 7 jaar updates krijgt?
Iphones nog langer. Ik meen laatste 9(?) jaar.
Maar die vijf jaar gaat niet over IOS updates, maar over dat je de laatste IOS versie draait. Bijvoorbeeld, een iPhone 7, ondersteunt geen IOS 17, maar draait wel IOS 15.8. En 15.8 kwam uit in het afgelopen kwartaal.

En om terug te gaan op het kernel en open source verhaal. IOS is gebaseerd op macOS, die op haar beurt gebouwd is op Apple's Darwin. Darwin is open source, het maakt voor de kernel onder meer gebruik van FreeBSD, waarmee IOS in feite UNIX(-like) is.
Het is met Android een beetje appels met peren vergelijken natuurlijk. Maar in zoverre zou je wel voor beide kunnen zeggen dat ze in de kern open source zijn, maar dat in de praktijk wat de consument in handen heeft dat alles behalve is.
Darwin heeft wel een bsd licentie dat is ook een ander manier. Darwin heeft al paar namen gehad...
Naar de laatste Linux kernel?
Wat boeit het op welke Linux kernel dat ding draait? Zolang het apparaat veilig is en prima werkt is het goed toch?
Jij draait ook nog op Windows XP met extended support zeker ;)

De Linux ontwikkelaars onderhouden geen enkele kernel voor 7 jaar. Het is dus aan de fabrikant om te zorgen dat het veilig blijft. Die verdient daar eigenlijk niks aan dus ik heb meer vertrouwen in de fundamentele veiligheid van een recentere kernel dan eentje die al jaren door een fabrikant in minimale onderhoudsmodus wordt bijgehouden.

[Reactie gewijzigd door bzzzt op 24 juli 2024 09:07]

Versie 5.10 van de Linux kernel (13 december 2020) is pas in januari 2031 EOL.
https://endoflife.date/linux en andere sites geven allemaal 2026 aan.
Waarom krijg je hier nou upvotes voor?
Jawel hoor, 5.10 (uit 2020) wordt nog tot 2031 onderhouden via het CIP project. De fabrikant zal er vast nog andere patches tegenaan gooien, maar tegen de tijd dat die kernel niet meer wordt ondersteund wordt de telefoon toch al niet meer ondersteund.
Waarschijnlijk maakt Google het zich wat gemakkelijker door de kernel te updaten naar 6.1, die tot 2026 normaal ondersteund wordt en zelfs tot 2033 via het CIP project.

https://wiki.linuxfoundat...art#kernel_maintainership

[Reactie gewijzigd door mjz2cool op 24 juli 2024 09:07]

Wel prettig dat er nog iemand naar omkijkt, maar 3 personen klinkt wel echt als een 'bus factor' en niet heel bedrijfszeker. Daarnaast is er nog steeds iemand nodig die die kernels naar Android overzet want dat doen zij niet.
Dat zal wel loslopen, het gaat tot nu toe allemaal prima toch? Zolang een telefoon nu ondersteund wordt zal ook de kernel up-to-date zijn.
Die 3 personen zijn maintainers, maar er zijn veel meer mensen die eraan meewerken, van bedrijven tot hobbyisten, iedereen kan er in principe aan meewerken.
Ik weet ook niet hoeveel werk het is om een kernel te onderhouden voor de hardware van een telefoon, maar ik denk dat het voor een fabrikant niet heel veel werk zal zijn vergeleken met het onderhouden en eventueel aanpassen van het os zelf.
Het meeste werk is al door de maintainers en contributors gedaan, de fabrikant hoeft alleen eventuele aanpassingen te doen en te zorgen dat alle benodigde drivers werken.
Het meeste werk is al door de maintainers en contributors gedaan, de fabrikant hoeft alleen eventuele aanpassingen te doen en te zorgen dat alle benodigde drivers werken.
Als je ziet wat voor ingrijpende verbouwingen sommige fabrikanten aan 'stock Android' hebben gedaan (onder de noemer 'value add') denk ik dat je onderschat hoeveel werk er in gaat zitten.
De geschiedenis heeft uitgewezen dat fabrikanten dat liever niet doen.
Je hebt het dan denk ik over aanpassingen in Android in plaats van Linux. Android wordt inderdaad helemaal verbouwd door de meeste fabrikanten, de Linux kernel zal ook wel aangepast worden, maar ik denk wel dat de meeste aanpassingen en het meeste werk in Android zal zitten voor fabrikanten die een heel eigen UI over Android heen gieten.
Hoewel ik 7 jaar een geweldige prestatie zou vinden heb ik er heel sterk mijn twijfels bij. Voorlopig is het Google die beweert dat je 7 jaar updates gaat krijgen. De lijst van https://killedbygoogle.com is ondertussen zo groot dat ik het niet genoeg vertrouwde en toch ook weer voor een iPhone ben gegaan. Niemand kan de toekomst voorspellen maar Apple heeft hier wel een veel beter track record dan Google om een overwogen beslissing in te kunnen nemen.

De Pixel 8 kwam eind 2023 uit. Eind 2030 weten we of ze hun claim waargemaakt hebben. Wie weet bestel ik tegen dan wel een Pixel 12 :)
Zouden ze het hier niet waar maken kunnen ze alvast wat miljarden opzij zetten voor de class action lawsuits die meteen op de bekendmaking volgen in de VS. Deze apparaten zijn verkocht met de garantie dat deze 7 jaar aan updates krijgen. Dat is dus niet eventjes een random product van Google waar ze nooit uitspraken over doen hoe lang ze die in de lucht laten blijven en in welke vorm.
De laatste keer dat ze iets vergelijkbaars voortijdig hebben afgesloten hebben ze ook iedereen het volledige aankoopbredrag gecompenseerd.
Hoewel je in principe theoretisch gelijk hebt, denk ik dat Het echte verhaal wat complexer is.

vraagje bijvoorbeeld af hoe vaak een fabrikant updates zou moeten uitbrengen om te mogen claimen dat jouw toestel nog ondersteund is
op die manier kun je al snel hooguit 2 bugfixes per jaar uitbrengen en toch beweren dat jouw toestel daarmee nog ondersteuning heeft.

vergelijk je dat met de Apple updates die gedurende die gehele 5 jaar ongeveer elke twee maanden een update krijgt dan is dat natuurlijk van een geheel andere orde.

in die zin baal ik er dus ook van dat bij het opstellen van regels over duurzaamheid er in de EU niet of nauwelijks is nagedacht of gesproken over de vraag binnen welke termijn bijvoorbeeld veiligheid s issues moeten worden opgelost voordat je kunt spreken van 'ondersteuning' zoals bedoeld in de context van 7 jaar ondersteuning die Google beweert te gaan geven op zijn pixel telefoons
Wat een onzin. Dit product wordt verkocht met garantie naar de koper toe dat er zeven jaar ondersteuning is. Dat is een contractuele overeenkomst, waar google niet zomaar onderuit zou kunnen (misschien als het bedrijf failliet gaat oid).
Google pixel 8 heeft 7 jaar support.
Je mist m'n punt denk ik. Pixel krijgt niet 7 jaar lang de latest en greatest, zoals het artikel al stelt is Google niet in staat altijd de laatste kernel uit te rollen als ze dat wil omdat ze afhankelijk is van SOC verdors.
Google is zelf de fabrikant van de SOC (Tensor). Daarnaast krijgen de Pixels ook gewoon 7 jaar Android-upgrades. De Pixel 8 krijgt dus gewoon Android 20.

Kernel upgrades niet, maar daar zitten ook amper vernieuwingen in die voor de gebruiker merkbaar zijn, behalve dan misschien wat kleine prestatieverbeteringen.
Ook Google is afhankelijk van externe vendors, hun eSIM eUICC is bijvoorbeeld van Thales. Nou zal dat niet meteen de grootste showstopper zijn en ook Apple is afhankelijk van externe vendors. Maar in general is het apple eco-systeem super geharmoniseerd waar het Android landschap redelijk versnipperd is (en waar wij als telco ook last van hebben).
Dat is wel wat ze zeggen. En waarom zou dat niet zo zijn? De kernel hoeft niet vervangen te worden bij updates, patches zijn voldoende om de kernel up-to-date te houden. Zo lang ze dezelfde kernel blijven gebruiken zullen ook de drivers enzo blijven werken. Upgrades aan Android zelf kunnen gewoon los van de kernel. Zo kan de telefoon dus prima 7 jaar lang de latest en greatest krijgen. Het kan zelfs veel langer, wat bewezen wordt door custom roms. Upgrades houden natuurlijk wel op wanneer een nieuwe kernel nodig is voor een nieuwe Android versie, maar updates blijven mogelijk.

[Reactie gewijzigd door mjz2cool op 24 juli 2024 09:07]

Ik denk dat je Apple overschat als je denk dat ze daar wel kernel updates voor oude toestellen uit brengen. Het enige wat je ziet is het stickertje wat ze er op plakken en de front end features die er wel if niet in zitten.
Met iot, mutable ossen kan je os langgenoet up2date men hebben geen zin een of andere patch je kernel breekt..met meer ram betere processoren zal het wie omgeven kernel upgraden...
Inmiddels niet meer hoor, dat is wel een wat achterhaalde gedachte.
Google, Samsung etc. bieden tegenwoordig ook jarenlange ondersteuning.
Er zijn binnen het Android-segment anders ook "gewoon" fabrikanten die 5+ jaar updates aanbieden. Dus dat is niet een goed argument om voor de iPhone te kiezen, want het is niet juist om te veronderstellen dat anderen dat niet doen.

Er zijn allerlei argumenten om voor Apple en haar iPhones te kiezen - maar ook andere merken hebben tegenwoordig een 5+ jaar update-model.
Dat begint nu ook meer bij Android en staat los van de kernel versie. Zeer zelden zijn er nieuwe Android versies die een "nieuwere" kernel vereisen.

Mijn OnePlus 3 telefoon kwam uit met Android 6, en draait nu Lineage op basis van Android 11 (en ontvangt daarvan nog steeds security updates). Updaten naar 12 kan niet omdat de kernel versie te oud is. En "te oud" is dan volgens mij ook echt omdat deze nog steeds op de originele kernel vanuit OnePlus draait die er in zit sinds de originele release.

En Apple kan precies hetzelfde doen. Wel de "hogere" software lagen bijwerken etc, maar de originele kernel blijven gebruiken en deze niet of maar minimaal bijwerken.
Dat is verleden tijd. Meer android telefoons krijgen langer updates.
Begrijp dat je even app!e fan bent maar doe eerst eens what onderzoek.
Ik ben geen Apple fan, ik werk bij een telco en zakelijk gezien is mijn relatie met Apple meer haat dan liefde. Prive geef ik inderdaad de voorkeur aan Apple gezien de horizontale integratie van het eco-systeem.

Ja er zijn Android telefoons die meerdere jaren security updates krijgen, maar het artikel bewijst welke struggles vendors hebben om current te blijven. Men is afhankelijk van Google, van AOSP, van chipset/soc vendors etc waar Apple veel meer zo niet bijna alles in eigen beheer en onder controle hebben. Ik zeg niet dat Apple altijd de kernel op de latest greatest heeft, maar als ze dat willen dan kunnen ze dat veel sneller en makkelijker dan de gemiddelde Android vendor.
Apple doet ook kernel updates. Laatste is van 2022.

Dat fragmentatie van verschillende leveranciers het probleem is voor updates is al bekend maar dat is langzamerhand aan het verbeteren. Samsung, google, enz maken hun eigen telefoons met bepaalde eisen voor support op onderdelen. Dit zorgt voor langere ondersteuning.

Prijzen liggen ook evenredig met Apple.
De goedkopere modellen doen dit niet om zo de kosten te onderdrukken.

Ook de vraag wil je altijd de laatste kernel uitrollen? In Linux ben ik er voorzichtig mee tot het bewezen is dat alles stabiel blijft.
Maar dat geldt voor Apple ook.
Tuurlijk is dat een valide vraag, maar ik refereer aan het feit dat Android handset vendors vaak die keuze niet of maar zeer moeizaam hebben. Als Apple morgen zegt "we gaan de kernel updaten" omdat ze bug x niet kunnen fixen met een patch of feature y of optimalisatie z willen doorvoeren dan kunnen ze dat met veel minder moeite.
Dus je vergelijkt alle fabrikanten met 1 fabrikant genaamd Apple.
Dat is wel erg makmelijk en dat geeft een vertekend beeld.
En het heeft ook te maken met kosten, een goedkope telefoon zal geen lange ondersteining krijgen inderdaad. Vergelijk je Apple met top segment dan zijn ondersteuning langer.
Apple is als enige in staat om courante toestellen (tot 5 jaar) volledig up to date te houden.
Google, Samsung en Fairphone zijn het niet met je eens...
Die draaien niet op de laatste beschikbare Linux kernels, maar krijgen alleen bugfixes en security updates.
Wat werkt er niet dan als ze niet de laatste Linux kernels in zich hebben?
Weinig tot niks. Alle hardware wordt al ondersteund. Beveiligings patches krijg je ook gewoon. Misschien wat optimalisaties.

Bedenk ook dat dit niet alleen voor telefoons geldt maar voor ontzettend veel dingen die op een Linux kernel draaien. Van smart apparaat tot set top box tot server. Die krijgen ook niet altijd nieuwe kernels omdat er simpelweg geen reden voor is.
Meestal ondersteuning van nieuwere hardware maar daar heb je op een bestaande telefoon niet zo veel aan. Vaak gaat ook een bepaalde techniek anders waardoor later winsten vallen te behalen. Maar de meeste patches voor fouten etc h worden gewoon gebackpoort. Zo zou het ook kunnen zijn dat v 4.16.xxx nieuwer is dan 5..2.xxx (al is het maar een paar dagen) maar is de 5 serie gewoon de nieuwe lijn,
Ten eerste niks mis mee, ten 2de werkt dat bij Apple niet anders. Ook die doen (voornamelijk) marginale incremental updates van het de kernel...

Niet echt een verschil dus...

[Reactie gewijzigd door watercoolertje op 24 juli 2024 09:07]

De eerste 5+ jaar kunnen Apple devices de laatste OS versies draaien, en krijg je allerlei fundamentele verbeteringen gewoon meegeleverd (denk aan dingen als memory compression, AppleFS, sealed volumes, verschuiven van kernel extension functionaliteit naar user space, W^X) dus dingen die performance en veiligheid verbeteren.
Pas daarna krijg je alleen nog maar security fix support.
Android devices die nooit een nieuwe kernel krijgen zitten direct op dat nivo. Vind dat wel een verschil.
Dat is niet waar... Veel toestellen krijgen gewoon de laatste OS voor een aantal jaar met de nieuwe functies en verbeteringen. Veel daarvan zit namelijk niet in de kernel. OS is niet hetzelfde als kernel.

Ik ben blij dat er keus is, want persoonlijk heb ik niets met Apple telefoons, maar hun update beleid is/was altijd beter.
Al die verbeteringen kunnen vaak ook zonder kernel upgrade. Ik las ergens in een andere comment dat de laatste kernel upgrade voor iPhones ook al in 2022 was, maar pin me daar niet op vast.

Na wat zoeken zie ik dat de iPhone 6s en de eerste SE de meeste upgrades hebben gehad, namelijk van iOS 9 tot 15. De rest heeft maximaal 5 upgrades gehad naar een nieuwe iOS versie.
https://iosref.com/ios

Samsung biedt volgens mij ook iets van 5 jaar aan support, waarvan 3 of 4 Android upgrades. Pas na die 3-4 jaar krijg je alleen nog security updates.
Google biedt ook 5 jaar aan ondersteuning vanaf de Pixel 7, waarvan 3 jaar gegarandeerd Android upgrades, die telefoons zullen dus ook pas na 3 jaar alleen nog security updates krijgen.

Tegenwoordig loopt Apple dus helemaal niet zo ver meer voor wat updates betreft.
Dat dus. Natuurlijk komen er op Android wel security patches uit en nee natuurlijk hoef je niet perse the latest en greatest kernel te hebben. Mijn punt is meer dat op Android de versnippering van verantwoordelijkheden (AOSP/community, de drivers van de vendoren en hun chipset leveranciers etc) het veel moeilijker maken om optimalisaties uniform door het hele ecosysteem door te voeren.

Als Apple een noodzaak ziet om de kernel te updaten dan kan ze dat, als dat impact heeft op de drivers dan kan ze dat.
Vind ik overigens prima, gebruik een (ietwat oude iPhone) maar we hebben ook een Samsung tablet en het maakt mij niet zoveel uit of de laatste Android er op staat, wel dat ie security fixes krijgt.
Dat hoeft ook niet. Ook met oudere kernels kan een telefoon volledig up to date zijn. Het upgraden van de kernel is ook niet altijd nodig, die wordt wel gepatched zolang de telefoon ondersteund wordt. Elke nieuwe feature of performance verbetering waar je wat van merkt komt met de updates aan het OS en de patches aan de kernel mee.

Volgens https://en.wikipedia.org/wiki/Linux_kernel_version_history wordt zelfs 4.4 nog ondersteund tot 2027. Tot dan zal deze kernel dus ook gewoon up-to-date kunnen blijven.

Apple kan veel eenvoudiger de kernel updaten omdat ze minder afhankelijk zijn van andere partijen voor de drivers. Ik vraag me wel af of Apple de kernel meestal ook niet gewoon patched.
De motor in je auto is na aanschaf toch ook niet snel meer de nieuwste spec en toch doet ie het nog jaren prima. Je hoeft echt niet op de laatste versie van een Linux kernel te zitten om een prima product af te leveren dat nog jaren mee kan.
Maar wat betekend dat voor de veiligheid? Neem aan dat nieuwere Linux kernels ook betere beveiliging heeft. Niet alles zal altijd maar met een patch uitgebracht worden want niet alles is een bug, er kunnen ook nieuwere veiligheid constructies aan toegevoegd worden, die zou je dan toch missen?

Linux Kernel 5.2 is van Juli 2019, dus ze lopen maar bijna 5 jaar achter met kernel versies.

[Reactie gewijzigd door ronaldmathies op 24 juli 2024 09:07]

En die aanname is onjuist (en het is heel makkelijk te vinden dat dat onjuist is). Je moet natuurlijk niet naar 5.2 kijken (wordt ook niet in het artikel genoemd) omdat er (voor zover ik weet) alleen LTS releases worden gebruikt voor Android. De genoemde kernel versies (5.10 en 5.15) hebben tot eind 2026 support. https://en.wikipedia.org/wiki/Linux_kernel_version_history
Er is denk ik wel een verschil tussen support (bug fixes, security fixes), en nieuwe features waaronder nieuwe security features en functionele features. Die krijg je dus niet mee. Ik gebruikte versie 5.2 omdat ik deze vrij snel kon vinden, betekend hoogstens dat 5.10 en 5.15 nog ouder zijn.

Windows 11 bevat ook veel meer nieuwere security features dan Windows 10, Windows 10 word ook heel lang ondersteund, maar kreeg niet de nieuwere security features, dat bleef voorbehouden aan Windows 11.

Dus dat het niet erg is dat ze zo lang blijven hangen ben ik het niet helemaal mee eens. Ongetwijfeld dat die versies nog steeds veilig zijn, maar ik verwacht altijd nog minder veilig als de latere versies die naast dezelfde security fixes ook nieuwe security mogelijkheden heeft.
Over welke security mogelijkheden heb je het? Ik zou het verbazingwekkend vinden als zoiets aan al de volgende voorwaarden voldoet:
1) nieuwere versie van de kernel heeft nieuwe "security features".
2) de nieuwe "security features" zijn compatible met de oudere hardware van telefoons waar de oudere kernel op draait.
3) de nieuwe "security features" zouden zo snel in de software geïmplementeerd worden dat het relevant is.
4) de "security features" lossen een veiligheidsprobleem op wat niet op een andere manier opgelost wordt (in dat geval is de LTS kernel niet meer veilig en kun je dus niet spreken van LTS).

Je vergelijking met Windows 11 en Windows 10 is nogal scheef want dat is veel meer dan alleen een kernel upgrade. Nieuwe Android versies met oude kernels kunnen ook prima nieuwe features hebben.

Ik heb normaal gesproken niks tegen hypothetische discussies, maar het lijkt dat je hier op zoek bent naar iets wat er niet is.

Ps: 5.10 en 5.15 zijn nieuwer dan 5.2, niet ouder.
Maar wat betekend dat voor de veiligheid?
Niks, want die kernels zijn gewoon te patchen, net als oudere Androids (en iOS) versies ook soms patches krijgen die ook op nieuwere builds worden toegepast...
Neem aan dat nieuwere Linux kernels ook betere beveiliging heeft.
Net als nieuwe bugs en ook nieuwe exploits bedoel je?
Linux Kernel 5.2 is van Juli 2019, dus ze lopen maar bijna 5 jaar achter met kernel versies.
Klopt en daar is dus niet direct een issue mee, behalve als er iets is wat niet te fixen is of als een nieuwe kernel nodig is voor bepaald functionaliteit, in de praktijk heeft niemand daar nog last van gehad...
Meer op de manier van , ah het is -10 buiten in de wintertijd , je zomer-banden kunnen nog goed rijden ... geen probleem om er mee op de weg te gaan , want ze kunnen nog goed rollen .
De vergelijking met een motor vind ik dan beter, mits goed onderhouden (gepatched) zal de motor zonder problemen blijven werken gedurende de levensduur van de auto (soms zelfs ver daar voorbij, met uiteindelijk natuurlijk de nodige reparaties).
Over het algemeen zul je de motor niet hoeven te vervangen met een nieuwe. Zo is het ook niet nodig om de kernel te vervangen, zolang deze maar ondersteund wordt met patches.
In het geval van Linux 4.4 wordt deze zelfs ondersteund tot begin 2027.
Slechte analogie. Een fysiek product is niet te vergelijken met een stuk software wat in principe triviaal te vervangen is. Als het mogelijk zou zijn een zuiniger, milieuvriendelijker motor te downloaden en in een half uurtje te installeren in mijn auto zou ik het ook regelmatig doen.
Zo is het ook niet nodig om de kernel te vervangen, zolang deze maar ondersteund wordt met patches.
In het geval van Linux 4.4 wordt deze zelfs ondersteund tot begin 2027.
https://endoflife.date/linux geeft aan dat support op de 4.7 LTS kernel al een jaar geleden verlopen is.
Mijn vraag is dan wie die ondersteuning gaat doen en in hoeverre mate je daar op kan vertrouwen.
Het gaat er ook niet om of het eenvoudig te vervangen is, maar om de noodzaak. Daarom vond ik dat een betere vergelijking. Een motor hoef je over het algemeen niet te vervangen gedurende de levensduur van de auto. Een kernel hoeft ook niet vervangen te worden gedurende de levensduur van de telefoon, zolang deze ondersteund wordt. Dat zal in het geval van 5.10 tot 2026 zijn, en vanuit het CIP project tot 2033. Als de ondersteuning door de fabrikant van de telefoon langer is dan de geplande end of life van de ondersteuning van een kernel, zal de fabrikant de kernel dus moeten onderhouden, of vervangen.

4.7 wordt inderdaad niet meer ondersteund, maar 4.4 wel, via dat CIP project. Al zal dit niet meer voor Android gebruikt worden denk ik.

https://en.wikipedia.org/wiki/Linux_kernel_version_history
Als je een auto koopt krijg je er standaard geen winterbanden bij. Je krijgt een gewoon goed werkende auto.

Het gaat erom wat ja mag verwachten als consument. Je krijgt een prima werkende telefoon die veilig genoeg is (want security updates). Je krijgt niet de garantie op structureel de nieuwste van de nieuwste snufjes. Tenzij expliciet bij aankoop aangegaan.
Ik ook niet. Apple doet het iig negen jaar. Iphone 6S (2015) is up te daten naar IOS 15 die nog steeds niet end of life is en nog steeds updates ontvangt. De telefoon is echter niet naar IOS 17 meer te updaten, net als dat die oude Samsung ook niet Android 13 heeft maar wel nog updates krijgt.
Die hoeven er nog niet te zijn om waar te zijn :Y)

S22/23/24 van Samsung, en de Pixel 7 en 8 van Google bijv. krijgen allemaal 5 jaar of langer updates!
Samsung en Google maken zeker mooie telefoons met goede voorwaarden en mooie functies. En zakelijk gezien kan ik als medewerker van een MVNO een stuk beter door de bocht met beiden dan met Apple, ze zijn voor MVNOs en kleinere MNOs echt vrijwel niet benaderbaar en sluiten deze groep op veel fronten uit. Hoog tijd dat de EU ook daar ingrijpt.

Privé heb ik een voorkeur voor het Apple eco systeem.

[Reactie gewijzigd door Odie op 24 juli 2024 09:07]

Wat ik niet kan appreciëren aan gesloten systemen zoals deze van Google, Apple en Microsoft - dat is dat ik als koper van het systeem niet de volledige controle heb. Dus meer en meer gaan we over op zelfbouw.
Zoveel mensen zoveel voorkeuren. Ik wil vooral een ecosysteem dat gewoon werkt maar bovenal flink inzet op privacy en veiligheid.
Yup een van de goede beveiligings redenen waar je gewoon niet omheen komt.
Google, Xiaomi en Samsung ook. Dus je zal Android geweldig vinden.
Android is open source (AOSP) en vrij te gebruiken zolang je het maar geen Android noemt, maar wat je zegt, met AOSP alleen kom je nergens. Was het maar zo'n feest! Mijn laptop van (inmiddels) 13 jaar oud is qua software meer up-to-date dan mijn smartphone van 4 jaar.
En waar staat AOSP dan voor? Juist Android Open Source Project.
Het verschil is wel/geen google api. Dus in het kort, wel/geen playstore.
Dat is vrij kort door de bocht. GMS is niet een voorwaarde om het OS te draaien, wel vrij beperkend voor wie dat wel verwacht. De pijn zit h'm echt in de drivers. Een SoC die keihard op een bepaalde kernel vereist en een leverancier die niet eens denkt aan meerjarige ondersteuning... nee, vrij kansloos.
Dus in het kort, wel/geen playstore.
Dit is wat te makkelijk gedacht, Google heeft in de afgelopen jaren enorm veel functionaliteiten uit AOSP gesloopt om dan een alternatief in GSF/GPS op te tuigen. De Android API is er niet leuker op geworden als je op Android zonder Google wilt ontwikkelen. Ook pusht Google standaarden die inherent verweven zijn met hun eigen infrastructuur zoals betaalverkeer en attestation.
Probleem zit hem vooral in drivers van derde, Linux is er op gemaakt dat drivers het liefste onderdeel zijn van het Linux kernel. Dit is voor veel onderdelen op mobiel niet het geval, hierbij worden drivers voor specifieke kernel versies geleverd, wat kernel updates lastig maakt.

Op desktop en server is bijna alles wel onderdeel van het kernel, met Nvidia als belangrijkste noemenswaardige uitzondering, verschil is hier dat Nvidia zorgt dat de drivers op alle nieuwe kernel versies een driver is. Dit gebeurt op Android minder.

Apple heeft dan weer veel meer de regie in handen, en heeft geen last van drivers van derde.

In het geval van de Google Pixels probeert Google zo veel mogelijk onderdeel te maken van Linux zelf, met open-source drivers, waardoor dit probleem niet ontstaat.

[Reactie gewijzigd door qlum op 24 juli 2024 09:07]

Probleem zit hem vooral in drivers van derde, Linux is er op gemaakt dat drivers het liefste onderdeel zijn van het Linux kernel.
Drivers hebben geen voorkeur hoor ;)
De Linux ontwikkelaars hebben alleen besloten nooit te beloven dat een specifieke interne API 'heilig' is waardoor ook grote 'refactoring' acties kunnen worden uitgevoerd omdat gelijk alle drivers mee aangepast kunnen worden. Dat lukt niet op het moment dat je een binair compatible API aanbiedt zoals Microsoft. Als er dan een meer efficiënte of secure manier gevonden wordt om drivers aan te spreken is het pech en zit je aan de oude manier vast.
Op desktop en server is bijna alles wel onderdeel van het kernel, met Nvidia als belangrijkste noemenswaardige uitzondering, verschil is hier dat Nvidia zorgt dat de drivers op alle nieuwe kernel versies een driver is. Dit gebeurt op Android minder.
nVidia levert tegenwoordig een 'user space' driver die niet afhankelijk is van kernel versies. Het kernel deel is gewoon onderdeel van Linux.
In het geval van de Google Pixels probeert Google zo veel mogelijk onderdeel te maken van Linux zelf, met open-source drivers, waardoor dit probleem niet ontstaat.
Zo veel mogelijk onderdeel van Linux zelf? Waarom moet je dan 400Mb binary rommel downloaden?
https://developers.google.com/android/drivers
Android draait bovenop de Linux kernel, bij een Android update kan deze ongewijzigd blijven. Zie deze diagram:
https://nl.m.wikipedia.or...ile%3ADiagram_android.png
Een linux kernel upgrade in een android versie is zeldzaam: Dat de linux kernel versie wel wordt ge-upgrade naar een nieuwe versei maar de daar omheen gebakken android versie geen updgrade krijgt maar dat het daar als een update wordt gezien.

In de regel is een nieuwe linux kernel in android een goede reden om de android omgeving ook als upgrade te behandelen.

[wappie mode aan] Misschien is er wel een relatie met nieuws: Google is voor 1,67 miljard dollar aangeklaagd wegens 'patentbreuk' T... . Dat Google de linux upgrade nodig heeft maar android niet wil upgraden zodat andere leveranciers deze update/upgrade ook meenemen.
Het gaat hierbij vaak om minieme upgrades of backports van patches.
Linux hanteert het X.Y.Z versieschema waarbij alleen de Z wordt verhoogd in het eerste geval.

Google wilt dus major versies (X en/of Y) gaan bijwerken waarbij er mogelijk features bij komen in plaats van (security) bugfixes.
Linux gebruikt niet echt semantic versioning. Linux 3, 4, 5, 6 bestaan alleen omdat Linus van 2.6 af wilde, anders zaten ze nu op 2.6.156 bij wijze van spreken.

Elke nieuwe versie (dux x.y.0) zitten vele grote en kleine wijzigingen in. Maar ook de grote wijzigingen maken het geen "groot verschillende/afwijkende versie". Daarom dat heel lang ook aan 2.6.y.z is vastgehouden. Totdat Linus vond dat het nummer te hoog werd, en toen heeft die 3.0.0 uitgegeven, wat dus 3.y.z werd. En later vond die 4.0(.0) wel passende.

Maar die nummertjes hebben niks te maken met hoe groot de wijzigingen zijn.
Dit i.t.t. vele, voornamelijk software libraries, die gebruik maken van "semantic versioning" waarbij elke x(.0.0) backwards incompatible is terwijl elke x.y(.0) wel bv nieuwe features heeft en bepaalde features deprecate, maar niet backwards incompatible is met ee voorgaande versies. (Waarbij er soms wordt gekozen om bij de volgende x.0.0 alleen de deprecations te verwijderen, maar het wel feature compatible te houden. Bijvoorbeeld het Symfony framework doet dat waarbij 3.4 en 4.0 qua features identiek zijn, en hetzelfde geldt voor 4.4 vs 5.0, 5.4 vs 6.0 en 6.4 vs 7.0
Ik begrijp wat je bedoelt, mijn insteek was meer dat X en Y gereserveerd zijn voor de grote releases waar vaak wel nieuwe features in zitten die weer niet in de Z updates van de vorige versies zitten.

In nieuwere android releases (d.m.v. security patches of zelfs major releases) wordt vaak alleen de Z versie van een update voorzien of worden er patches gebackport naar dezelfde Z versie.
Wat zou voor gebruikers de meerwaarde kunnen zijn van een kernel upgrade? Zijn er echt features die alleen met een kernel upgrade gerealiseerd kunnen worden?
Als een nieuwe kernel betere bescherming biedt tegen bepaalde exploits is dat wel iets wat ik als gebruiker zou willen hebben. De meeste mensen zien dat niet als feature tot hun bankrekening geleegd wordt helaas.
Wat zou voor gebruikers de meerwaarde kunnen zijn van een kernel upgrade? Zijn er echt features die alleen met een kernel upgrade gerealiseerd kunnen worden?
Het gaat niet echt om features maar om:
1. betere veiligheid,
2. betere performance,
3. zuiniger met batterij.

Er komen ook features bij maar als eindgebruiker zul je daar niet veel van merken.
Wat je zou kunnen merken is ondersteuning voor externe hardware, bijvoorbeeld een Bluetooth koptelefoon die met nieuwe drivers ook in "hifi"-mode gebruikt kan worden of geheugenkaartjes die opeens wel leesbaar zijn of een stuk sneller werken.
Zou best kunnen, Android is feitelijk een schil op de Linux kernel
Dit komt dan niet naar andere merken?

Op dit item kan niet meer gereageerd worden.