Windows Phone 7 moniajo 40 sekunnissa
Moikka
Windows Phone 7:n moniajo tuntuu olevan maaginen asia, niitä tuntuu olevan yhtä monta erilaista kuin kysyjiäkin. Niinpä päätin yrittää selittää 40 sekunnissa mikä se on.
Tai otetaan ensin 10 sekunnin versio:
Windows Phone 7:ssa on moniajo kaikelle muulle paitsi sovelluskaupan sovelluksille. Nyt.
40 sekunnin versio:
- Käyttöjärjestelmän ydin on 32 bittinen, 4GB muistiavaruudella ja moniajolla (1)
- Kaikki tasolla 2 toimii moniajona, puhelimen omat softat, OEM –softat
- Sovelluskauppatasolla (SK) (3), sovelluksia ajetaan vuoroajona
- Jokaisella SK sovelluksessa on oma ”käyttäjätunnus” ja tämän security context:in avulla ne on eritetty kukin omaan hiekkalaatikkoonsa
- SK sovellus ei voi koskea toisiin sovelluksiin tai käyttöjärjestelmään
- SK Sovelluksia voi käyttää yhtä aikaa n+1, mutta se sovelluskaupan sovellus joka on edustalla saa suoritinaikaa
- Kun SK sovellus siirtyy pois edustalta, sen tila talletetaan (dehydrated) ja resurssit vapautetaan hetken kuluttua tai jos ne muuten loppuvat. Näin sovellusten ”välillä vaihtaminen” nopeaa.
- Kun SK sovellus nostetaan taas esiin, se saa resurssinsa takaisin (rehydrated)
- -> Puhelimesta ei saa ajettua muistia loppuun tai puhelinta hidastumaan
- SK sovellus toimii silti ilman että sen tarvitsee olla käynnissä taustalla pollailemassa (haaskaa akkua), vaan se voi käyttää notifikaatiopalvelua
- Pilvestä tulee ”ilmoitus”
- Se näytetään vakiotoiminnolla ruudulla
- Viestiin koskeminen avaa oikean SK –sovelluksen
- Muistia tai akkua ei mennyt hukkaan
Eli Windows Phone 7:ssa on moniajo kaikelle muulle paitsi kauppapaikasta ostetuille sovelluksille.
Näin voidaan taata että sovellus saa aina ”täyden potkun” kun sitä käytetään, eli taatun muistin, suoritustehon, käyttökokemuksen ja nopeuden.
Ilmeisin selitys tällä on se että kehitystiimi on tehnyt ensimmäiseen versioon valinnan jolla varmistaa se että teki käyttäjä mitä tahansa, puhelinta ei saa hidastumaan. Sallimalla moniajo, tuloksena olisi voinut olla otsikoita ”Windows Phone 7 hidas (kun käynnistin kaikki sovellukset taustalle yhtä aikaa)”.
Mitään teknistä syytä sille ettei myös tuo ”kolmas kerros” voisi käyttöjärjestelmän puolesta olla moniajossa. Taattu nopeus ja akun kesto, lienevät olleet uudelle puhelimelle painavammat kriteerit. Tässä on myös onnistuttu, oman kokemuksen perusteella puhelin oli jo protoraudalla sujuva ja nopea käyttää kaikissa tilanteissa.
Charlie Kindel:in mukaan myös sovelluskaupan sovellusten sallitaan moniajaa ”aikanaan”.
“We do not allow third-party applications running on the phone to execute in the background,” said Charlie Kindel, manager of Microsoft’s Windows Phone App Platform and Developer Experience program. “We’re poised to support it eventually, but in order to support great battery life and great end-user experience, we’re focusing on the integrated experiences first.”
Päivitykset puhelimeen toimitetaan verkon yli. Kokonaan uusi käyttisversio asennetaan Zune –softa avulla (kuten Applella Itunes)
Hyvä artikkeli notifikaatioista löytyy:
https://www.silverlightshow.net/items/Implementing-Push-Notifications-in-Windows-Phone-7.aspx
Viikonloppuja!
t. Janne
Comments
- Anonymous
August 12, 2011
40 sekunttia kuluu Windowsilla jo odottaessa että se löytää "My Comptuter" osion läppäristä. Jotenkin tuntuu ms ei ikinä osaaa tehdä softaa joka todella osaa moniajon. Esimerkkinä perus windos kone (esim. XP tai win7) jos jossain sovelluksessa verkkoresu ei ole käytettävissä, koko kone hyytyy ja ei selviä kuin buutilla.