Kako izgleda operacijski sistem iOS? Pregled operacijskega sistema iOS11

iOS je operacijski sistem (OS) za mobilne naprave, ki ga je Apple izdal leta 2007. Za razliko od konkurenčnih sistemov je primeren le za različne Applove mobilne naprave.

Glavni konkurent je Googlov OS. Ampak v Zadnje čase ti sistemi si postajajo vse bolj podobni in drug od drugega prevzemajo pozitivne vidike. Android, gledano na iOS, postaja vse bližje uporabnikom: to vključuje tako preprostost in enostavnost uporabe "izven škatle" kot estetiko vmesnika. iOS pa povečuje funkcionalnost in širi možnosti individualnega prilagajanja.

Prednosti sistema iOS

Kakovost aplikacije (AppStore)

AppStore je spletna trgovina z aplikacijami za iOS, ki jo je leta 2008 ustvaril Apple.

Zaradi dejstva, da v Trgovina z aplikacijami strog filter za dovoljenje za objavo aplikacij, na naprave je mogoče namestiti samo resnično kakovostne aplikacije. Večina aplikacij je plačanih, ker razvijalci vložijo veliko truda v razvoj in testiranje in ne želijo izgubiti strank in padca na lestvici z izdajo surovega izdelka.

Enostavna posodobitev

Prehod iz izdaje v izdajo OS se izvede z enim klikom in je na voljo takoj po izdaji in objavi nove posodobitve. V tem primeru bo naprava sama obvestila uporabnika o potrebi po posodobitvi. Za razliko od konkurenčnih platform iOS podpira naprave, izdane pred več kot enim letom

ne sili svojih strank v nakup novega, zmogljivejšega pripomočka po izdaji nove programske opreme.

Posodobitve aplikacij potekajo tudi z enim klikom, v nastavitvah pa lahko nastavite samodejni prenos in namestitev posodobitev, po kateri ste lahko prepričani, da bodo vaši programi vedno posodobljeni.

Najboljše aplikacije so najprej objavljene v AppStore

Mnogi razvijalci raje najprej izdajo aplikacijo na iPhone in šele čez nekaj časa napišejo analog za Android in Windows Phone. To je posledica visokokakovostnega razvojnega okolja in priročnih orodij za ustvarjanje novih aplikacij.

Enotni ekosistem

Mobilni ekosistem naprave Apple(tj. integracija oz. interakcija različnih pripomočkov) je najbolj razvita na trgu. Njihova optimizacija je neverjetna, saj podjetje samo proizvaja strojno in programsko opremo. To pomeni, da je operacijski sistem maksimalno optimiziran za določeno napravo. Nabor naprav, ki so med seboj povezane z računom Apple ID, vam omogoča medsebojno sinhronizacijo podatkov, zaradi česar je vaše delo lažje in produktivnejše.

Zdaj vam ni treba razmišljati o tem, kako poslati informacije iz enega pripomočka v drugega, samo nadaljujete z delom. Ker imajo vse vaše naprave dostop do vaših dokumentov.

Priročen vmesnik, enostaven za učenje

Ko vzamete v roke katero koli napravo Apple, jo boste že vedeli uporabljati. To je bilo mogoče zaradi intuitivnega vmesnika, ki je bil ustvarjen tako, da ga lahko zlahka obvlada vsak. Na domačem zaslonu so vse vgrajene aplikacije, tako da potrebujete le delček sekunde, da pogledate na zaslon in izveste vreme, novice, čas in še veliko več.

Zanesljivost

Glede na študijo Strategy Analytics je oprema Apple več kot 2-krat večja zanesljivost v primerjavi z napravami konkurentov.

Varnost

Dosegli zaradi zaprtosti ploščadi, zaradi katere

lahko pozabite na tehnološke pojme, kot so »računalniški virusi«.

Toda zaščita ni zagotovljena samo pred virtualnimi napadi; funkcija Find My iPhone in optični bralnik prstnih odtisov (Touch ID) bosta pomagala zaščititi vašo napravo pred tatovi.

In to ni celoten seznam prednosti sistema. Seznam pomanjkljivosti je precej skromnejši.

Slabosti iOS-a

Ni univerzalni sistem

Da, plačati morate za varnost: sistema ne boste mogli namestiti na napravo drugega proizvajalca, ne boste mogli dodati nova funkcija ali razširiti zmogljivosti, ne da bi kršili uporabniško pogodbo.

Omejitev prenosa datotek prek Bluetooth

Z vgrajenim Bluetoothom iPhone ne more prenesti datoteke v napravo drugega proizvajalca, toda to pomanjkljivost je enostavno rešiti s pošiljanjem datoteke v oblak.

Zaprt datotečni sistem

Proizvajalec je poskrbel za organizacijo datotek v napravi, vendar to ni všeč vsem uporabnikom.

Plačljive aplikacije, glasba in filmi

Mnogi ljudje menijo, da je to pomanjkljivost, toda ali ne bi morali razvijalci in avtorji plačati za svoje delo?

