abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:22 | Nová verze

    HollowByte je zranitelnost typu Denial of Service (DoS) v kryptografické knihovně OpenSSL. Útočník může odesíláním škodlivého payloadu o velikosti pouhých 11 bajtů zaplnit paměť serveru. OpenSSL před ověřením dat vyhradí nepřiměřený blok paměti (až 131 KB). Server pak čeká na data, která nepřišla. Zranitelnost je opravena ve verzích OpenSSL 4.0.1, 3.6.3, 3.5.7, 3.4.6 a 3.0.21.

    Ladislav Hagara | Komentářů: 0
    dnes 13:44 | Komunita

    Ve španělské A Coruñě probíhá GUADEC 2026, tj. letošní konference vývojářů a uživatelů desktopového prostředí GNOME. Videozáznamy přednášek jsou k dispozici na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Komunita

    Společnost Collabora ve spolupráci s Valve vyvíjí Holo Core, tj. port Arch Linuxu pro ARM64 procesory (AArch64), který bude pohánět VR headset Steam Frame. Pro testování Arch Linuxu pro AArch64 jsou k dispozici binární balíčky, zdrojové kódy i kontejner pro Docker nebo Podman.

    Ladislav Hagara | Komentářů: 0
    dnes 13:00 | IT novinky

    Mikroprocesor Zilog Z80 byl oficiálně uveden na trh před 50 lety, tj. v červenci 1976. Výroba mikroprocesoru skončila v roce 2024.

    Ladislav Hagara | Komentářů: 0
    dnes 02:55 | Bezpečnostní upozornění

    Výzkumníci ze společnosti ESET objevili 11 zapomenutých UEFI shim zavaděčů, které byly podepsány společností Microsoft, a které umožňují útočníkům obejít ochranu UEFI Secure Boot na většině zařízení. Microsoft je zneplatnil (přidal jejich hash do databáze dbx) v rámci aktualizace Patch Tuesday dne 9. června 2026. Uživatelé Linuxu mohou databází aktualizovat pomocí LVFS. Ověřit zneplatnění zavaděčů lze pomocí skriptu uefi-dbx-audit. Jedná se o CVE-2026-8863 a CVE-2026-10797.

    Ladislav Hagara | Komentářů: 3
    včera 16:55 | Zajímavý software

    pico-usb-wifi je open source firmware pro Raspberry Pi Pico W, který jej promění v USB Wi-Fi adaptér. Po připojení k počítači se objeví jako zařízení USB CDC-NCM.

    Ladislav Hagara | Komentářů: 0
    včera 16:00 | IT novinky

    Americká společnost Google ze skupiny Alphabet bude muset podle nových požadavků Evropské unie umožnit společnosti OpenAI i dalším konkurentům v oblasti umělé inteligence (AI) a internetových vyhledávačů přístup ke svým službám. Ve svém rozhodnutí o tom včera informovala Evropská komise (EK). Opatření má zajistit dodržování pravidel, jejichž cílem je omezit v EU tržní sílu velkých technologických firem. Google s tím nesouhlasí.

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Komunita

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 150. Aktuální verze Firefoxu je 152. V březnu bylo oznámeno, že od září přejde Chrome na dvoutýdenní cyklus vydávání verzí. To by znamenalo, že Chrome v číslování verzí Firefox brzy přeskočí. Vývojáři Firefoxu proto také od září přecházejí na dvoutýdenní cyklus vydávání verzí. :-)

    Ladislav Hagara | Komentářů: 5
    včera 00:22 | Zajímavý software

    Microsoft Comic Chat (Wikipedie), tj. grafický IRC klient z devadesátek, který převáděl konverzace na IRC do podoby komiksových panelů, a který zpopularizoval font Comic Sans, je dnešním dnem open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 1
    16.7. 19:55 | Nová verze

    Byla vydána (𝕏) nová verze 26.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.7 je Xenial Xenops. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2159 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Nokia N900 – Maemo 5 pod povrchem

    2. 4. 2010 | Andrej Kruták | Recenze | 7848×

    Pozorný čitateľ AbcLinuxu.cz už iste zaznamenal, že osud systému Maemo 5 je už spečatený a Nokia s ním zrejme v ďalších prístrojoch už nepočíta. Miesto neho sa už pracuje na systéme MeeGo. Napriek týmto skutočnostiam sa v dnešnom diele seriálu o N900 pozrieme na to, ako vyzerá systém Maemo 5 vo vnútri.

    Obsah

    Je totiž celkom pravdepodobné, že veľká časť kódu aktuálneho systému bude znovu použitá – keď pre nič iné, tak preto, že Maemo 5 je schopné bežať na architektúrach ARM aj x86. Navyše systémová architektúra, knižnice, správca okien či v neposlednej rade aj ovládače hardvéru – to všetko bolo pravdepodobne príliš nákladné na vývoj, než aby sa úplne vyhodilo. Napriek tomu určite dôjde aj k zásadným zmenám – grafické prostredie bude založené na Qt, správca balíčkov bude založený na RPM atď. – to všetko sú ale veci, ktoré priamo príliš neovplyvňujú štruktúru systému ako takého.

    Vrstvy

    link

    Jadro systému

    link

    Základom systému je samozrejme linuxové jadro obohatené o potrebné ovládače – ako sme videli v predchádzajúcej časti, ide o vcelku otvorený kód. Systém načítava jadro pomocou proprietárneho Nolo bootloadera – a po inicializácii dôjde k spusteniu init procesu (konkrétne ide o „upstart“ init démona), ktorý zavedie relatívne štandardné prostredie odvodené od Debianu (vrátane balíčkovacieho systému). V základnej inštalácii sa ale napríklad nedočkáme plného shellu – podobne, ako u mnohých embedded zariadení, sa používa „iba“ busybox. Navyše nie je jednoducho možné shell vymeniť – už nejeden užívateľ po tejto akcii dostal Maemo do nebootovateľného stavu.

    maemo architecture

    Kvôli hardvérovým obmedzeniam N900-ky, konkrétne 256 MiB veľkej NAND flash pamäti, je súborový systém organizovaný trochu zvláštne. Na spomenutej 256 MiB partícii, ktorá používa filesystém „ubifs“, sa nachádza väčšina systémového software. Vzhľadom k povolenej kompresii sa na ňu vôjde drochu viac ako 256 MiB dát. Usporiadanie súborov je podobné ako na desktope – nájdeme tu adresáre ako /bin, /etc, /dev, /usr či /var. 32GB flash pamäť je vo východzom nastavení rozdelená na 2GiB partíciu (ext3) obsahujúcu /home/opt, 512MiB partíciu na swap a zvyšok sa montuje k adresáru /home/user/MyDocs ako FAT32 oddiel. Nedostatok miesta na root oddieli sa rieši trikom – vývojári Maemo odporúčajú všetkým vývojárom aplikácií, ktorých súbory sa inštalujú do /, a sú väčšie ako cca. 300 – 500 kiB, aby sa tieto súbory nainštalovali do /opt adresára, a v / sa iba vyrobia symlinky. Rozsiahle dátové súbory (napr. levely pre open-arena) sa navyše inštalujú na spomenutú FAT partíciu. Toto riešenie bolo zvolene hlavne kvôli nízkemu výkonu 32GiB flash pamäti – pri spoločných čítaniach/zápisoch sa výrazne znižuje jej rýchlosť, takže prípadné prístupy na oddiely na tejto pamäti by mohli nepríjemne spomaliť celý zvyšok systému, nie len „hladnú aplikáciu“.

    K základným komponentom systému ďalej patria OpenGL ES knižnice (v najnovších verziách firmware by už mali byť podporované štandardy 2.0 aj 1.1), OpenSSL, X server (vrátane rozšírení XComposite, XRender či XRandR), DBus, HAL atď.

    Vedľa toho bežia démoni ovládajúci napr. telefónne a dátové funkcie (phonet), napájanie a GPS (démon prístupný cez liblocation) – všetko sú to aktuálne closed-source komponenty.

    Knižnice

    link

    V systéme sa používa mnoho rôznych knižníc – od sqlite, glib či Gtk+ cez pango a gtkhtml, Cairo až po SDL. Užívateľ/programátor ďalej môže vyrábať vlastné Hildon Widgets, ktoré je možné potom umiestniť na plochu a používať na zobrazovanie rôznych informácií. Súčasťou knižníc je napríklad aj tzv. „libosso“, ktorá slúži na „ukrytie“ niektorých DBus volaní pred vývojármi – v tomto prípade v pozitívnom zmysle. DBus rozhranie totiž nie je úplne pohodlné na programovanie – ani pri jednoduchších aplikáciách nie je triviálne ho používať. Libosso teda často používané volania zabaľuje do funkcií, takže vývojár sa nemusí starať o názvy objektov či rozhraní, zmeny v DBus atď. Viac informácií o DBus v Maeme je možné nájsť napríklad na wiki.maemo.org.

    maemo connectivity licenses

    Multimédiá

    link

    O vrstvu vyššie sa nachádzajú rôzne abstrakcie hardvéru. Napríklad značnú časť multimediálnych funkcií rieši PulseAudio, ktoré sa stará o transparentný a unifikovaný prístup k zvukovým funkciám systému. Umožňuje napríklad nezávislé smerovanie audia v systéme – takže aj keď sú pripojené sluchátka, pri telefonáte sa môže vyzváňanie zároveň smerovať do nich, ale aj do bluetooth headsetu či do hlasitých reproduktorov telefónu (zároveň so sluchátkami). Navyše je vďaka tomu možné nastaviť hlasitosti nezávisle na sebe – čo sa zíde znovu v prípade zvonenia, ak je napr. stiahnutá hlasitosť prehrávania hudby, ale zvonenie chceme stále hlasité. Okrem toho PulseAudio v systéme zrejme slúži aj na dynamické obmedzovanie hlasitosti – zabraňuje tak poškodeniu vstavaných reproduktorov.

    V systéme ďalej nájdeme podporu pre rôzne video a audio kodeky, ktoré sú relatívne jednoducho prístupné cez rozhranie GStreamer. Toto rozhranie tak isto umožňuje napr. v python aplikáciách pracovať s kamerou – je zrejmé, že v prípade interpretovaných jazykov je realtime práca s týmto druhom dát nerealizovateľná. Vďaka GStreameru je ale možné vyrobiť reťazec akcií typu „získaj obrázok – pridaj kontrast – zobraz v okne“, ktorý sa vykonáva pomocou optimalizovaného binárneho kódu – (už starší) príklad je možné vidieť napr. na maemo wiki. Okrem toho je možné použiť Phonon rozhranie integrované v Qt – čo zjednodušuje portovanie multimediálnych aplikácií aj na ďalšie platformy okrem linuxových.

    Vyčerpávajúci popis multimediálnych rozhraní je možné nájsť opet napríklad na wiki.maemo.org.

    Telekomunikačné rozhrania

    link

    Telefónne funkcie sú na najnižšej úrovni ovládateľné pomocou AT príkazov, ktoré sa doručujú pomocou aplikácie phonet. Na vyššej úrovni je možné používať DBus volania rôznych démonov (napríklad cez objekt /com/nokia/csd/Call) – pomocou nich je možné relatívne jednoducho zadefinovať napr. vlastné funkcie, ktoré budú volané pri príchodzích hovoroch či sms (a vyhnúť sa tak potrebe pollingu nových udalostí).

    Asi najdôležitejšou súčasťou komunikačného rozhrania Maema je RTCom framework. Tento framework má viacero vrstiev a priamo či nepriamo pokrýva služby aj aplikácie pre komunikáciu ako cez internet (napr. instant messaging), tak cez mobilné siete (sms a telefonáty). Zďaleka nie všetky komponenty tohoto frameworku sú opensource – ako je možné vidieť aj na odkazovanej stránke o RTCom. Na druhej strane podľa všetkého Nokia mnoho súčastí časom otvorí – námatkovo napr. rtcom-eventlogger bol v dobe uvedenia N900 uzavretý, kdežto teraz už je možné jeho zdrojové kódy stiahnúť.

    Ako back-end RTCom slúži framework telepathy. Toto modulárne rozhranie umožňuje Maemu mnoho zaujímavých vecí – od jednoduchej rozšíriteľnosti o nové protokoly (napr. plugin telepathy-haze umožňuje komunikáciu pomocou ICQ, MSN atď. – priamo cez štandardné telekomunikačné rozhrania Maema), cez spájanie kontaktov až po zaznamenávanie správ. Na ukladanie väčšiny dát RTCom/telepathy sa používa databáza sqlite, takže pri troche snahy nie je pre znalých problém spracovať dáta v mobile všetkými myslitelnými spôsobmi. Samozrejme to so sebou nesie aj nebezpečenstvo zneužitia osobných dát – na druhej strane väčšina linuxákov vie, že „security through obscurity“ príliš nefunguje. Naopak, veľkou výhodou tohoto prístupu je možnosť jednoduchého importu vlastných dát (kontaktov či správ z predchádzajúcich mobilov) priamo, pomocou SQL dotazov.

    maemo control services system

    Desktop/Window manager

    link

    Nad X serverom beží správca okien Matchbox a grafické prostredie Hildon. Prostredie Maemo 5 je celé založené na knižniciach Gtk+, do budúcnosti už ale Nokia skôr plánuje použitie Qt. Podľa všetkého by ale Gtk+ malo ostať podporova(teľ)né komunitou aj v ďalších verziách Maemo/MeeGo.

    Ako sa dá zrejme od grafického rozhrania očakávať, jeho detailný popis by zabral mnoho článkov. Pre predstavu, na tejto stránke je stručne popísaný prehľad UI frameworku Maema. Z najzaujímavejších komponentov užívateľského rozhrania vyberáme:

    • hildon-desktop: Kompozitný manažér pre aplikácie, fungujúci na bázi OpenGL ES 2.0. Vďaka tomuto spôsobu vykresľovania grafického prostredia je možné používať rôzne eye-candy (napr. rozmazanie pozadia v správcovi procesov).
    • hildon-home: Zobrazuje home applety, obrázky na pozadí atď. Home applety sa pôvodne písali len pomocou Gtk+, ale po relatívne nedávnej aktualizácii je možné písať applety už aj v Qt.
    • hildon-status-menu: Obsahuje rôzne widgety (napríklad prepínač statusu IM účtov) a v minimalizovanom stave prípadne malé ikonky (napr. stav wifi, či vyťaženie CPU). Aktuálne je zrejme možné tieto widgety vytvárať len v Gtk+.

    Aplikačný software

    link

    Až na telekomunikačné rozhranie je Maemo platforma relatívne otvorená – k väčšine (dôležitých) komponentov je možné získať zdrojové kódy pod licenciou (L)GPL. S aplikáciami je to trochu zložitejšie – takže s úpravou kalkulačky či mapového software počítať asi nemôžme. Mnoho aplikácií ale otvorených je (napr. browser), ďalšie možno budú – a už teraz existuje mnoho adekvátnych opensource náhrad za proprietárne aplikácie. V každom prípade situácia nie je určite zásadne horšia než v prípade Androidu či MacOS X.

    Záver

    link

    V dnešnom článku sme si stručne zhrnuli architektúru a rozhrania poskytované operačným systémom Maemo 5. Napriek všetkým kladom sa síce stále nejedná o dokonalý systém (určite nie podľa definície RMS) – je ale vidno veľké úsilie Nokie o otvorenosť vývoja. Táto snaha by mala byť ešte viac viditeľná pri vývoji nadchádzajúceho systému – spoločného podniku Intelu a Nokie – MeeGo. Je ťažké dnes povedať, čo to bude znamenať pre N900ku. Je síce isté, že Nokia bude naďalej pracovať na vývoji aktualizácií Maemo 5 – menej isté už ale je, či sa dočkáme ďalšieho zariadenia s týmto systémom. Je tak isto otázne, či bude N900ka dostatočne výkonná/upgradeovateľná na prevádzkovanie MeeGo. Na druhej strane, Nokia sľubuje zachovať softvérovú kompatibilitu (takže bude možné vyvíjať software pre obe platformy za použitia toho istého kódu) – uvidíme teda, do akej miery sa jej to podarí dodržať.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    2.4.2010 08:03 Honza
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    Nedávno jsem chtěl cosi pro maemo naprogramovat a měl jsem z toho dost smíšené pocity. Hlavně, že je tam taková směska knihoven a nástrojů, kažná knihovna má jinou dokumentaci, občas i jinou licenci, jiné webové stránky, někdy i jiný způsob překladu, je docala práce se v tom vyznat. Do toho další knihovny vznikají, jiné zanikají. Někdy se 2 nástroje na jednu věc používají najednou. Trochu jako když pejsek a kočička pekli dort. Takovej binec, prostě jako když člověk píše v C nebo C++ na normálním linuxu. Pokud třeba máte selský rozum a znalost C++, jinak o linuxu nic nevíte a chcete napsat na linuxu ekvivalent GUI přehráveče wavů z win3.1, tak nejdřív musíte nastudovat x gui knihoven, x audio knihoven, knihovnu na vlákna, unixové procházení adresářů, pár buildovacích systémů. Pak učinit n rozhodnutí a nastudovat n knihoven... Pokud chcete na maemu udělat něco specifického pro telefon, tak je problém principiálně stejný, jen horší v tom, že tentýž problém řešilo řádově méně lidí, takže google pomáhá také řádově méně. V systémech s jedním API (Qt, J2SE, Android, ...) začátečník znalý jazyka a vlastnící selský rozum ten GUI přehrávač nebo cokoli jiného napíše řádově rychleji a kvalitněji.
    2.4.2010 10:59 ewqrqwr
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    a tam neni nejaka "nejvrchnejsi vrchni" vrstva, ktera vsecko dole obali a programator pak ma uz jen jedno API ?
    2.4.2010 12:41 andreeeeee
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    ja myslim ze absolutna vacsina programatorov skonci pri Qt, maximalne gstreameri..

    kazdopadne ano - ten "interface" je kus chaoticky - na druhej strane to bol asi zamer - pouzit existujuce kniznice atd. Vdaka tomu je mozne portovat desktopovy software (resp. vyvijat multiplatformovo) ovela jednoduchsie, ako na nejaky WebOS a spol.
    2.4.2010 15:32 Honza
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    No, já jsem tam nic takového nenašel :-) Naštěstí jsem to mohl zabalit dřív, než jsem skutečně začal něco psát. Ale jestli jsem to pochopil, tak se to bude postupně posouvat směrem ke Qt, kde bude api i na telefon, takže tam asi nějaké všeobjímající api bude. (Pokud je tu nějaký znalec, nechť mě opraví, můj kontakt s maemem byl jen povrchní.)
    Rezza avatar 2.4.2010 16:53 Rezza | skóre: 25 | blog: rezza | Brno
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    Ano, bude to v Qt, ale to zase bude do nejakych bindingu balit zakladni veci - ala Telepathy-Qt (i kdyz ma byt i jiste telefonni API). Ona je to i vyhoda, i nevyhoda v jednom a tezko rict, co je lepsi.
    2.4.2010 08:58 JVid
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    … Na spomenutej 256 MiB partícii, ktorá používa filesystém „rootfs“ …
    To ale není filesystém, je to jenom speciální instance ramfs/tmpfs vytvořená proto, aby každý počítač měl vždy nějaký kořen. Pak se při bootu většinou postupuje tak, že se do něj rozbalí initramfs, nebo se přes rootfs namountuje opravdový root umístěný jinde.
    2.4.2010 09:22 andreeeeee
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    mate samozrejme pravdu, sice mi to bolo pri pisani clanku podozrive - ale nejak som na to potom zabudol...

    po nabootovani je sice root filesystem rootfs, ale je nan (podla mount) rovno do / namontovany ubifs z tej 256 particie.. dufam :)

    vyzera to takto:
    rootfs on / type rootfs (rw)
    ubi0:rootfs on / type ubifs (rw,bulk_read,no_chk_data_crc)
    
    2.4.2010 15:32 Kvakor
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    V dokumentaci jádra se na jednom místě dokonce píše, že ramfs namountovaný na / zjednodušuje kód, protože se nemusí nikdy testovat, jestli existuje nějaký souborový systém - je zaručeno, že vždy alespoň jeden existuje. Této technice se říká Slon v Káhiře podle série (nejen) programátorských vtipů, popisujících alghoritmus na hledání slonů v Africe .-)
    Ondřej Kuda avatar 2.4.2010 16:31 Ondřej Kuda | skóre: 27 | blog: obcasny_blog
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    MeeGo uz je dostupne a melo by behat i na N900. Ze by autor zrecenzoval i Meego na N900? ;-)
    The images available today are: Intel Atom-based netbooks, ARM-based Nokia N900, and Intel Atom-based handset (Moorestown). These images can be downloaded from http://meego.com/downloads
    Rezza avatar 2.4.2010 16:52 Rezza | skóre: 25 | blog: rezza | Brno
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    Aktualni Meego neni nic jineho, nez zaklad systemu, ktery nabootuje do konzole...
    andree avatar 2.4.2010 20:04 andree | skóre: 39 | blog: andreeeeelog
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    ak autor bude mat n900 do doby, ked meego bude bootovat a bude ako-tak pouzitelne, nevidi v tom problem :-))) zatial ale tam toho fakt moc na recenziu nie je asi :o))
    2.4.2010 17:43 chocholo
    Rozbalit Rozbalit vše Re: Nokia N900 – Maemo 5 pod povrchem
    Ted to nemohu najit, ale na nejakem Maemo related blogu jsem cetl o Meego od Nokie, ze to nebude uplne Meego, respektive bude, ale bude mit jiny zpusob konfigurace, jiny balickovaci system a par dalsich "nepodstatnych" rozdilu. Clanek je o tom, jak bude Meego roztristena znacka, protoze vsechno a nic nebude meego (verze pro mobily, verze (nekompatibilni) pro netbooky, verze pro notebooky, Nokia verze, vse Meego bez rozliseni).

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.