Hlavní navigace

Neo FreeRunner: Linux do kapsy

Neo Freerunner je spíš než běžný mobilní telefon v současné době vývojovou platformou. V tomto článku se podíváme na to, jaké možnosti Freerunner dává vývojářům. Je zde uveden také krátký přehled použitelných linuxových distribucí a shrnutí jejich nejdůležitějších odlišností od desktopového prostředí.

Tweetni to Odměnte autora  Jak to funguje?

V linuxovém světě vládne různorodost a jinak tomu není ani u linuxového telefonu. Dokonce by se možná dalo říci, že je to jeho nejzajímavější vlastnost. Existuje několik distribucí, které mají přímo předpřipravené obrazy root filesystemu: Om 2007.2, Om 2008.*, FSO, SHR,FDOM, Qt Extented, Debian, Gentoo, Android a Hackable:1. Řadu dalších distribucí se podařilo úspěšně na freerunnera naportovat a je možné si je vlastními silami přeložit ze zdrojových kódů. Mezi tyto distribuce patří: NeoPwn, RunningBear, Poky and Sato, PyNeo lead [1].

Bootloader

Předtím než se nastartuje systém, se stará o veškerou funkcionalitu telefonu bootloader. Neo Freerunner se běžně dodává s bootloaderem u-bootem v NAND a NOR paměti. U-boot [2] je na telefonu ve dvou kopiích, protože v případě jeho špatného přeflashování lze telefon oživit jenom pomocí debug boardu.

Při normálním startu telefonu není bootloader nijak vidět a přímo nastartuje operační systém naflashovaný v telefonu. V případě, že chceme naflashovat jinou distribuci nebo nastartovat operační systém z karty, tak pomocí kombinace AUX a POWER tlačítek můžeme zobrazit menu u-bootu (viz. Obrázek 1).

FreeRunner 1

Obrázek 1.: u-boot bootloader.

V pozici alternativního bootloaderu je nyní Qi [3]. V porovnání s u-bootem neobsahuje Qi menu a přenechává složitější věci, jako je inicializace grafické karty, na linuxovém jádře. Automaticky se snaží nastartovat nejdřív systém na µSD kartě a potom až systém v NAND paměti. Signalizace toho, co se právě děje, je vyřešená pomocí LEDek. Qi nabízí až o 40 sekund rychlejší start systému a do jisté míry řeší problémy s úplným vybitím baterie.

Dobrým důvodem k nasazení Qi může být fakt, že u-boot ve výchozím nastavení nepodporuje velká jádra (> 2 MB). Tato možnost se v u-bootu musí explicitně povolit.

Jádro

Nedílnou součástí linuxový distribucí je jádro [4]. OpenMoko distribuce používají Vanilla jádro mírně modifikované pro hardware Nea nebo Freerunera. Modifikace se týkají hlavně periferních zařízení (čtečka karet, gsm modul, akcelerometry). Implementace těchto modulů je přebraná z iPaqu nebo z TomTom GO. Celé jádro se všemi úpravami si každý může zkusit stáhnout z příslušného git repozitáře a přeložit [5].

Momentálně se mluví o dvou hlavních větvích jádra. O stable a vývojové verzi andy-tracking, kterou má na svědomí Andy Green (tedy alespoň její jméno).

Framework

Jednou z nejzajímavějších myšlenek, na které staví hlavně distribuce FSO, je framework, což je daemon, který běží v userspace a má za úkol zprostředkovat aplikacím jednotné „vysokoúrovňové“ rozhraní k hardware. Jak by to mělo vypadat, je znázorněno na obrázku 2.

FSO framework

Obrázek 2.: FSO framework

Konkrétně to znamená, že pro přístup k seznamu kontaktů, příjem sms zprávy či telefonního hovoru program nebude komunikovat přímo s modemem, ale jenom pošle zprávu pomocí dbusu frameworku. Vysokoúrovňovost potom spočívá v tom, že se framework sám rozhodne, jestli je hledaná osoba uložená na sim kartě nebo v interní databázi na sd kartě. Navíc není nutné znát příslušný AT příkaz vztahující se ke konkrétnímu modelu gsm čipu.

Grafické prostředí

I když je backend systému hodně důležitý, člověk přijde do kontaktu nejdřív s uživatelským rozhraním. Protože se jedná o Linux, tak v zásadě není problém na Freerunerovi spustit například KDE 4 [6]. Problém je v tom, že KDE 4 není přizpůsobené pro použití na telefonu, zvláště co se týče paměti a procesoru. Navíc je obrazovka telefonu poměrně malá (480×640). Používaní dotykové obrazovky a absence hardwarové klávesnice vyžaduje velmi odlišný přístup. Problém je konkrétně s pravým tlačítkem myši, které není v současné době nijak emulované. Pro pohodlné ovládání prsty jsou potřeba větší tlačítka, atd.