Tako se sistem ponaša s priročnostjo, stabilnostjo, varnostjo in enostavnostjo uporabe, kar je za marsikaterega uporabnika povsem dovolj.

iOS 7 proti Windows Phone 8

Da, da, naša stran je namenjena operacijskemu sistemu Android. Vendar to ne pomeni, da bomo obšli druge operacijske sisteme in naprave, zgrajene na njih. Danes vam bomo povedali o iOS-u, enem najboljših in najbolj priljubljenih operacijskih sistemov.

iOS je operacijski sistem za tablične računalnike, pametne telefone in mobilne predvajalnike podjetja Apple, ki je nameščen samo na napravah Apple, vključno z iPhone, iPod Touch in iPad. iOS-a ni mogoče namestiti na druge naprave, tako kot OS Android ni mogoče namestiti na isti iPhone.

Zgodovina ustvarjanja

Domneva se, da se je izvršni direktor Appla Steve Jobs odločil uvesti računalniški zaslon na dotik z več dotiki, ki bi ga lahko uporabljali brez tipkovnice ali miške. Kasneje, ko je bil prototip že razvit, je Jobs prišel na drugo idejo – implementirati to tehnologijo na mobilni telefon. Naj spomnimo, da takrat o Applovih telefonih sploh ni bilo govora. Bilo je leto 2005.

Podjetje je sodelovalo pri ustvarjanju mobilnega telefona Motorola ROKR, ki je bil prikazan istega leta 2005. Telefon je bil med drugim postavljen kot predvajalnik, katerega vmesnik je spominjal na iPod. Poleg tega je naprava komunicirala z iTunes. Žal naprava ni dosegla velikega tržnega uspeha.

Tudi leta 2005 se je Jobs odločil za sodelovanje z mobilni operater Cingular. Rekel je, da je Apple pripravljen ustvariti svoj telefon. Podjetji sta tesno sodelovali, vendar so bili podatki o nastanku telefona skrbno skriti.

In že leta 2007, 9. januarja, je bila prva generacija iPhone predstavljena na Macworld Conference & Expo v San Franciscu. Seveda so se že prej pojavljale govorice, da bo Apple izdelal telefon, a temu niso verjeli niti najbolj predani oboževalci. Pametni telefon je bil kljub temu predstavljen in je bil prava senzacija – takrat še noben proizvajalec ni imel česa podobnega. Revija Time je iPhone razglasila za izum leta.

Sama naprava je že temeljila na operacijskem sistemu iOS. Res je, da podjetje sprva ni ponudilo ločenega imena za svoj mobilni OS, zato je slogan zvenel takole: "iPhone deluje na OS X."

Uporabniški vmesnik iOS temelji na konceptu neposredne interakcije z uporabo večkratnih dotikov. Kontrolniki vmesnika so sestavljeni iz gumbov, stikal in drsnikov. Seveda so vsi gumbi občutljivi na dotik, razen gumba Domov, tipke za vklop, gumba za nadzor glasnosti in tipke za način vibriranja.

Omeniti velja, da se je iOS pojavil prej kot Android OS. Kljub temu dejstvu je od leta 2015 delež Androida med pametnimi telefoni približno 80 %, iOS pa približno 14 %. To je tudi posledica dejstva, da večina podjetij, ki proizvajajo mobilne naprave, na njih namesti Android. Če bi vam Apple dovolil, da storite enako, je treba še videti, kdo bi bil pred nami.

Fotografije za iOS:

O App Store

App Store je trgovina z aplikacijami za naprave iPhone, iPad in iPod Touch. Aplikacije je mogoče brezplačno prenesti ali kupiti za plačilo. Od leta 2015 trgovina ponuja več kot 1,5 milijona aplikacij za iPhone in iPod Touch ter približno 730 tisoč aplikacij za tablice iPad. Skupno število prenosov za isto leto presega 100 milijard!

Večina aplikacij stane med 0,99 in 9,99 USD.

Zanimivo je, da je App Store izšel veliko kasneje, kot je bil predstavljen prvi iPhone - to se je zgodilo julija 2008, torej v trenutku, ko je bil predstavljen iPhone 3g.

iOS je operacijski sistem družbe Apple, ki ga namešča na mobilne telefone iPhone 3-5, tablice iPad in tudi na predvajalnik glasbe iPod.
Zakaj mi je všeč ta operacijski sistem:

  1. Hitro delovanje, sistemski vmesnik se praktično ne upočasni
  2. Sistem se zažene precej hitro
  3. Vmesnik je precej barvit in jasen
  4. Sistem za odstranjevanje programov je priročen in omogoča odstranjevanje programov v 2 klikih
  5. Lahko kupite kateri koli program. Katalog programov v AppStore je ogromen. Obstaja veliko visokokakovostnih programov in tečajev angleščine, za katere vam ni vseeno plačati denar
  6. Precej dobre posodobitve. Seveda v vsakem nova različica obstajajo določene napake, vendar z vsako novo različico postane sistem bolj priročen in funkcionalen

ipa datoteka— programska datoteka za namestitev v iOS. Sistem ima vgrajen brskalnik Safari. Nova različica je izdana enkrat letno.

