WinMagazin

2012-08-02 12:00 swGuru Szólj hozzá!

Mint azt már páran hallottuk, a Windows Phone 8 a Windows 8 kernelére fog épülni. De mit jelent ez?

Lassan 2 évvel ezelőtt, a Microsoft kezdte belátni, hogy a régi Windows CE kernelre épülő Windows Mobile telefonok kudarcra vannak ítélve abból kifolyólag, hogy ergonomikus tervezés helyett egy az egyben átvittek egy lebutított Windows-t telefon méretre. Azonban más cégek inkább elkezdték saját operációs rendszereiket fejleszteni, többé-kevésbé telefonokra optimalizálva. Akkoriban még ismeretlen volt a szoftver ergonómia, annyit tudtak csak, hogy olyanra kell tervezni, amin ujjal eltaláljuk az ikonokat és látjuk ami oda van írva (2 pixeles betűkkel nem sokra ment volna a user).

Más cégek sikerét, és finoman szólva is saját platformjának bukásánál érett meg a gondolat, hogy itt valami nagy változás kell, különben lehúzhatják a rolót mobilok terén. Így hát megszületett a Windows Phone 7 rendszer, mely szintén CE kernelre épült, azonban egy újfajta szemlélettel: szeparálták a kernelt a felhasználói programok szintjétől. Ezt olyan jól sikerült kivitelezni, hogy teljesen függetlenné vált a felhasználói kód attól, hogy lényegében mi folyik a kernelrétegben.

Eltelt pár hónap és egy karácsony is, mikor is a Microsoft úgy döntött, hogy a CE kernele igencsak elavult már, mi lenne, ha megpróbálnák behúzni a Windows 8 kernelét a Windows Phone alá. Lehetséges ez? És ha igen hogyan?

Ahogy az előbb említettem, a WP7-nél nagyon nagy figyelmet fordítottak arra, hogy a kernel teljesen szeparálva legyen a felhasználói szintű programoktól: amikor egy alkalmazás a telefon egy erőforrásához fordul, akkor ezt csak olyan módon teheti, hogy nem hív bele a kernelbe: lényegében egy kis fekete dobozkában fut. Többek között ennek eredményeképpen is született meg az alkalmazásonként elszeparált tárolóhelyek ötlete (más néven: Isolated Storage), ugyanis ha fájlrendszer hívásokkal tudták volna bombázni az appok a rendszert, ez oda vezetett volna, hogy keresztüljutnak a szeparációs zónán, és fennállhat a Windows Phone következő verziójával való kompatibilitás megszegésének veszélye. Ezt nem lehetett megengedni, hiszen a Windows 8 kernele azokban az időkben is fejlesztés alatt állt, a tervek ott voltak a mérnökök asztalain: látszott, hogy a rongybaba később új ruhát kaphat :)

És itt jön képbe a WP8. Fogták a WP7 kernelét, kikukázták, és a helyére beültették a Win8 kernelét. Az alkalmazások továbbra is a megszokott hívásokkal bombázzák a rendszert, az, hogy kernel szinten mi történik belül, őket nem nagyon érdekli. De miért volt szükség egy kernelcserére, miért nem volt jó a Windows CE kernele? És akkor itt még itt azt is elárulom, hogy ez bizony egy elég kicsi teljesítményvesztéssel is jár, hiszen a Windows 8 asztalokra van tervezve, mi nekünk meg csak egy kis telefonunk van... vagy mégsem?

Anno még a Vista idejében, a Microsoft elkezdett fejlesztgetni egy teljesen moduláris kernelt. A csapból is a MinWin folyt, az emberek tévesen azonosítottak egy teljesen működő rendszert ezzel az új héjjal. Az igazság az, hogy a MinWin önmagában még grafikus felhasználói felületet sem tartalmazott, a Windows Server Core verziójának kitűnő talajt adott (pl.: amikor Windows Vistát vagy 7-et telepítünk, akkor egy MinWin fölé húzott mini-shellt látunk, ez végzi a telepítést, de ez nem a MinWin maga). Azonban a Microsoft itt tett nagy tapasztalatot arra, hogy leválassza a kernelt a rendszerhéjról. Ezt a szemléletet folytatva eljutottak odáig, hogy a kernelt olyannyira lepucolták, hogy azt a szó szerint „magot” lényegében akárhova beinjektálhatóra csinálták meg: mehet Surface Tablet-be, WP8-ba, asztali gépre, bárhova. De hát hogyan lehetséges ez?

Hát úgy, hogy a Microsoft a kernelt is tovább szeletelte: megszületett a Hpyer-V, a virtuális eszközmeghajtók, kernel particionálás és szeparált eszközmeghajtók területe. Mit jelent ez a gyakorlatban? Azt, hogy a Microsoft képessé vált arra, hogy mindegyik hardverbe a kernel azon funkcionalitásait pakolja be, amelyre az adott platformon valóban szükség van. Például a Hyper-V-t kihagyja a telefonból, de beteszi az asztali operációs rendszerbe (egyébként maga a WP8 emulátor is egy kis operációs rendszert futtat Hyper-V felett a régi WP7-tel ellentétben, ahol az operációs rendszer egy sima rendszerkép fájl volt a köré épített emulátorral). Magyarul a kernel maga is többé-kevésbé modulárissá vált. Itt kanyarodnék vissza arra, hogy miért kellett a váltás Windows 8 magra? Hát ezért. Ezt a szeletelést nem lehetett volna megvalósítani egy majd évtizedes kernellel, mint amilyen a Windows CE volt.