Co se týče technologie, lze používané přístupy rozdělit do dvou skupin. Na rozhraní používající vykreslování přímo do framebufferu nebo používající X Server. Použití framebufferu se pozitivně odráží na rychlosti celého zařízení naopak použití X Serveru umožňuje spuštění prakticky libovolné linuxové aplikace, aniž by bylo nutné ji celou překopat.

FreeRunner systém  FreeRunner systém  FreeRunner systém  FreeRunner systém

Obrázek 3.: Screenshoty různých distribucí. (zleva Om 2007.2, FSO, Qt Extended, Google Android)

Do první skupiny lze zařadit Qt Extended a Androida. Qt Extended je poměrně zralá distribuce pro handheldy
a mobilní telefony postavená na toolkitu Qt. Android je na druhou stranu poměrně nová věc, která se
snaží stavět na svém vlastním javovém frameworku.

Do druhé skupiny patří distribuce Openmoko Distribuce, přičemž Om 2007 využívalo vlastní rozhraní založené na GTK (toolkit qt nebyl součásti Om2007). Naproti tomu Om 2008.x, FSO a SHR využívají Enlightenment window manager.

Aplikace

Z předchozí informací o GUI a Frameworku celkem vyplývá, že aplikace mezi jednotlivými distribucemi nemusí být vždy přenositelné a to buď z důvodu použitého toolkitu nebo přílišné provázaností s hardware. Detailní popis jednotlivých aplikací je mimo možnosti tohoto článku, přehled schopností jednotlivých distribucí je shrnutý v [7].

Smutným faktem bohužel je, že aplikace pro telefonování a psaní sms v žádné ze zmíněných distribucí nejsou v ideálním stavu. Prakticky jedinou hotovou distribucí použitelnou pro běžného smrtelníka je Qt Extended 3.4, která ovšem nemá webový prohlížeč ani mapový software. Novější Qt Extended tyto programy už má, ale pro změnu trpí jinými nedostatky.

Reference

[1] http://wiki.o­penmoko.org/wi­ki/Distributi­ons
[2] http://wiki.o­penmoko.org/wi­ki/Bootloader
[3] http://wiki.o­penmoko.org/wi­ki/Qi
[4] http://wiki.o­penmoko.org/wi­ki/Kernel
[5] http://lists.o­penmoko.org/nab­ble.html#nabble-td2116807
[6] http://www.you­tube.com/watch?v=ky-gbF1rgb4
[7] http://wiki.o­penmoko.org/wi­ki/Distributi­ons#Features_by_dis­tribution.2Fre­lease_target

Ohodnoťte jako ve škole:
Průměrná známka 2,63
Tweetni to Odměnte autora  Jak to funguje?

Školení: Obsahová strategie a content marketing

DW - Školeny webcopywritingu
  • Proč je obsahový marketing výrazným trendem
  • Jak navrhnout užitečnou obsahovou strategii
  • Jaký obsah využít a které nástroje vám pomohou
  • Jak zlepšit workflow a výsledky copywritingu

Detailní informace o školení content strategy »

       

Přehled názorů

RE: Neo FreeRunner: Linux do kapsy
anonymní uživatel 24. 2. 2009 00:24
Nový
└ 
RE: Neo FreeRunner: Linux do kapsy
Eugenee 24. 2. 2009 06:19
Nový
 
├ 
RE: Neo FreeRunner: Linux do kapsy
xurpha 24. 2. 2009 08:30
Nový
 
│
├ 
RE: Neo FreeRunner: Linux do kapsy
krtek 24. 2. 2009 09:11
Nový
 
│
└ 
RE: Neo FreeRunner: Linux do kapsy
Jirka 24. 2. 2009 10:20
Nový
 
│
 
└ 
RE: Neo FreeRunner: Linux do kapsy
anonymní uživatel 24. 2. 2009 15:56
Nový
 
│
 
 
├ 
RE: Neo FreeRunner: Linux do kapsy
ja 24. 2. 2009 17:22
Nový
 
│
 
 
└ 
RE: Neo FreeRunner: Linux do kapsy
Sten 24. 2. 2009 23:37
Nový
 
└ 
RE: Neo FreeRunner: Linux do kapsy
Jozef Mlich 24. 2. 2009 09:50
Nový
 
 
└ 
RE: Neo FreeRunner: Linux do kapsy
jc 24. 2. 2009 13:16
Nový
Díky
D.A.Tiger 24. 2. 2009 00:31
Nový
delka bootu
anonymní uživatel 24. 2. 2009 00:44
Nový
└ 
Re: delka bootu
jc 24. 2. 2009 05:50
Nový
linux i na jinych PDA
krmi 24. 2. 2009 07:25
Nový
├ 
Re: linux i na jinych PDA
mirozbiro 24. 2. 2009 07:46
Nový
│
└ 
Re: linux i na jinych PDA
krmi 24. 2. 2009 07:47
Nový
│
 
└ 
Re: linux i na jinych PDA
krmi 24. 2. 2009 07:54
Nový
│
 
 
├ 
Re: linux i na jinych PDA
Jan Heřman 24. 2. 2009 08:39
Nový
│
 
 
│
└ 
Re: linux i na jinych PDA
krmi 24. 2. 2009 08:47
Nový
│
 
 
│
 