Trgovina z aplikacijami— trgovina s programsko opremo za naprave iOS. Večina veliko število programi za Mobilni telefoni. Aplikacija je na voljo na vsaki napravi in ​​je ni mogoče izbrisati. Za delovanje aplikacije je potreben Apple ID.
Cena programa se giblje od 0,99 dolarja do več tisoč dolarjev. Za nakup programov se morate povezati z uporabniškim računom debetno kartico Vizum. Ko svojo kartico povežete, vam zaračunajo dolar, da preverite, ali je z vašo kartico vse v redu. 1 dolar je blokiran na kartici, vendar se čez nekaj časa vrne.
Apple ID je vaš račun v operacijskem sistemu iOS. Morda imate več računov. Vsi programi, ki jih kupite, so vezani na ta račun. Če se prijavite iz druge naprave pod svojim računom, lahko vse plačljive programe, ki ste jih kupili prej, prenesete brezplačno.

Kako posodobiti iOS?

Za posodobitev na novo različico sistema iOS obstaja iTunes.
iTunes— ključni program za uporabnike i-naprav. Preko njega se naprava aktivira, prenese glasba, zvočne knjige itd. Lahko ga prenesete s spletnega mesta Apple. tudi ta program omogoča prenos in posodobitev naprav iOS. Napravo morate povezati in na desni strani strani bo program označil možnost posodobitve. Pred posodobitvijo onemogočite vse protivirusne programe in požarne zidove.

Trenutno različico iOS vaše naprave si lahko ogledate v Nastavitve – Splošno – O napravi – Različica
Seznam funkcij sistema iOS se spreminja od različice do različice. Od različice 5 se je pojavila integracija z iCloud ali oblakom.
Kako deluje? - vse je precej preprosto. Pri tistih programih, ki imajo integracijo z iCloud, ko vnesete podatke v eno napravo, se samodejno prikažejo v drugi napravi.
Nove funkcije se dodajajo iz različice v različico.

Slabosti Apple iOS

Applov sistem ima številne pomembne pomanjkljivosti.

  1. Nova sistemska posodobitev zelo pogosto upočasni delovanje naprave. In Apple sam to naredi, da razmislite o tem in si kupite nov telefon.
  2. operacijski sistem je zaprto. Ne morete si ogledati seznama datotek operacijskega sistema in uporabljati naprave kot bliskovni pogon. Tudi to je prednost. iOS je najbolj varen sistem na svetu.
  3. Visoki stroški telefonov in tablic na tem operacijskem sistemu.
  4. Nekatere dodatke lahko proizvaja samo Apple. Na primer, bolje je uporabiti polnilne kable proizvajalca Apple. V njih je všit čip. Če kupite kitajski polnilni kabel, morda ne bo deloval ali pa bo vaša naprava poškodovana zaradi ponarejenih izdelkov.
  5. Vašo aplikacijo je nemogoče ali zelo težko namestiti kot datoteko. Aplikacije je mogoče prevzeti samo iz AppStore

Prednosti iOS-a

  1. Največja trgovina z aplikacijami z dokaj kakovostnimi aplikacijami
  2. Veliko samo kul in lepe igre, shareware, s stalno podporo in razvojem
  3. Hitrost sistema v primerjavi z drugimi
  4. Kvalitetni telefoni in tablice Apple
  5. Hiter odziv na napake in odsotnost virusov
  6. Lepota vmesnika in grafike.
  7. Stalna posodobitev sistema enkrat letno, vklj. in za starejše naprave

Danes bomo govorili o srcu iPhona in povedal vam bom, kaj je iOS. Nenavadno je, da nekateri ljudje ne poznajo imena operacijskega sistema na iPhoneu.

S tem ni nič narobe, saj ste zdaj tukaj in lahko berete to gradivo. Poskušal bom na kratko predstaviti podatke, ki jih imam.

Sistem iOS - kaj je to?

No, verjetno bom začel z dejstvom, da takoj ko je bil leta 2007 izdan prvi iPhone, še ni bilo imena za operacijski sistem. Glede na to, da je temeljil na operacijskem sistemu, enakem MacBooku, se je imenoval OS X.

O imenu ne bom dolgo govoril, saj je že jasno, da je Applov trik v tem, da vsemu na začetku preprosto doda črko "i". Tako se je izkazalo, da je iOS, in mislim, da nikomur ni skrivnost, da je OS operacijski sistem.

Čeprav je povsem možno, da pomeni "operacijski sistem iPhone". Apple daje svojim uporabnikom možnost, da razmišljajo sami.

Ne deluje samo na iPhonih. Razvit je bil za glavne mobilne naprave, tukaj pa lahko dodate tudi iPad in iPod.


Celotno delovanje sistema temelji prav na zaslon na dotik. Ni pisal, samo prsti. iPad Pro je pred kratkim postal izjema, vendar ima nekaj podobnega peresu in je potreben izključno za risanje.

Glavna značilnost je, da je sistem popolnoma zaprt. V svojo napravo ne boste mogli prenesti nobene datoteke. Če želite to narediti, boste morali narediti različne manipulacije in prenesti posebno aplikacijo.

Če govorimo o aplikacijah in igrah, jih je mogoče prenesti iz App Store. Zdaj jih je veliko in lahko najdete popolnoma vse, kar potrebujete.

Kako ugotoviti, kateri iOS je na iPhonu?

Če si želite ogledati svojo različico sistema iOS na svojem iPhoneu, lahko to storite v samo nekaj sekundah. Samo sledite tem korakom:

  1. izberite nastavitve;
  2. nato kliknite na Osnovno;
  3. zdaj O tej napravi;
  4. nasproti besede "Različica" imamo trenutno številko iOS.


Takšna v preprostih korakih, lahko kadar koli izveste različico. Prvič po navodilih, potem pa mislim, da se boste spomnili.

Kako se iOS razlikuje od Androida?

Tukaj ne bom povedal preveč, povedal vam bom le najpomembnejše razlike med iOS in Android ter kako stvari na splošno stojijo v tem trenutku.


Prva stvar, ki bi jo rad opozoril, je verjetno varnost. Navsezadnje so naprave Android najpogosteje vdrte, namestitev virusa tja ni tak problem.

Razlogov za to je verjetno več. Prvi je ta Play Market nekoliko slabše preverja aplikacije in lahko upoštevate, da ljudje radi nameščajo krekirano programsko opremo.

No, druga stvar je, da je Android popolnoma odprt. Vsi so jo študirali pokonci. Tako vsi poznajo njene prednosti in slabosti.


Druga razlika se lahko imenuje ekosistem. Ker zdaj, preden izberete napravo, morate razumeti, katere storitve želite uporabljati.

Android ima vse analoge za storitve Apple. Ko govorimo o iCloudu, se takoj spomnimo na Google Drive. Če je Siri, potem OK Google in tako naprej.

Obe strani imata svoje prednosti in slabosti. Toda to je individualna zadeva in najbolje je, da se posvetujete z uporabniki ali preprosto preberete informacije na internetu.


Nadalje lahko pokličemo stabilnost dela in podporo za naprave. Načeloma danes razlika ni tako velika, kot je bila prej.

Če bi pred tremi leti vzeli v roke pametni telefon Android in ga uporabljali, bi verjetno našli kup zaostankov in upočasnitev, ki so bili neverjetno nadležni.

Danes se seveda včasih tudi to opazi, vendar veliko redkeje. Bolj vas skrbi, ko kupite napravo na tem OS-u, koliko časa bo trajalo, da jo posodobite na najnovejše različice.

Za Apple je to obdobje običajno približno štiri leta. Medtem ko je Android star nekaj let in lahko pozabite na najnovejše različice.

Upoštevati je treba, da ima vsak razvijalec svojo lupino. Zaradi tega ni dejstvo, da boste lahko prejemali posodobitve takoj po izdaji nove različice Androida.

Vsi vedo, da mobilne naprave Apple poganjajo iOS. Mnogi ljudje vedo, da je iOS lahka različica namiznega Mac OS X. Nekateri domnevajo, da Mac OS X temelji na operacijskem sistemu Darwin, ki je združljiv s POSIX, in tisti, ki jih IT resno zanima, vedo, da Darwin temelji na jedru XNU, ki se je pojavil, je bil rojen kot rezultat združitve komponent mikrojedra Mach in jedra FreeBSD. Vendar so vse to gola dejstva, ki nam ne bodo povedala ničesar o tem, kako iOS dejansko deluje in kako se razlikuje od svojega namiznega primerka.

Mac OS X

Operacijski sistem, ki je danes nameščen na vseh računalnikih Mac in (v spremenjeni obliki) na iPadih, sega v leto 1988, ki je v svetu IT znano tudi po tem, da je bilo to leto izdaje prve beta različice operacijskega sistema NeXTSTEP. Sam NeXTSTEP je bil plod razvojne ekipe Steva Jobsa, ki je takrat že zapustil Apple in ustanovil podjetje NeXT, ki je začelo razvijati računalnike za izobraževalne potrebe.

NeXTSTEP je bil ob svoji predstavitvi resnično napreden operacijski sistem, ki je vključeval številne tehnološke novosti. OS je temeljil na spremenjenem mikrojedru Mach, dopolnjenem s komponentami jedra FreeBSD, vključno z referenčno izvedbo omrežnega sklada. Komponente višje ravni NeXTSTEP so bile napisane z uporabo jezika Objective-C in so razvijalcem aplikacij zagotovile bogat objektno usmerjen API. Sistem je bil opremljen z razvitim in zelo priročnim grafičnim vmesnikom (katerih ključne komponente so bile ohranjene v OS X in celo iOS) in zmogljivim razvojnim okoljem, ki je med drugim vključevalo oblikovalec vizualnih vmesnikov, ki ga poznajo vsi sodobni razvijalci.

Po neuspehu NeXT in vrnitvi Steva Jobsa v podjetje Apple leta 1997 je bil NeXTSTEP osnova projekta Rhapsody, v okviru katerega se je začel razvoj sistema naslednika Mac OS 9. Leta 2000 se je iz Rhapsodyja izločil projekt Darwin open, katerega izvorna koda je bila objavljena pod licenco APSL , že leta 2001 pa se je rodil OS X 10.0, zgrajen na njegovi osnovi. Nekaj ​​let kasneje je Darwin oblikoval osnovo operacijskega sistema za prihajajoči pametni telefon, o katerem do leta 2007 razen govoric ni bilo znanega skoraj nič.

XNU in Darwin

Običajno lahko nadev OS X / iOS razdelimo na tri logične plasti: jedro XNU, standardno združljivostno plast POSIX (ter različni sistemski demoni/storitve) in plast NeXTSTEP, ki implementira grafični sklad, ogrodje in aplikacijski API. Darwin vključuje prvi dve plasti in se distribuira prosto, vendar samo v različici za OS X. Različica za iOS, prenesena na arhitekturo ARM in vključuje nekaj izboljšav, je popolnoma zaprta in se distribuira samo kot del vdelane programske opreme za iDevice (očitno, ta zaščita pred prenosom sistema iOS na druge naprave).

V svojem jedru je Darwin "goli" OS, podoben UNIX-u, ki vključuje POSIX API, lupino, nabor ukazov in storitev, ki so minimalno potrebne za delovanje sistema v konzolnem načinu in zagon programske opreme UNIX. V tem pogledu je podoben osnovnemu sistemu FreeBSD ali minimalni namestitvi kakšnega Arch Linuxa, ki omogoča zagon programske opreme konzole UNIX, vendar nima grafične lupine ali vsega potrebnega za zagon resnih grafičnih aplikacij iz GNOME ali KDE okoljih.

Ključna komponenta Darwina je hibridno jedro XNU, ki temelji, kot je navedeno zgoraj, na komponentah jedra Mach in jedru FreeBSD, kot so razporejevalnik procesov, omrežni sklad in virtualni datotečni sistem (plast VFS). Za razliko od Macha in FreeBSD uporablja jedro OS X lasten API za gonilnik, imenovan I/O Kit, ki omogoča pisanje gonilnikov v C++ z uporabo objektno usmerjenega pristopa, kar močno poenostavi razvoj.

iOS uporablja nekoliko spremenjeno različico XNU, vendar je zaradi dejstva, da je jedro iOS zaprto, težko reči, kaj točno je Apple spremenil. Vemo le, da je preveden z drugimi možnostmi prevajalnika in spremenjenim upraviteljem pomnilnika, ki upošteva majhne količine RAM-a v mobilnih napravah. V vseh ostalih pogledih gre za isti XNU, ki ga je mogoče najti kot šifriran predpomnilnik (jedro + vsi gonilniki/moduli) v imeniku /System/Library/Caches/com.apple.kernelcaches/kernelcache na sami napravi.

Na ravni nad jedrom v Darwinu je plast UNIX/BSD, ki vključuje nabor standardnih knjižnic jezika C (libc, libmatch, libpthread itd.), pa tudi orodja ukazna vrstica, nabor lupin (bash, tcsh in ksh) in demonov, kot je launchd, ter standardni strežnik SSH. Slednjega, mimogrede, lahko aktivirate z urejanjem datoteke /System/Library/LaunchDaemons/ssh.plist. Če seveda naredite jailbreak vaše naprave.

Tu se konča odprti del OS, imenovan Darwin, in začne se plast ogrodij, ki tvorijo tisto, kar smo navajeni imeti za OS X / iOS.

Ogrodja

Darwin izvaja le osnovni del Mac OS / iOS, ki je odgovoren samo za nizkonivojske funkcije (gonilniki, zagon/zaustavitev sistema, upravljanje omrežja, izolacija aplikacij itd.). Tisti del sistema, ki je viden uporabniku in aplikacijam, ni del sistema in je implementiran v tako imenovana ogrodja – nize knjižnic in storitev, ki so med drugim odgovorne za oblikovanje grafičnega okolja in visoke API na ravni za aplikacije tretjih oseb in delniške aplikacije

INFO

Tako kot mnogi drugi operacijski sistemi je Mac OS in iOS API razdeljen na javne in zasebne. Aplikacije tretjih oseb imajo dostop samo do javnega in močno zmanjšanega API-ja, vendar lahko aplikacije za pobeg iz zapora uporabljajo tudi zasebnega.

V standardni distribuciji Mac OS in iOS lahko najdete na desetine različnih okvirov, ki so odgovorni za dostop do različnih funkcij OS - od implementacije imenika (okvir AddressBook) do knjižnice OpenGL (GLKit). Nabor osnovnih ogrodij za razvoj grafičnih aplikacij je združen v tako imenovani Cocoa API, neke vrste metaframework, ki omogoča dostop do glavnih funkcij OS. V iOS-u se imenuje Cocoa Touch in se razlikuje od namizna različica usmerjenost k zaslonom na dotik.

V obeh operacijskih sistemih niso na voljo vsi okviri. Mnogi od njih so specifični samo za iOS. Primeri vključujejo AssetsLibrary, ki je odgovoren za delo s fotografijami in videoposnetki, CoreBlueTooth, ki omogoča dostop do bluetootha, ali iAd, namenjen prikazovanju oglasov v aplikacijah. Druga ogrodja obstajajo samo v namizni različici sistema, vendar Apple občasno prenese določene dele iOS-a v Mac OS ali obratno, kot se je na primer zgodilo z ogrodjem CoreMedia, ki je bilo sprva na voljo le v iOS-u.

Vsa standardna sistemska ogrodja najdete v sistemskem imeniku /System/Library/Frameworks/. Vsak od njih se nahaja v svojem imeniku, imenovanem paket, ki vključuje vire (slike in opise elementov vmesnika), glave jezika C, ki opisujejo API, kot tudi dinamično naloženo knjižnico (v formatu dylib) z implementacijo ogrodje.

Eden od zanimive lastnosti ogrodja - njihovo različico. En okvir ima lahko več različnih različic hkrati, zato bo aplikacija, razvita za zastarele različice sistema, še naprej delovala, tudi kljub spremembam novih različic operacijskega sistema. Točno tako je mehanizem za zagon starih iOS aplikacij implementiran v iOS 7 in novejših. Aplikacija, razvita za iOS 6, bo videti in delovala natanko tako, kot če bi delovala v sistemu iOS 6.

odskočna deska

Na višji ravni so aplikacije, ki so sistemske in se namestijo iz trgovine aplikacij. Osrednje mesto med njimi je seveda SpringBoard (samo v iOS), ki implementira domači zaslon (namizje). Je tisti, ki se zažene prvi po zagonu sistemskih demonov, nalaganju ogrodij v pomnilnik in zagonu prikazovalnega strežnika (alias compositing manager, aka Quartz Compositor), ki skrbi za prikaz slik na zaslonu.

SpringBoard je povezava med operacijskim sistemom in njegovim uporabnikom, grafični vmesnik, ki omogoča zagon aplikacij, preklapljanje med njimi, ogled obvestil in upravljanje nekaterih sistemskih nastavitev (začenši z iOS 7). Je pa tudi upravljavec dogodkov, kot je dotik zaslona ali obračanje naprave. Za razliko od Mac OS X, ki uporablja različne aplikacije in demonske agente za implementacijo komponent vmesnika (Finder, Dashboard, LaunchPad in drugi), so v iOS-u skoraj vse osnovne funkcije uporabniškega vmesnika, vključno z zaklenjenim zaslonom in zaveso, vsebovane v enem SpringBoardu.

Za razliko od drugih osnovnih aplikacij za iOS, ki se nahajajo v imeniku /Applications, SpringBoard skupaj s prikazovalnim strežnikom velja za del ogrodja in se nahaja v imeniku /System/Library/CoreServices/. Za izvajanje številnih nalog uporablja vtičnike, ki se nahajajo v /System/Library/SpringBoardPlugins/. Tam med drugim najdete na primer NowPlayingArtLockScreen.lockboundle, ki skrbi za prikaz podatkov o predvajani pesmi na zaklenjenem zaslonu, ali IncomingCall.serviceboundle, ki skrbi za obdelavo dohodnega klica.

Od iOS 6 naprej je SpringBoard razdeljen na dva dela: samo namizje in storitev BackBoard, ki je odgovorna za komunikacijo z nizkonivojskim delom OS, ki deluje s strojno opremo (raven HAL). BackBoard je odgovoren za obdelavo dogodkov, kot so dotiki zaslona, ​​pritiski na tipke, merilnik pospeška, senzor položaja in senzor svetlobe, upravlja pa tudi zagon, premor in zaključek aplikacij.

SpringBoard in BackBoard imata toliko velik pomen za iOS, da če jih na kakršen koli način ustavimo, bo celoten sistem zamrznil na mestu in se celo zagnal ta trenutek Aplikacija se ne odziva na dotike zaslona. To jih razlikuje od začetnega zaslona Android, ki je le standardna aplikacija, ki jo je mogoče ustaviti, zamenjati ali celo odstraniti iz sistema (v tem primeru bo zaslon še vedno imel popolnoma delujoče navigacijske gumbe in vrstico stanja z »zaveso« «).

Aplikacije

Na samem vrhu te piramide so aplikacije. iOS razlikuje med vgrajenimi (na zalogi) visoko privilegiranimi aplikacijami in aplikacijami tretjih oseb, nameščenimi iz iTunes. Oboje je shranjeno v sistemu v obliki svežnjev, podobnih tistim, ki se uporabljajo za ogrodja. Edina razlika je v tem, da paket aplikacij vključuje nekoliko drugačne metainformacije, mesto dinamične knjižnice pa je zasedla izvršljiva datoteka v formatu Mach-O.

Standardni imenik za shranjevanje osnovnih aplikacij je /Applications/. V iOS-u je popolnoma statičen in se spreminja samo med posodobitvami sistema; uporabnik do njega ne more dostopati. Aplikacije tretjih oseb, nameščene iz iTunes, pa so shranjene v uporabnikovem domačem imeniku /var/mobile/Applications/ v podimenikih oblike 4-2-2-2-4, kjer sta dve in štiri šestnajstiška števila. To je tako imenovani GUID - enolični identifikator, ki edinstveno identificira aplikacijo v sistemu in je potreben tudi za ustvarjanje izoliranega peskovnika.

Peskovnik

V sistemu iOS se peskovniki uporabljajo za izolacijo storitev in aplikacij od sistema in drug od drugega. Vsaka aplikacija tretje osebe in večina sistemskih aplikacij se izvajajo v peskovniku. S tehničnega vidika je peskovnik klasičen chroot za svet UNIX, okrepljen s sistemom vsiljenega nadzora dostopa TrustedBSD MAC (modul jedra sandbox.kext), ki aplikacijam odreže ne le dostop do datotek zunaj domačega imenika, temveč tudi neposreden dostop do strojne opreme in številnih sistemskih funkcij OS.

Na splošno je aplikacija v peskovniku omejena v naslednjih zmožnostih:

  • Dostop do datotečnega sistema, razen lastnega imenika in uporabnikovega domačega imenika.
  • Dostop do imenikov Media in Library v domačem imeniku, razen Media/DCIM/, Media/Photos/, Library/AddressBook/, Library/Keyboard/ in Library/Preferences/.
  • Dostop do informacij o drugih procesih (aplikacija se »ima« za edino v sistemu).
  • Neposreden dostop do strojne opreme (dovoljeni so le Cocoa API in drugi okviri).

Vse te omejitve ustrezajo vsebniku profila peskovnika (niz omejevalnih pravil) in veljajo za vse aplikacije tretjih oseb. Za delniške aplikacije pa lahko veljajo druge omejitve, mehkejše ali strožje. Primer je e-poštni odjemalec (profil MobileMail), ki ima na splošno enake stroge omejitve kot aplikacije tretjih oseb, vendar lahko dostopa do celotne vsebine imenika Library/. Nasprotna situacija je SpringBoard, ki nima nobenih omejitev.

Številni sistemski demoni tečejo znotraj peskovnikov, vključno z na primer AFC, ki je zasnovan za delo z datotečnim sistemom naprave osebnega računalnika, vendar omejuje svoj "obseg" samo na domači imenik uporabnika. Vsi razpoložljivi sistemski profili peskovnika se nahajajo v imeniku /System/Library/Sandbox/Profiles/* in so nizi pravil, napisanih v jeziku sheme. Poleg tega lahko aplikacije vključujejo tudi dodatne nize pravil, imenovane upravičenost. V bistvu so to vsi isti profili, vendar vdelani neposredno v binarno datoteko aplikacije (neke vrste samoomejitev). Ta pravila si lahko ogledate na primer takole:
# cat -tv /Applications/MobileSafari.app/MobileSafari | rep -31 | več
Pomen obstoja vseh teh omejitev je dvojen. Prva (in glavna) naloga, ki jo reši peskovnik, je zaščita pred zlonamernimi aplikacijami. Skupaj s temeljitim preverjanjem aplikacij, objavljenih v iTunes, in prepovedjo zagona aplikacij, ki niso podpisane z digitalnim ključem (beri: vseh aplikacij, ki niso prejete od iTunes), ta pristop daje odličen rezultat in omogoča, da je iOS v vrhu seznam operacijskih sistemov, ki so najbolj zaščiteni pred virusi.

Drugi problem je zaščita sistema pred samim seboj in pred uporabnikom. Napake lahko obstajajo tako v zalogi programske opreme Apple kot v glavah uporabnikov. Peskovnik ščiti pred obema. Tudi če napadalec najde luknjo v Safariju in jo poskuša izkoristiti, bo še vedno ostal v peskovniku in ne bo mogel poškodovati sistema. In uporabnik ne bo mogel "razbiti svojega najljubšega telefona" in Appleu ne bo pisal jeznih ocen. na srečo razgledani ljudje Vedno lahko pobegnejo iz zapora in zaobidejo zaščito peskovnika (pravzaprav je to bistvo pobega iz zapora).

Večopravilnost

Ena najbolj kontroverznih lastnosti iOS-a je njegova implementacija večopravilnosti. Zdi se, da obstaja, po drugi strani pa ne obstaja. V primerjavi s tradicionalnim namiznim OS in razvpitim Android iOS ni večopravilni operacijski sistem v običajnem pomenu besede in aplikacijam ne omogoča prostega izvajanja v ozadju. Namesto tega operacijski sistem implementira API, ki ga lahko aplikacija uporablja za izvajanje posameznih nalog, medtem ko je v ozadju.

Ta API se je prvič pojavil v iOS 4 (pred tem so samo osnovne aplikacije lahko izvajale naloge v ozadju) in rasel z razvojem operacijskega sistema. Danes ( govorimo o o iOS 7) vam tako imenovani API za ozadje omogoča naslednje:

  • predvajanje zvoka;
  • opravljati VoIP klice;
  • prejemanje informacij o spremembi lokacije;
  • prejemanje potisnih obvestil;
  • načrtovanje zakasnjenih obvestil;
  • zahtevajte dodaten čas za dokončanje dela po prehodu v ozadje;
  • izmenjava podatkov z dodatki, povezanimi z napravo (vključno z Bluetooth);
  • prejemanje in pošiljanje podatkov po omrežju (začenši z iOS 7).

Tovrstne omejitve dela v ozadju so nujne predvsem zaradi varčevanja z baterijo in izogibanja uporabnikom Androida tako znanega zamika vmesnika, kjer lahko aplikacije v ozadju počnejo, kar hočejo. Pravzaprav Apple tako zelo skrbi za varčevanje z baterijo, da je celo implementiral poseben mehanizem za združevanje dejanj aplikacij v ozadju in njihovo zagon ob pravih trenutkih, na primer, ko je pametni telefon aktivno v uporabi, povezan z omrežjem Wi-Fi ali s polnilnikom.

zaključki

Vredno je povedati, da NeXTSTEP med svojim razvojem in kasnejšim prehodom na mobilne naprave ni le izgubil vseh svojih prednosti, ampak jih je tudi povečal. Lahko dolgo poslušate zgodbe zaposlenih v Googlu, ki trdijo, da je bil Android razvit brez upoštevanja iOS-a, vendar ostaja dejstvo, da si je Android veliko arhitekturnih rešitev izposodil od iOS-a. Pa ne zato, ker bi bilo lažje, temveč zaradi njihove lepote in učinkovitosti.

Šest stopenj prenosa iOS

  1. Zagonski ROM. Po vklopu naprave se najprej zažene minimalističen zagonski nalagalnik, ki je vstavljen v trajni pomnilnik naprave. Njegova naloga je izvesti začetno inicializacijo strojne opreme in prenesti nadzor na primarni nalagalnik LLB. Zagonski ROM ima vedno tovarniško vdelano programsko opremo in ga ni mogoče posodobiti.
  1. Zagonski nalagalnik nizke ravni (LLB). Nato LLB prevzame nadzor. To je primarni zagonski nalagalnik, katerega naloga je najti iBoot v pomnilniku naprave, preveriti njegovo celovitost in prenesti nadzor nanj ali preklopiti napravo v način za obnovitev, če to ne uspe. Koda LLB je shranjena v pomnilniku NAND naprave in se posodobi, ko je nameščena nova različica vdelane programske opreme. Med drugim prikazuje zagonski logotip.
  1. iBoot. To je sekundarni in glavni nalagalnik za iDevice. Vključuje gonilnik datotečnega sistema, ki dostopa do vsebine pomnilnika NAND, najde jedro in nanj prenese nadzor. iBoot ima tudi vgrajen gonilnik UART, s katerim lahko razhroščite jedro in OS tako, da napravo povežete s vrati COM ali USB na računalniku (s kablom USB na UART).

4 Jedro. Tukaj je vse kot običajno. Jedro inicializira strojno opremo in nato preda nadzor demonu launchd.

5 Launchd. To je primarni proces iOS in Mac OS X, povezuje se datotečni sistemi, zažene demone/storitve (na primer backupd, configd, locationd), prikazni strežnik, okvire in na zadnji stopnji zagona da nadzor SpringBoardu. V sistemih iOS in Mac OS X se launchd uporablja kot zamenjava za standardni /bin/init v sistemu UNIX, vendar je njegova funkcionalnost veliko širša.

6 odskočna deska. Tukaj je zaklenjeni zaslon!

Prve štiri stopnje v tej verigi tvorijo verigo zaupanja, ki se izvaja s preverjanjem digitalnega podpisa prenesene komponente. Digitalni podpis imajo LLB, iBoot in jedro, kar odpravlja vdor vlomljenega zagonskega nalagalnika ali jedra v verigo, ki se lahko uporabi za nalaganje operacijskega sistema tretje osebe ali jailbreak. Edini način, da zaobidete ta mehanizem, je, da poiščete luknjo v enem od zagonskih nalagalnikov in z njo obidete preverjanje. Nekoč je bilo več takih lukenj najdenih v Boot ROM-u (najbolj znan exploit je limera1n iz geohota, relevanten za iPhone 1–4), v začetku leta 2014 pa v iBootu (heker iH8sn0w, exploit ni bil nikoli objavljen).

Če med vklopom iPhona držite gumb Domov, lahko prisilite iBoot, da se zažene v tako imenovanem obnovitvenem načinu, ki vam omogoča obnovitev vdelane programske opreme iOS ali posodobitev z uporabo iTunes. Vendar mehanizem za samodejno posodabljanje OTA uporablja drugačen način, imenovan DFU (Device Firmware Upgrade), ki se aktivira v zgodnji zagonski fazi takoj po zagonskem ROM-u in je implementiran v dveh komponentah: iBSS in iBEC. Pravzaprav so to analogi LLB in iBoot, katerih končni cilj ni naložiti OS, temveč preklopiti pametni telefon v način posodabljanja.



 

Morda bi bilo koristno prebrati: