50
-
Papichulo #10 Sajnos jellemzoen igy irjak meg oket, meg mindig.
Latom a kernel space-rol kenyelmesen megfeledkeztel... azt siman lehet gyarilag multi-threadre irni - ahogy gondolom van is - es akkor voila, mar azonnal kihasznalja a rendszer a multi-core architecturat anelkul, hogy az alkalmazasokat specifikusan igy kene megirni.
Ha viszont tobb mag van, akkor egy darab rosszul tervezett 100%-on futo szal sem kepes 1 magnal tobbet megenni.
Egy normalis OS-nel ez amugy sem fordul elo, az androidnal igen???
Ha ez a szal tul hosszu ideig nem hivja meg az uzenet fogado fuggvenyt vagy tul sok uzenet gyulik fel, akkor irja ki a rendszer, hogy az alkalmazas nem valaszol. Viszont ha meg-meghivja, csak kozben tul sokat szamol, akkor csak siman szaggatni fog a rendszer, de a felhasznalo nem latja az okot.
Ezek a szarul megirt alkalmazasok, melyeket kiadni sem szabadna, ellenben a play store tele van ilyenekkel. Sajnos tapasztaltam...
Viszont pont ez adja azt a flexibilitast es skalazhatosagot ami miatt az android barmin elmegy, kenyerpiritotol cluster-ig.
Ez jopar OS-re igaz, az android - bemennyire is szerelmes vagy bele - abszolut nem kulonleges. Egyetlen elonye - mely mara hatrany is lett - a FOSS liszenszelese. -
Attilawap #9 Valaki árulja már el nekem, hogy mi a f@sznak kell egy mobiltelefonba 8 magos, egyenként 1,8 Ghz-es processzort tenni? 4K felbontású videókat vágnak meg konvertálnak vele vagy mi? Komolyan mondom, lassan az asztali számítógépeket is lehagyja a mobiltelefonipar. De minek? Gondoljuk végig, hogy minek van ekkora erőforrásigénye. Egy asztali gépnek nyilván azért, mert nagy képernyője van, ergo nagy felbontású tartalmak sokkal szebben jelennek meg rajta mint ilyen 4 colos képernyőkön. És ezeknek a tartalmaknak a megjelenítéséhez nagyobb erőforrásra van szükség. De könyörgöm, egy mobilnál mi az a jelenség, ami erőforrás igényes? Talán megfelelően optimalizált OP. rendszerre lenne szükség és nem lenne ekkora erőforrás pazarlás. -
tomcsa4 #8 Igen Cat, de míg PC-n tényleg millió féle processzor-variáció van (grafikus gyorsítóról nem is beszélve, bár hozzá teszem, ma már nagyon jókat lehet kapni potom összegekért, régen más volt), addig mobilfronton ugyan az a pár féle. Qualcomm, Texas I. (ha jól tudom kiszállt), Mediatek (mtk). Tehát burklattól függetlenül lehetne rá optimizálni. Az androidos telók csak külsőben (bár abban is alig) különböznek. Ez egy érdekes téma amúgy.
Jó persze mobil procik teljesen más felépítésűek, mint az asztali, tehá nem akarom evvel összehasonlítani. Egy 4 magos Samu csoda nem ér fel egy Pentium 4-gyel sem. De lehet a P3 is alázná. Viszont ma már mobilon olyan grafikai minőségben lehet játszani, mint 2000-2003 között.
De nekem ez szúrja a szememet. Most is ballagnak majd a nokiák Windows-zal (amúgy én WP fan vagyok, imádom, zseniális termék a Win8-WP8 páros), két maggal, míg már a 100 ezres kategóriában is (ami kb közép mezőny) Android alatt négy magosak vannak.
sanyicks, nekem is van ilyen telefonom (LG Opt Net, kiváló), de azért lássuk már ezen túl is. Ez az egy mag 600-800 mhz-en, 256MB-512MB memóriával 2011-ben volt divat. Ma már nem. -
sanyicks #7 "Egyet mondj meg nekem. Miért van az, ohgy androidnál már a minimum belépő a kettő mag, repkednek a gigahertzek, röpködnek a memória-mennyiségek, már a négymagos az átlag, a nyolcmagos is betekint."
Egyet mondj nekem, honnan szeded ezeket a marhaságokat? Androidon az átlag 1 mag, fél giga rammal. Nekem a telefonomon a lassabbik fajta (armv6 amilyet vindóz fón mellé ki se lehet adni, ios is csak jóval erősebbre megy) 1 magoson sincs gond vele, úgy hogy az 512 mega ramból 200 megánál kevesebb szabad ram még nem volt... -
Cat #6 Nagyon egyszerű, ugyanaz van mint PC-nél és konzolnál, miszerint utóbbi a fix hardver miatt jól optimalizálható. A mobil világban ugyanígy, az iOS csak Apple telefonon fut (célhardver), a Windows pedig szinte csak Nokián megtalálható (néhány egyéb is akad). Ezzel szemben több ezer Androidos eszköz van 3 collostól 11 collos képátlóig, mindenféle konfigurációban és kiegészítőkkel. -
tomcsa4 #5 kvp, én sokszor olvastam már a véleményeidet. Elég bonyolultan fogalmazol, de mégis érthető.
Egyet mondj meg nekem. Miért van az, ohgy androidnál már a minimum belépő a kettő mag, repkednek a gigahertzek, röpködnek a memória-mennyiségek, már a négymagos az átlag, a nyolcmagos is betekint.
Ezzel szemben iOS-nél és Windows Mobile-nál 1-2 magosak a készülékek, jellemzően negyed-, fél giga memóriákkal jönnek ki és mindenre használhatóak. Vannak rájuk olyan szép játékok, mint Androidra, csomó nagyszerű program van ezekre a platformokra is.
Nekem van tippem, hogy miért, de már nem akarok flémet kelteni. -
kvp #4 "Komolyan ugy gondolod, hogy egy mai OS-en egyetlen alkalmazas eseten egyszerre csak egy thread fut?"
Sajnos jellemzoen igy irjak meg oket, meg mindig. Egyebkent az android-ban a gui szalbol csak 1 van, bar a 2.x ota legalabb minden alkalmazasnak van sajatja, tehat csak magukat tudjak kiakasztani. Mondjuk egy voip alkalmazasnal vagy media lejatszonal normalis, ha a gui szal melle van egy real time szal is ami a media tartalmakat kezeli. Aztan minden szolgaltatasnak es komponensnek van sajatja, de azok mas programok, sajat linux process-el.
"Persze, mivel egyebkent rendszeresen osszezavarjak egymast a threadek."
Nem zavarjak, csak hajlamosak elvenni egymas elol a gepidot. Ha viszont tobb mag van, akkor egy darab rosszul tervezett 100%-on futo szal sem kepes 1 magnal tobbet megenni. Mar csak az a kerdes, hogy hany ilyen rosszul tervezett programot rak fel a felhasznalo, mert ha tobbet mint a magok szama-1, akkor szaggatni fog az egesz. A linux sajnos nem hard real time rendszer, a preemptiv multitask pedig nem kepes megfeleloen kezelni a hibas programokat ha azok rendelkeznek cpu joggal. (tehat nem direkt alacsony prioritasra lettek allitva)
Egyebkent jol megirt os-ek eseten kooperativ multitask-al is jol mukodik minden, ilyen volt a regi macos is (a macos 9-ig). Ott a win 1.0-ahoz is lemasolt modon minden egy szalon futott es a programok onket adtak at egymasnak a vezerlest, tobbnyire a gui uzenetfogado fuggveny ciklusbol torteno meghivasaval. Ezt javitotta a win32 api minden alkalmazashoz 1-1 ilyen ciklusra, aztan kesobb minden szalhoz 1-1 ciklusra. Az andoid alapbol 1 gui szalat indit, 1 ilyen message ciklussal, tehat a win32 stilusu uzenetkezelest hasznalja. Ha ez a szal tul hosszu ideig nem hivja meg az uzenet fogado fuggvenyt vagy tul sok uzenet gyulik fel, akkor irja ki a rendszer, hogy az alkalmazas nem valaszol. Viszont ha meg-meghivja, csak kozben tul sokat szamol, akkor csak siman szaggatni fog a rendszer, de a felhasznalo nem latja az okot.
ps: Erdemes megnezni neha mi megy az android felulete alatt a linux retegben, mind process, mind szal, mint kommunikacios szinten. Ahhoz kepest az x11 egy letisztult rendszer. Viszont pont ez adja azt a flexibilitast es skalazhatosagot ami miatt az android barmin elmegy, kenyerpiritotol cluster-ig. -
Papichulo #3 Ha egybites a user es egyszerre csak 1 dolgot csinal egy keszulekkel, akkor persze nehezebb a dolog, de nekik nem is kell 8 magos telefon.
Komolyan ugy gondolod, hogy egy mai OS-en egyetlen alkalmazas eseten egyszerre csak egy thread fut??? Ez meg a user spacere sem igaz... nemhogy globalisan.
Minden magra jut 1-1 feladat, amik egymast nem zavarva kepesek ezeket vegrehajtani.
Persze, mivel egyebkent rendszeresen osszezavarjak egymast a threadek... :) -
kvp #2 Az oprendszerrel semmi gond nincs, a linux erre pont jo. Az operacios rendszeren futo programokat kell tobbszalura irni vagy egyszerre tobb programot kell futtatni. Pl. mehet egyszerre egy bongeszo, egy stream-es medialejatszo, kozben a hatterben tolt lefele valamit es ekkor elinditjuk a jegyzettombot is. Minden magra jut 1-1 feladat, amik egymast nem zavarva kepesek ezeket vegrehajtani. Ha egybites a user es egyszerre csak 1 dolgot csinal egy keszulekkel, akkor persze nehezebb a dolog, de nekik nem is kell 8 magos telefon. Annak aki egyszerre jatszik es tart nyitva bongeszot, chat klienst es medialejatszot, annak viszont jol jon ha van eleg mag. -
#1 Valakit érdekel a magok száma? Valami rendes oprendszer kéne ami legalább a negyedét kihasználja rendesen, folyékonyan.