└ 
Re: linux i na jinych PDA
JeCh 24. 2. 2009 12:17
Nový
│
 
 
└ 
Re: linux i na jinych PDA
Radek Polak 24. 2. 2009 13:19
Nový
│
 
 
 
└ 
Re: linux i na jinych PDA
D.A.Tiger 24. 2. 2009 17:35
Nový
│
 
 
 
 
└ 
Re: linux i na jinych PDA
jc 24. 2. 2009 17:52
Nový
│
 
 
 
 
 
├ 
Re: linux i na jinych PDA
Vlastimil Labsky 24. 2. 2009 18:15
Nový
│
 
 
 
 
 
│
└ 
Re: linux i na jinych PDA
D.A.Tiger 24. 2. 2009 18:50
Nový
│
 
 
 
 
 
│
 
├ 
Re: linux i na jinych PDA
jc 24. 2. 2009 18:56
Nový
│
 
 
 
 
 
│
 
├ 
Re: linux i na jinych PDA
jc 24. 2. 2009 18:58
Nový
│
 
 
 
 
 
│
 
└ 
Re: linux i na jinych PDA
jc 24. 2. 2009 19:16
Nový
│
 
 
 
 
 
│
 
 
└ 
Re: linux i na jinych PDA
D.A.Tiger 24. 2. 2009 20:01
Nový
│
 
 
 
 
 
│
 
 
 
└ 
Re: linux i na jinych PDA
jc 24. 2. 2009 21:51
Nový
│
 
 
 
 
 
│
 
 
 
 
└ 
Re: linux i na jinych PDA
THR 25. 2. 2009 09:06
Nový
│
 
 
 
 
 
│
 
 
 
 
 
└ 
Re: linux i na jinych PDA
jc 25. 2. 2009 13:04
Nový
│
 
 
 
 
 
│
 
 
 
 
 
 
└ 
Re: linux i na jinych PDA
pedro 27. 2. 2009 13:31
Nový
│
 
 
 
 
 
└ 
Re: linux i na jinych PDA
Clock 25. 2. 2009 12:52
Nový
│
 
 
 
 
 
 
└ 
Re: linux i na jinych PDA
jc 25. 2. 2009 14:13
Nový
└ 
Re: linux i na jinych PDA
anonymní uživatel 24. 2. 2009 10:27
Nový
 
├ 
Re: linux i na jinych PDA
krmi 24. 2. 2009 10:39
Nový
 
└ 
Re: linux i na jinych PDA
networ 28. 2. 2009 22:56
Nový
RE: Neo FreeRunner: Linux do kapsy
Morker 24. 2. 2009 07:47
Nový
├ 
RE: Neo FreeRunner: Linux do kapsy
mm 24. 2. 2009 08:05
Nový
│
└ 
RE: Neo FreeRunner: Linux do kapsy
nobody 24. 2. 2009 08:35
Nový
├ 
RE: Neo FreeRunner: Linux do kapsy
anonymní uživatel 24. 2. 2009 08:06
Nový
└ 
RE: Neo FreeRunner: Linux do kapsy
anonymní uživatel 24. 2. 2009 16:06
Nový
 
└ 
RE: kdyby každý takový rýpal napsal 10 řádků kodu
petik72 24. 2. 2009 17:16
Nový
super pristroj
Jan Heřman 24. 2. 2009 08:52
Nový
├ 
Re: super pristroj
jc 24. 2. 2009 13:21
Nový
│
└ 
Re: super pristroj
Clock 25. 2. 2009 12:55
Nový
│
 
├ 
Re: super pristroj
jc 25. 2. 2009 13:14
Nový
│
 
└ 
Re: super pristroj
jc 25. 2. 2009 13:28
Nový
└ 
Re: super pristroj
Clock 25. 2. 2009 12:54
Nový
emulace pravého tlačítka
Stanislav Brabec 24. 2. 2009 12:34
Nový
└ 
Re: emulace pravého tlačítka
jc 24. 2. 2009 13:22
Nový
 
└ 
Re: emulace pravého tlačítka
Stanislav Brabec 24. 2. 2009 17:04
Nový
 
 
└ 
Re: emulace pravého tlačítka
jc 24. 2. 2009 17:29
Nový
skoda ze nema fotak
Štěpán Kňákal 24. 2. 2009 15:28
Nový
└ 
Re: skoda ze nema fotak
jc 24. 2. 2009 15:43
Nový
 
└ 
Re: skoda ze nema fotak
Štěpán Kňákal 24. 2. 2009 16:20
Nový
 
 
└ 
Re: skoda ze nema fotak
jc 24. 2. 2009 17:33
Nový
Debian
Pavel Šlechta 24. 2. 2009 22:23
Nový
Blby screenshot
Clock 25. 2. 2009 12:43
Nový
└ 
Re: Blby screenshot
jc 25. 2. 2009 13:12
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem