Wat is het Android-besturingssysteem. Hoe Android werkt

In deze serie artikelen zal ik het hebben over het interne apparaat van Android - over het opstartproces, over de inhoud van het bestandssysteem, over de Binder en de Android Runtime, over welke applicaties worden geïnstalleerd, gestart, uitgevoerd en gebruikt, over het Android Framework en hoe Android veilig is.


Serie artikelen:

  • Hoe Android werkt, deel 1

Weinig feiten

Android is het populairste besturingssysteem en applicatieplatform met meer dan twee miljard actieve gebruikers. Het draait totaal verschillende apparaten, van het "Internet of things" en smartwatches tot tv's, laptops en auto's, maar meestal wordt Android gebruikt op smartphones en tablets.


Android is een gratis en open source-project. Het grootste deel van de broncode (die te vinden is op) wordt gedistribueerd onder de gratis Apache 2.0-licentie.


Android Inc. werd opgericht in 2003 en in 2005 overgenomen door Google. De openbare bètaversie van Android werd uitgebracht in 2007 en de eerste stabiele versie in 2008, sindsdien zijn er ongeveer één keer per jaar grote releases uitgebracht. De nieuwste stabiele versie van Android op het moment van schrijven is 7.1.2 Nougat.


Android is Linux

Er was veel controverse over deze formulering, dus ik zal meteen uitleggen wat ik precies bedoel met deze zin: Android is gebaseerd op de Linux-kernel, maar verschilt aanzienlijk van de meeste andere Linux-systemen.


Het oorspronkelijke Android-ontwikkelteam bestond uit Robert Love, een van de beroemdste Linux-kernelontwikkelaars, en Google blijft vandaag een van de meest actieve bijdragers aan de kernel, dus het is geen verrassing dat Android bovenop Linux is gebouwd.


Net als bij andere Linux-systemen biedt de Linux-kernel low-level zaken zoals geheugenbeheer, gegevensbescherming, multiprocessing en multithreading-ondersteuning. Maar - op een paar uitzonderingen na - zul je geen andere bekende componenten van GNU / Linux-systemen in Android vinden: er is niets van het GNU-project, X.Org wordt niet gebruikt, zelfs niet systemd. Al deze componenten zijn vervangen door tegenhangers die beter geschikt zijn voor beperkt geheugen, lage processorsnelheden en minimaal stroomverbruik, waardoor Android meer op een embedded Linux-systeem lijkt dan GNU / Linux.


Een andere reden waarom Android geen GNU-software gebruikt, is het bekende geen GPL in userspace-beleid:


We krijgen soms de vraag waarom Apache Software License 2.0 de voorkeurslicentie voor Android is. Voor userspace-software (dat wil zeggen niet-kernelsoftware) geven we in feite de voorkeur aan ASL 2.0 (en vergelijkbare licenties zoals BSD, MIT, enz.) boven andere licenties zoals LGPL.

Android gaat over vrijheid en keuze. Het doel van Android is het bevorderen van openheid in de mobiele wereld, en we geloven niet dat het mogelijk is om alle toepassingen te voorspellen of te dicteren waarvoor mensen onze software willen gebruiken. Dus hoewel we iedereen aanmoedigen om apparaten te maken die open en aanpasbaar zijn, geloven we niet dat het aan ons is om ze te dwingen dit te doen. Het gebruik van LGPL-bibliotheken zou hen vaak daartoe dwingen.

De zeer Linux-kernel ook in Android Klein aangepast: er zijn verschillende kleine componenten toegevoegd, waaronder ashmem (anoniem gedeeld geheugen), Binder-stuurprogramma (onderdeel van het grote en belangrijke Binder-framework, dat ik hieronder zal bespreken), wakelocks (hibernationbeheer) en een low memory killer. Het waren oorspronkelijk patches voor de kernel, maar hun code werd snel weer toegevoegd aan de upstream-kernel. Je zult ze echter niet vinden in "gewone Linux": de meeste andere distributies schakelen deze componenten uit tijdens het bouwen.


Android gebruikt de GNU C-bibliotheek (glibc) niet als libc (de standaard C-bibliotheek), maar zijn eigen minimalistische implementatie genaamd, geoptimaliseerd voor embedded systemen - het is veel sneller, kleiner en minder geheugenintensief dan glibc, dat overgroeid is met veel lagen van compatibiliteit.