És hogy mit is nyertünk ezzel?

Először is azt, hogy az alkalmazásaink teljesen kompatibilisek maradtak visszafelé, hiszen az új rendszer transzparensé tette a platformokra történő fejlesztést: szinte egy az egyben átviheted a Windows 8 kódodat telefonra, tabletre, legfeljebb a kijelző felbontással és a platform specifikus adatbevitellel (pl. touch) kell foglalkoznod. A felhasználók a jól megszokott felületeidet látják mindenhol, szeretni fogják. Azért szeretik, mert az embereket a szokásaik vezérlik. Van pl. olyan hotellánc, ahol a hoteleket szinte egymás tükörképeire építik: ha bemész a hotellánc New York-i épületébe és ott a bejárattól jobbra van egy esernyőtartó, akkor biztos lehetsz benne, hogy amikor a londoniba belépsz, ott is le fogod tudni parkolni az esernyődet.. igen, a bejárattól jobbra.

Magyarul az alkalmazásfejlesztés is felgyorsul, hiszen kevesebbet kell MSDN-t túrnunk, hiszen a jól megszokott helyeken és névterekben fogjuk megtalálni a szenzorok, vezérlők és más mindennap használatos eszközök osztályait.

Miért jó ez a felhasználónak?

Nem csak azért, mert ugyanazt az alkalmazást több helyen is eléri hasonló formában. Az alkalmazások nem azért születnek, hogy telepítsük őket. Azért születnek, hogy az emberek életét jobbá, szebbé tegye. Hiába csinálsz gyönyörű szép esőcsepp szimulátort, ha annak semmi értelme (de legalábbis eléggé szűk körben lesz népszerű). Az emberek századunkra a telefonjukat elsősorban számítógépnek tekintik, és csak másodsorban telefonnak (na jó, a Nokia 3210-es felhasználókat és társaikat kihagytam). Mire használunk egy számítógépet? Játékra és alkalmazásokra. Megosztásra és szocializálódásra.

Ez szép, de mi egyebet nyerünk vele?

Gyorsabb frissítéseket, bombabiztos biztonsági modellt, egyforma hálózati, audió és grafikus készleteket. Egy kiforrott, jól bevált kernelt, fagyásmentes operációs rendszert, stabil, felügyelt kódú programokat. Sőt, mivel Windows 8 magra fog épülni, lehetővé vált a natív kódú programok futtatása is, Windows CE kernellel ez lehetetlen feladat lett volna, hiszen a Windows CE fölött futó Silverlight mag fölé kellett volna megírni a natív kódú emulátort, hatalmas teljesítményproblémákat okozva ezzel a több-réteg miatt, nem is beszélve a fejlesztés idejéről, plusz olyan apróságokról, mint pl hogy Silverlight fölött nem látszik a fájlrendszer (ez szükségszerű, hiszen ez volt a Silverlight tervezésénél az egyik alapkő a cross-platform biztosítása végett).

Több alkalmazást kapunk (hiszen gyorsabb a fejlesztésük), Internet Explorer 10-et. Változtatható képernyőfelbontásokat (hiszen a GUI is le lett szakítva a kernelről). Lényegében most készül el a Microsoft első igazán „okos telefon”-ja: zsebben fogunk hordozni egy mini asztali operációs rendszert, ami nemcsak hogy ugyanannyira stabil is lesz, de ugyanúgy is fog kinézni, ennek a neve pedig: METRO.

Ez volt az első cikkem, remélem tetszett!

Képek:


   
   

 

Jaskó László


A bejegyzés trackback címe:

https://winmagazin.blog.hu/api/trackback/id/tr554936255

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.

Ti írtátok

Címkék

1020 (18) 1520 (12) 920 (40) akció (12) alkalmazás (200) android (12) apple (16) áruház (16) ativ (13) beharangozó (88) bemutató (47) bing (12) fejlesztés (33) felmérés (17) frissítés (32) google (17) határmesgyék (12) hírek (20) homebrew (14) htc (22) ismertető (16) játék (36) képgaléria (18) készülék (146) kiállítás (11) kiegészítő (11) lányok az ablakban (18) lumia (149) microsoft (302) microsoft news (44) napiapp (14) neowin (17) nokia (198) office (22) paul thurrott (30) pletyka (50) reklám (31) sajtóközlemény (56) samsung (36) skydrive (14) skype (10) store (14) surface (33) szavazás (13) szivárogtatás (14) tablet (52) telefon (93) teszt (51) the verge (47) tippek és trükkök (11) update (18) vélemény (25) videó (126) windows (116) windows 8 (146) windows 8.1 (43) windows phone (402) windows phone 8 (19) wmpoweruser (110) wp7 (69) wp7.8 (65) wp8 (319) wp8.1 (63) wpcentral (127) xbox (47) xbox live (17) xbox one (21) zdnet (17) Címkefelhő

Twitter

NapiApp

Nincs megjeleníthető elem

süti beállítások módosítása