Utviklere kan tilpasse open source Linux -kjernen til makten operativsystemer på en rekke hardware -plattformer . Dette er hva Google gjorde med sin Android mobil plattform . Det bygges et operativsystem bygget rundt en spesialisert Java virtuell maskin , eller JVM , og basert på Linux-kjernen . På grunn av de arkitektoniske forskjellene mellom desktop CPUer og mobile prosessorer , gjorde Google ikke opprette kernel støtte for flere prosessorkjerner før etter det sluppet Android-plattformen . Android Struktur
Googles Android-plattform er egentlig et Linux-system som består av flere komponenter . Kjernen i systemet er en Linux-kjerne , oppå som er en rekke program biblioteker og en spesialisert versjon av JVM runtime-miljø. Hver Android app er Java -basert og kjører i sitt eget miljø. Dette er av sikkerhetsmessige årsaker , og bidrar til å organisere systemets totale funksjon . Runtime miljøet arbeider med kjernen for å regulere prosessor ledelse.
Linux Kernel
Linux -kjernen er samlingen av firmware som lar et operativsystem bruker maskinvaren som det går . Systemet sender signaler til kjernen , som kan oversettes signalene og sender dem videre til nødvendig maskinvare komponent. Den utfører da den samme prosessen med å oversette signaler fra hardware komponenter til høyere nivå programvarekomponenter. Hvis kjernen ikke har firmware for en bestemt maskinvare komponent, for eksempel CPU , da operativsystemet ikke er i stand til å bruke den .
Multicore CPUer
< p > Når Google først utgitt på Android-plattformen , det kan bare bruke CPUer med en enkelt behandling kjerne. Starter med 3.0 -versjonen av plattformen , introduserte Google støtte for prosessorer med flere kjerner . Mens Linux-kjernen har støttet flere prosessorkjerner på stasjonære PC for år , skiller arkitektur CPUer på mobile enheter betydelig fra desktop kolleger . Det tok lengre tid å utvikle den nødvendige maskinvaren støtte for Android å bruke sine mer avanserte muligheter .
Ytelse fordeler
Enheter med flerkjerne CPU kjøre mer effektivt. En enkelt prosessorkjerne kan bare håndtere beregningene for en enkelt prosess av gangen . Når enheter med en enkelt kjerne prosessor kjøre flere programmer samtidig , er det fordi CPU er å planlegge prosessor tid for hver prosess for å gi illusjon av ekte multitasking . Med flere kjerner , kan enheten mer effektivt håndtere flere prosessor - intensive applikasjoner .