Android heeft een commandoregel-shell en veel standaard Unix-achtige commando-/programmasystemen. In embedded systemen wordt dit meestal gedaan met behulp van het Busybox-pakket, dat de functionaliteit van veel opdrachten in een enkel uitvoerbaar bestand implementeert; Android gebruikt zijn tegenhanger Toybox. Net als bij "gewone" Linux-distributies (en in tegenstelling tot embedded systemen), is de belangrijkste manier om met het systeem te communiceren de grafische interface, niet de opdrachtregel. Het is echter heel gemakkelijk om naar de opdrachtregel te "gaan" - start gewoon de terminal-emulatortoepassing. Het is meestal niet standaard geïnstalleerd, maar het is eenvoudig te downloaden van bijvoorbeeld de Play Store (Terminal Emulator voor Android, Material Terminal, Termux). Veel "geavanceerde" Android-distributies - zoals LineageOS (voorheen CyanogenMod) - worden geleverd met een vooraf geïnstalleerde terminalemulator.



De tweede optie is om vanaf een computer verbinding te maken met een Android-apparaat via de Android Debug Bridge (adb). Dit lijkt erg op verbinding maken via SSH:


[e-mail beveiligd]$ adb shell android $ uname Linux

Andere bekende componenten in Android zijn de FreeType-bibliotheek (voor het weergeven van tekst), de OpenGL ES, EGL en Vulkan grafische API's en de lichtgewicht SQLite-database-engine.


Bovendien werd voorheen de WebKit-browserengine gebruikt om WebView te implementeren, maar sinds versie 7.0 wordt in plaats daarvan de geïnstalleerde Chrome-applicatie gebruikt (of een andere; de ​​lijst met applicaties die als WebView-provider mogen optreden, wordt geconfigureerd tijdens het compileren). Intern gebruikt Chrome ook de op WebKit gebaseerde Blink-engine, maar in tegenstelling tot de systeembibliotheek wordt Chrome bijgewerkt via de Play Store, zodat alle toepassingen die WebView gebruiken automatisch de nieuwste verbeteringen en kwetsbaarheden ontvangen.


Het draait allemaal om apps

Zoals je gemakkelijk kunt zien, is het gebruik van Android fundamenteel anders dan het gebruik van "gewone Linux" - je hoeft geen applicaties te openen en te sluiten, je schakelt er gewoon tussen, alsof alle applicaties altijd actief zijn. Een van de unieke kenmerken van Android is inderdaad dat applicaties niet rechtstreeks het proces bepalen waarin ze worden gelanceerd. Laten we hier meer in detail over praten.


De basiseenheid in Unix-achtige systemen is een proces. En systeemservices op laag niveau, en individuele commando's in de shell, en grafische applicaties zijn processen. In de meeste gevallen is een proces een zwarte doos voor de rest van het systeem - andere componenten in het systeem weten niet of geven om de staat ervan. Het proces begint met een aanroep van de hoofdfunctie () (eigenlijk _start), en implementeert vervolgens een deel van zijn eigen logica, waarbij het in wisselwerking staat met de rest van het systeem via systeemaanroepen en eenvoudige interprocescommunicatie (IPC).


Aangezien Android ook Unix-achtig is, geldt dit ook allemaal, maar terwijl de lage delen - op Unix-niveau - werken op het concept van een proces, op een hoger niveau - het Android Framework-niveau - is de basiseenheid bijlage... Een applicatie is geen black box: het bestaat uit losse componenten die goed bekend zijn bij de rest van het systeem.


Android-apps hebben geen hoofdfunctie () en geen enkel toegangspunt. Over het algemeen abstraheert Android het concept zoveel mogelijk de applicatie is actief van zowel de gebruiker als de ontwikkelaar. Natuurlijk moet het aanvraagproces worden gestart en gestopt, maar Android doet dit automatisch (ik zal hier meer over vertellen in toekomstige artikelen). De ontwikkelaar wordt aangemoedigd om verschillende afzonderlijke componenten te implementeren, die elk hun eigen levenscyclus hebben.


In Android hebben we echter expliciet besloten dat we geen hoofdfunctie () zouden hebben, omdat we het platform meer controle moesten geven over hoe een app draait. In het bijzonder wilden we een systeem bouwen waarbij de gebruiker nooit hoefde na te denken over het starten en stoppen van apps, maar het systeem regelde dit voor hen ... dus het systeem moest wat meer informatie hebben over wat er binnenin gebeurt van elke app en in staat zijn om apps op verschillende goed gedefinieerde manieren te starten wanneer dat nodig is, zelfs als deze momenteel niet actief is.

Om zo'n systeem te implementeren, moeten applicaties met elkaar en met systeemdiensten kunnen communiceren - met andere woorden, er is een zeer geavanceerd en snel IPC-mechanisme nodig.


Dit mechanisme is Binder.

bindmiddel

Binder is een platform voor snelle, gemakkelijke en objectgeoriënteerde communicatie tussen processen.


De ontwikkeling van Binder begon bij Be Inc. (voor BeOS), daarna werd het geport naar Linux en open source. De belangrijkste ontwikkelaar van Binder, Dianne Hackborn, was en blijft een van de belangrijkste ontwikkelaars van Android. Tijdens de ontwikkeling is Android Binder volledig herschreven.


Binder draait niet bovenop System V IPC (dat zelfs niet wordt ondersteund in bionic), maar gebruikt zijn eigen kleine kernelmodule, waarmee interactief wordt gewerkt vanuit de gebruikersruimte via systeemaanroepen (voornamelijk ioctl) op het / dev / binder "virtuele apparaat ". Vanuit de gebruikersruimte wordt low-level werken met Binder geïmplementeerd, inclusief interactie met / dev / binder en het rangschikken / unmarshallen van gegevens in de bibliotheek.


De low-level delen van Binder werken in termen van objecten die tussen processen kunnen worden doorgegeven. Dit maakt gebruik van referentietelling om ongebruikte gedeelde bronnen automatisch vrij te geven, en een link-to-death-melding om bronnen binnen een proces vrij te maken.


De onderdelen op hoog niveau van Binder werken in termen van interfaces, services en proxy-objecten. De beschrijving van de interface die door het programma aan andere programma's wordt geleverd, is geschreven in een speciale taal AIDL (Android Interface Definition Language), die erg lijkt op de declaratie van interfaces in Java. Op basis van deze beschrijving wordt automatisch een echte Java-interface gegenereerd, die vervolgens door zowel clients als de service zelf kan worden gebruikt. Daarnaast worden er automatisch twee speciale klassen gegenereerd uit het .aidl-bestand: Proxy (voor gebruik vanaf de clientzijde) en Stub (vanaf de servicezijde) die deze interface implementeren.


Voor Java-code in het clientproces ziet het proxy-object eruit als een gewoon Java-object dat onze interface implementeert, en deze code kan eenvoudig zijn methoden aanroepen. In dit geval serialiseert de gegenereerde proxy-objectimplementatie automatisch de doorgegeven argumenten, communiceert met het serviceproces via libbinder, deserialiseert het teruggestuurde oproepresultaat en retourneert het vanuit de Java-methode.

Hallo vrienden, ik begin het gedeelte met betrekking tot smartphones te ontwikkelen, nu is het volledig functioneel. Nu op de site vind je een heleboel interessante artikelen over smartphones op basis van Android. Ik zal zo gedetailleerd mogelijk opbouwen om gebruikers over nieuwe smartphones over te brengen, dat wil zeggen dat er veel nieuws zal zijn. De nadruk zal natuurlijk liggen op het maken van materialen voor het werken met het besturingssysteem. Bij wijze van spreken een instructie van A tot Z. Voor nu zal ik beginnen met de eenvoudigste, en een artikel schrijven over wat het is en wat de voor- en nadelen zijn. Nu gaan we naar het punt.

Wat is Android OS

Android Is een besturingssysteem gebaseerd op de Linux-kernel, die in 2005 door Google werd overgenomen. In 2008 werd de eerste versie van het besturingssysteem uitgebracht. Dit besturingssysteem is ontworpen voor smartphones, tablets en vele andere apparaten. Op dit moment wordt het ingebouwd in horloges, verschillende navigators, consoles en spelers.

Tegenwoordig worden er enorm veel smartphones en andere apparaten met dit systeem gemaakt. Ze is enorm populair geworden, dus ze heeft bijna geen concurrenten, behalve misschien iOS.

Ik denk dat het niet de moeite waard is om de bekende merken van de huidige telefoons op te sommen die met grote sprongen groeien. Ze gebruiken dus allemaal Android. Als we het hebben over een schoon systeem, dan kunnen we zeggen dat het heel wendbaar en productief is. Veel fabrikanten, die dit besturingssysteem als basis nemen, maken hun eigen shell met extra functies, mogelijkheden en ontwerp. Iemand doet het beter, en het systeem vliegt, maar op sommige apparaten is het niet erg goed. Met behulp van het besturingssysteem heb je de mogelijkheid om functies zoals Wi-Fi, Bluetooth, NFC, GPS te bedienen, Wi-Fi-hotspots te maken, dat wil zeggen, een modem van je telefoon te maken en nog veel meer. Moderne smartphones bevatten vingerafdruk- en irisscansensoren, die de bescherming aanzienlijk kunnen verbeteren - die allemaal kunnen worden bediend met Android. Natuurlijk probeert Apple zijn iOS bij te houden.

Voors en tegens

Laten we eens kijken naar de voor- en nadelen:

  • Omdat het is ontwikkeld op de open source Linux-kernel, is het mobiele systeem ook open source, waardoor je kunt creëren wat je hartje begeert voor dit systeem.
  • Een schoon besturingssysteem is sterk geoptimaliseerd en stelt niet veel eisen aan apparaten. Het kan werken op de zwakste telefoon die vandaag beschikbaar is, hoewel dit al een zeldzaamheid is.
  • De mogelijkheid om het systeem zelf aan te passen.
  • Een enorm aantal add-ons en applicaties die de mogelijkheden van het besturingssysteem aanzienlijk uitbreiden.
  • Snelheid van werken (niet in alle gevallen).
  • Het systeem is beschikbaar voor de volgende hardwareplatforms: ARM, x86, MIPS.

Dit zijn de belangrijkste positieve eigenschappen die ik voor mezelf opmerkte. Misschien is er iets anders. Naast de pluspunten zijn er ook minpuntjes:

  • Het open source besturingssysteem geeft de fabrikanten van smartphones en tablets een voordeel om shells te maken die niet altijd zo geoptimaliseerd en efficiënt mogelijk zijn. Bovendien kan de shell-update veel later aankomen dan de nieuwste versie van het officiële systeem wordt uitgebracht.
  • Als het systeem slecht is geoptimaliseerd, bestaat de kans op een hoog stroomverbruik. En atomiciteit wordt nu zeer gewaardeerd. Maar het hangt eerder af van de fabrikanten van het apparaat.
  • Vanwege de populariteit schrijven hackers en andere slechte mensen virussen voor het besturingssysteem en zoeken ze naar kwetsbaarheden. Natuurlijk heeft dit besturingssysteem enige bescherming, niet zoals Windows. Het nadeel is dus niet significant.
  • Er zijn gevallen geweest waarin over het algemeen enkele miljoenen dollars werden gestolen van gebruikers over de hele wereld. Dit gebeurde door sms te versturen zonder medeweten van de gebruiker.


Naast het schone systeem van Google zijn er een aantal enthousiastelingen bezig met het ontwikkelen van hun firmware die hun eigen functionaliteit en mogelijkheden hebben. Je zult een heel ander ontwerp zien, het komt voor dat de firmware van een andere fabrikant beter zal werken dan puur Android.

Op dit moment zijn er bedrijven die firmware maken voor smartphones en andere apparaten: CyanogenMod, dat nu LineageOS, AOKP, MIUI, Paranoid Android, AOSP, Replicant en anderen is.

Enthousiaste ontwikkelaars proberen firmwareversies op tijd uit te brengen, samen met de release van een schoon OS. Maar soms is het niet nodig om de telefoon te flashen, aangezien de fabrikanten hiervoor kunnen zorgen.

Apps en Play-markt

Iedereen weet dat elke dag in de Google app store - Speel markt honderden programma's en games zijn aangelegd. Je kunt in het algemeen vinden wat je hartje begeert, dit zijn verschillende audio- en videospelers, bureaubladachtergronden, bestandsbeheerders, waarvan er waarschijnlijk duizenden zijn, een heleboel software om met mensen te communiceren - sociale netwerken, instant messengers en andere. Je kunt daar ook films, boeken en muziek downloaden. Natuurlijk is de inhoud daar zowel betaald als gratis.

Een beetje theorie. De Android-applicatiecode is geschreven voor de zogenaamde virtuele Dalvic-machine. Applicaties zijn geformatteerd .apk, dit is het enige formaat. Tot voor kort konden de applicaties zelf in Java worden geschreven en sinds 2009 heeft Google een speciaal pakket aan mogelijkheden toegevoegd waarmee je software in C en C++ kunt maken. Ook zijn er veel ontwikkelomgevingen zoals Embarcadero RAD Studio.


Wat betreft de app store zelf, die hebben we in 2008 geopend. De afspraak was dat de softwareontwikkelaars 30% van de winst aan Google afstaan. Volgens de normen van 2017 zijn er ongeveer 2,8 miljoen applicaties in de Play Market-database.

Natuurlijk waren er gewetenloze gebruikers die applicaties met kwaadaardige code plaatsten, wat rond 2011 voor een schandaal zorgde, maar de problemen werden snel de kop ingedrukt en de kwetsbaarheden werden gedicht.

Wie zou niet zeggen wat, maar de directe specifieke Play Market is de App Store - een applicatiewinkel voor iPhone, iPad, iPod en anderen. Ze hebben minder software dan de Play Market. Het inkomen van de ontwikkelaars is hetzelfde als dat van Google. U maakt een betaalde applicatie waarvoor u 30% van de winst geeft.

Wat zit er in Android

En nu, bijna het voorlaatste punt, waarin ik het wil hebben over de interne componenten van het systeem. Degenen die dit systeem gebruiken, zouden er op zijn minst een beetje van moeten begrijpen. En laten we het vergelijken met Windows.

Linux verschilt dus van Windows doordat de tweede informatie wordt ontleed in disks en daddies, natuurlijk ook in Linux, maar dit wordt op verschillende manieren weergegeven. In Linux-systemen een boomachtige structuur.

Ook in registers zijn er verschillen. Als u meerdere mappen met dezelfde namen maakt, zal er op Windows geen verschil zijn, maar op Linux zullen het totaal verschillende mappen zijn. Dit geldt ook voor bestanden. Deze namen zullen in Linux anders zijn - Papka, papka, PAPKA.

Altijd wordt de cache voor het systeem en sommige applicaties opgeslagen in een speciale sectie - cache.

Iedereen heeft toch zeker de map in bestandsbeheer gezien gegevens... Deze map heeft andere mappen met betrekking tot installatiebestanden en mappen van applicaties.

Configuratiebestanden en softwarebibliotheken zijn te vinden in de map app-lib.

Om applicaties te laten werken, zijn ze in Java geschreven voor een speciale virtuele machine Dalvik. Daarom kunt u een map tegenkomen dalvic-cache... Soms moet het worden schoongemaakt, bijvoorbeeld voordat de telefoon gaat knipperen. Dit gebeurt met behulp van root-rechten of van, maar ik zal hier zeker over vertellen in toekomstige artikelen.

Je zult de map zeker zien in de bestandsbeheerder systeem... Uit de naam is duidelijk dat systeeminstellingen daar worden opgeslagen, waardoor uw systeem kan worden beschadigd.

In de catalogus enz vindt u bestanden waarmee het systeem normaal kan opstarten.

Dit zijn niet alle mappen die zich in het Android-systeem bevinden. Er zijn een paar extra artikelen nodig om alles uit te zoeken.

Extra functies

Veel mensen weten dat elke wijziging van het systeem een ​​sleutelnaam heeft, meestal een soort toetje. Bijvoorbeeld Cupcake, wat cupcake betekent. Een van de populaire versies 4.1-4.3 heeft de naam Jelly bean(Snoepjes). Maar versie 4.4 is vernoemd naar de beroemde chocoladereep Kit Kat... De volgende wijziging 5.0 en 5.1 heeft de naam Lolly- lolly. De zesde optie is Heemst en tot slot ontving de nieuwste versie 7.0-7.1.2 de code Noga.

Er is al heel weinig meer over voor de release van versie 8, of zoals het Android O wordt genoemd. De bètaversie van het besturingssysteem is al op sommige vlaggenschepen geïnstalleerd en werkt stabiel. Het volledige besturingssysteem wordt eind 2017 uitgebracht. En ja, het sleutelwoord is waarschijnlijk - Oreo... Hieronder ziet u een video over de presentatie van de achtste versie.

Nou jongens, ik heb het artikel af, nu weet je wat Android is, waar het wordt gebruikt, zijn chips. In toekomstige artikelen zal ik je bijna alles vertellen over dit besturingssysteem. Nou, ik wens je veel succes!

Elke smartphone bestaat uit veel complexe componenten en je zult er niet altijd over nadenken voordat je een apparaatmodel kiest. Maar toch is het belangrijk om te weten welke hardware je smartphone helpt te functioneren.

In dit artikel zullen we de belangrijkste onderdelen opsplitsen van wat een van de belangrijkste elektronische apparaten op de markt is geworden. Laten we eens kijken waar een smartphone uit bestaat en waar dit of dat onderdeel voor dient. Nu zijn er veel verschillende modellen smartphones, verschillende ontwerpen, met verschillende kenmerken, levensduur van de batterij enzovoort. Maar als u de hardware-vulling van een smartphone begrijpt, zal het kiezen van het juiste model veel eenvoudiger zijn.

1. Weergave

Een van de meest voor de hand liggende onderdelen van een smartphone is het scherm. Alles wat u op het scherm ziet, wordt verwerkt en gecontroleerd door interne componenten. Er zijn nu twee technologieën voor het maken van displays:

  • Liquid crystal schermen, ze zijn gemaakt met behulp van IPS- of TFT-technologie;
  • LED-schermen gemaakt met AMOLED- of Super AMOLED-technologie.

Het liquid crystal display maakt gebruik van achtergrondverlichting om een ​​beeld te produceren. Wit licht gaat door de filters en dankzij de mogelijkheid om de eigenschappen van de kristallen te controleren, zie je verschillende kleuren. Het licht wordt niet gecreëerd door het scherm zelf, het wordt gecreëerd door de lichtbron erachter.

Het LED-scherm werkt anders. Elke pixel die je op het scherm ziet is een aparte LED. Hier creëert het scherm zelf levendige en kleurrijke kleuren. Het voordeel van Super AMOLED ten opzichte van IPS is dat wanneer de pixel uit is, je zwart ziet, het verbruikt de batterij niet. Daarom zijn smartphones met AMOLED efficiënter voor de levensduur van de batterij. Maar AMOLED-schermen zijn duurder dan IPS, dus een smartphone met zo'n display kost aanzienlijk meer.

2. Batterij

Smartphones gebruiken doorgaans lithium-ionbatterijen en kunnen al dan niet verwijderbaar zijn. Dankzij deze technologie hoef je je batterij niet te kalibreren of te testen zoals je doet met op nikkel gebaseerde batterijen. Deze batterijen hebben echter veel eigen problemen.

3. Systeem-op-een-chip (SoC)

SoC of moederbord met processor is het belangrijkste onderdeel van je smartphone. Sommige gebruikers denken misschien dat dit de processor van het apparaat is, maar er is meer aan de hand. De SoC omvat niet alleen de processor, maar ook de GPU, LTE-modem, schermcontroller, draadloze adapters en andere siliconenblokken die de telefoon laten werken.

Er zijn smartphones die SoC's van Qualcomm, MediaTek, Samsung gebruiken, eigen chips van Krirn, Apple, maar ze gebruiken allemaal dezelfde architectuur - ARM. ARM produceert niet alleen processors, maar geeft hun architectuur ook in licentie aan andere bedrijven, zodat iedereen dezelfde technologie kan gebruiken om moderne en krachtige SoC's te creëren.

Verschillende bedrijven brengen hun architectuurlijnen uit die ARM-compatibel zijn en in smartphones kunnen worden gebruikt. Een voorbeeld zijn de chipsets van Apple die worden aangedreven door Cyclone-processors of de Kryo-processors van Qualcomm. SoC zijn de belangrijkste componenten waaruit een smartphone bestaat.

4. Intern en RAM

Geen enkele smartphone kan werken zonder RAM en systeemopslag. De meeste apparaten gebruiken LPDDR3 of LPDDR4 RAM en sommige high-end modellen worden geleverd met LPDDR4X. De combinatie LP staat voor Low Power, de voedingsspanning van deze microschakelingen wordt verlaagd, waardoor ze zuiniger zijn qua energieverbruik.

LPDDR4 is efficiënter dan LPDDR3 en LPDDR4X is efficiënter en zuiniger dan beide. Er is ook een nog meer affectief geheugen - LPDDR5.

Wat de interne opslag betreft, deze gebruikt flash-geheugen van 32 tot 256 GB. De eisen van gebruikers nemen voortdurend toe en de volumes zullen meegroeien. Wanneer je de telefoon aanzet, zul je zien dat de opslagruimte kleiner is dan aangegeven. Er wordt bijvoorbeeld gezegd dat de schijf 64 GB is en 53-55 GB beschikbaar is voor opname. Dit geheugen wordt ingenomen door het besturingssysteem en applicaties.

5. Modems

Omdat smartphones nog steeds telefoons zijn, hebben ze communicatiecomponenten nodig om te kunnen bellen, sms'en en communiceren met internet. Dit is waar modems voor worden gebruikt. Elke SoC-fabrikant heeft zijn eigen merk modems, dit zijn Qualcomm, Samsung, Huawei en anderen.

Elk van de fabrikanten probeert de snelste LTE-chip uit te brengen. Momenteel de snelste 9-LTE-chip, maar het heeft geen zin om deze te nemen als je mobiele netwerk die snelheid niet ondersteunt.

6. Camera

Alle smartphones hebben camera's aan de voorkant en aan de voorkant. Camera's bestaan ​​uit drie hoofdonderdelen:

  • Sensor- detecteert licht;
  • Lens- concentreert het beeld;
  • Beeldprocessor.

Het aantal megapixels van een smartphonecamera is nog steeds een heel belangrijk criterium, maar nu veel minder belangrijk. Nu is de belangrijkste beperkende factor de camerasensor, evenals de gevoeligheid ervan wanneer er licht doorheen gaat.

De sensor kan zich in elke smartphone anders gedragen, dus de foto of video zal een ander contrast, tint, verzadiging hebben in vergelijking met andere smartphones. Omdat smartphones een kleine sensorgrootte hebben, presteren ze vaak slecht bij weinig licht.

7. Sensoren

De meeste moderne smartphones hebben ingebouwde vijf hoofdsensoren waarmee u uw smartphone gemakkelijker kunt gebruiken. Daar zijn ze:

  • Versnellingsmeter- gebruikt door applicaties om de oriëntatie van het apparaat en zijn bewegingen te bepalen. Hiermee kunt u bijvoorbeeld het schudden van smartphones gebruiken om van muziek te wisselen;
  • Gyroscoop- werkt met een versnellingsmeter om de rotaties van uw telefoon te detecteren. Handig voor racegames;
  • Digitaal kompas- helpt bij het vinden van het noorden voor normale oriëntatie op kaarten;
  • Licht sensor- Deze sensor past automatisch de helderheid van het scherm aan op basis van omgevingslicht en helpt de levensduur van de batterij te verlengen.
  • Nabijheids sensor- Als het apparaat tijdens een gesprek dicht bij uw oor komt, vergrendelt deze sensor automatisch het scherm om ongewenste aanrakingen te voorkomen.

Dit waren allemaal de hoofdelementen van een smartphone, in verschillende modellen kunnen er andere sensoren zijn, bijvoorbeeld een hartslagsensor, druk en temperatuur, maar deze komen veel minder vaak voor.

conclusies

We onderzochten waar een smartphone uit bestaat. Nu u meer informatie heeft over de complexe componenten waaruit elke smartphone bestaat, kunt u uw toekomstige aankoop kiezen door de kenmerken van de verschillende componenten te vergelijken. Dit zal u helpen het beste apparaat te kiezen dat bij uw behoeften past.

Je bent hier waarschijnlijk omdat je dat al hebt gedaan Android-apparaat of ben net begonnen te denken over kopen. De nieuwe hebben veel hulpprogramma's met uitgebreide rechten en mogelijkheden en veel "plezier".

In tegenstelling tot de iPhone of iPad (die maar een paar apparaten hebben), zijn er honderden Android-apparaten om uit te kiezen. Dit is slechts één reden waarom ze zo aantrekkelijk en gewild zijn. U vindt zeker wat u nodig heeft - binnen uw budget of afhankelijk van uw andere voorkeuren.

Er zijn veel opties en soorten Android, omdat het technisch gezien een besturingssysteem is voor alle smartphones en tablets. Veel bedrijven maken en produceren apparaten die geschikt zijn voor Android, waaronder Samsung, HTC, LG en andere minder bekende merken. En ze zijn allemaal verschillend, omdat elke fabrikant zijn eigen instellingen en functies in het apparaat introduceert, die op hun beurt dienen als de voor- of nadelen van een bepaald bedrijf bij het kopen van zijn goederen.

Wat maakt elk apparaat uniek?

Android-apparaten verschillen per fabrikant. Bekijk hieronder de twee Android-telefoons. Wat zie je?

Sommige verschillen zijn duidelijk, maar andere zijn minder duidelijk, zoals:

  • De telefoon aan de linkerkant is iets groter
  • Monitoren zijn anders, de knoppen onderaan zijn anders
  • Elk scherm heeft zijn eigen unieke lay-out
  • Sommige pictogrammen zien er anders uit; vergelijk bijvoorbeeld twee oproeppictogrammen

Er zullen altijd verschillen zijn in het toestel zelf, zoals uiterlijk, opslaggeheugen en camerakwaliteit. Er zullen ook softwareverschillen zijn (met andere woorden, functies op het scherm) die van invloed kunnen zijn op hoe u uw Android-apparaat als geheel gebruikt.

Een Android-apparaat kopen

Nu weet je dat elk Android-apparaat uniek is. Als je nog geen Android-apparaat hebt, is het tijd om het apparaat te kopen dat bij je past.

Apparaatselectie

Als u niet zeker weet waar u moet beginnen, kunt u enkele beoordelingen op de sites bekijken. Op basis van de feedback heb je een beter idee van welke apparaten er zijn en hoe goed ze hun functie vervullen. Over het algemeen zijn er 2 belangrijke factoren om op te letten bij het kopen: prijs en functies.

Prijs: Android-apparaten kunnen sterk variëren in prijs. Sommige verkopers (bijvoorbeeld Megafon) bieden bijvoorbeeld bepaalde telefoons aan voor een zeer lage prijs of zelfs gratis (meestal zijn dit oude modellen of niet erg functionele modellen) als je meteen een simkaart koopt voor een bepaalde periode. Valt je keuze op duurdere telefoons, dan fluctueert de prijs van zulke telefoons van naar... Tabletten kosten meestal meer.

Kenmerken A: Android-apparaten zijn er in alle soorten, maten en kleuren. De belangrijkste specificaties zijn onder meer schermgrootte, batterijduur, camerakwaliteit en algehele prestaties. Daarnaast zijn er ook een aantal handige features om over na te denken, zoals handsfree modus of zelfs vingerafdrukherkenning.

Aankoop

Heb je al besloten welk apparaat je wilt? Er zijn 2 manieren om een ​​aankoop te doen - online of bij uw plaatselijke elektronica- en computerwinkel.

Vermijd twijfelachtige promoties of biedingen die niet geloofwaardig klinken. Omdat er een zeer grote vraag is naar Android-apparaten, en in de regel zijn er gewetenloze verkopers en oplichters, vooral op internet, die willen profiteren van uw aandacht en vertrouwen. We raden aan om alleen goederen te kopen bij een bekende en vertrouwde verkoper.

    Bij bepaalde Android-tabletmodellen kunnen enkele van de bovenstaande items ontbreken.

    Alle "android"-tablets worden bestuurd door een van de versies van het mobiele besturingssysteem van Google. Het is echter mogelijk dat oudere versies sommige moderne applicaties niet ondersteunen.

    Alle versies van het meest populaire mobiele besturingssysteem hebben een gemeenschappelijk fundament. We kunnen het Android-besturingssysteem zien als een meerlagige structuur. Computeringenieurs noemen dit de softwarestack. De items bovenaan de stapel vertegenwoordigen wat de gebruiker ziet bij interactie met het besturingssysteem. Onderaan de stapel bevinden zich die delen van het besturingssysteem die rechtstreeks communiceren met de hardware van het apparaat.

    Dus op het laagste niveau bevinden zich de hardwarecomponenten zelf: processors, sensoren, draden en printplaten. De volgende laag is de kernel van het besturingssysteem. De kernel wordt soms ook wel embedded (of propriëtaire) software genoemd. De Engelse definitie van "firmware" is beter bekend. Deze software bewaakt, beheert en wijst hardwarebronnen op het apparaat toe.

    Dit deel van het besturingssysteem "vertaalt" in de taal van hardwarecomponenten die opdrachten die de gebruiker geeft via een handige grafische interface. De kernel voor Android is het open source besturingssysteem Linux 2.6.

    Boven de kern van het besturingssysteem bevinden zich de Android-bibliotheken. Het zijn sets instructies die een apparaat volgt bij het verwerken van verschillende soorten gegevens. Een voorbeeld is de 3D-oriëntatiebibliotheek. Het bevat alle instructies die een Android-apparaat nodig heeft om veranderingen in zijn positie in de ruimte te herkennen en erop te reageren.

    Op hetzelfde niveau van de softwarestack bevinden zich de rootbibliotheken die nodig zijn om applicaties te ondersteunen die in de Java-taal zijn geschreven. Java is een programmeertaal van Sun Microsystems. Meer recent waren telefoons met ondersteuning voor Java-toepassingen heel gewoon. Tegenwoordig worden ze steeds vaker vervangen door smartphones.

    De virtuele Android-machine bevindt zich op hetzelfde niveau van de softwarestack van het besturingssysteem. Dit stukje software houdt zich bezig met het creëren van een virtuele besturingsomgeving, ook wel een virtuele besturingsomgeving genoemd. Een virtuele machine simuleert een fysiek apparaat met een apart besturingssysteem. Google heeft deze laag zo ontworpen dat elke applicatie die op het Android-besturingssysteem draait, als een afzonderlijk proces functioneert. Dus als een van de actieve processen crasht, blijft de rest onaangetast. De virtuele machine fungeert ook als geheugenbeheerder.

    Het volgende niveau is het applicatieraamwerk. Het is de basis voor alle toepassingen van het "android"-apparaat. De applicatie-infrastructuur is de lijm tussen applicaties en de rest van het besturingssysteem.

    Google raadt ontwikkelaars aan om applicaties te maken die interactie hebben met deze laag in het kader van de applicatie-programmeerinterface () die is ontwikkeld door het besturingssysteem van de zoekgigant. Ontwikkelaars hoeven zich alleen vertrouwd te maken met deze API-gerelateerde regels. Ze hoeven niet na te denken over de technische kenmerken van elke "android" -tablet.

    De bovenste laag van de softwarestack bevat de gebruikersinterface en alle applicaties van de "android"-tablet. Het is dit deel van het besturingssysteem dat de gebruiker constant voor zich ziet. Maar achter deze aantrekkelijke en kleurrijke laag zit veel saaie code die alleen interessant is voor specialisten.

    Net als elk ander besturingssysteem en andere hardwarebronnen voor tablets.

    Gebaseerd op materiaal van computer.howstuffworks.com