Золотые страницы форума GP2X Community
Новостной форум посвященный консолям GP2X
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   СудокуСудоку    Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Wiz глазами линуксоида: 1. Первый контакт.

 
Начать новую тему   Ответить на тему    Список форумов GP2X Community -> Статьи сайта
Предыдущая тема :: Следующая тема  
Автор Сообщение
EugeneP

Местный



Возраст: 43
Зарегистрирован: 04.06.2009
Сообщения: 170

Группы: 
[Модераторы Модераторы ]


СообщениеДобавлено: Вт Июн 09, 2009 6:16 pm    Заголовок сообщения: Wiz глазами линуксоида: 1. Первый контакт. Ответить с цитатой

Вступление

Это первая статья из планируемого цикла "Wiz глазами линуксоида". Автор не является заядлым геймером и гейм девелопером, более того Wiz - первый хэндхэльд который автор держит в руках со времён "Ну погоди" и "Весёлого повара." Однако, как относительно опытный пользователь линукса, автор надеется забраться поглубже в недра Wiz-а, и выйти в своих обзорах за рамки "пришло - вскрыл коробку - скачал эмуль - работает/не работает - залил кино - играет / не играет"

Многое из того что автор опишет, возможно, будет скучно и банально для опытных "портативных" разработчиков, и многое же будет непонятно и "не нужно" рядовым геймерам. Понимая это, автор с благодарностью примет любые комментарии и поправки, а так же с радостью прокомментирует любые тёмные места.

Итак,

~ # cat /proc/cpuinfo
...
Вернуться к началу
Посмотреть профильEugeneP сейчас оффлайн  Отправить личное сообщение
EugeneP

Местный



Возраст: 43
Зарегистрирован: 04.06.2009
Сообщения: 170

Группы: 
[Модераторы Модераторы ]


СообщениеДобавлено: Вт Июн 09, 2009 7:25 pm    Заголовок сообщения: Ответить с цитатой

Идут первые недели существования Виза в "дикой природе", с приставкой нам достаётся кабель для подзарядки от USB и диск с абсолютно ненужным мануалом.
Вопрос: что мы можем узнать о нутре Виза?
Ответ: Почти всё, ведь внутри полноценный линукс и бизибокс, правда пока (пока нет поддержки сети и терминального режима через кабель) нам доступен лишь один способ взаимодействия с консолью: записать шелл скрипт на карточку, и запустить его с этой карточки на приставке, а потом изучить логи. Это несколько муторно, но по сути мало отличается от интерактивной консоли.

Поехали!

Код:
#!/bin/sh
LOG="$(pwd)/log.txt"
echo "** CPUINFO:" > $LOG
cat /proc/cpuinfo >> $LOG
echo "** MOUNTS:" >> $LOG
cat /proc/mounts >> $LOG
echo "** MOUNT INFO:" >> $LOG
mount >> $LOG
echo "** DEV:" >> $LOG
ls -al /dev >> $LOG
echo "** ENV:" >> $LOG
env | sort >> $LOG
echo "** PROC:" >> $LOG
ls -al /proc >> $LOG
echo "** PS:" >> $LOG
ps aux >> $LOG
cd /usr/gp2x
exec ./gp2xmenu


Весь лог вы можете посмотреть в присоединённых файлах, мы же откомментируем избранные места:

** CPUINFO:
Processor : ARM926EJ-S rev 5 (v5l)
BogoMIPS : 263.78
Features : swp half thumb fastmult edsp java
CPU implementer : 0x41
CPU architecture: 5TEJ


Вот и первый сюрприз: Features: java, ведь это означает возможность аппаратной интерпритации ява-кода, не так ли? Интересная перспектива.

** MOUNT INFO:
ubi0:rootfs on / type ubifs (rw)
/proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
none on /dev/pts type devpts (gid=5,mode=620)
/dev/mtdblock2 on /mnt/nand type vfat (ioCHARSET=cp1251)
/dev/mmcblk0p1 on /mnt/sd type vfat (ioCHARSET=cp1251)
/dev/root on / type ext2 (rw)


Корневая ФС лежит поверх ubifs, что сильно продлит жизнь флэш-памяти, это замечательно, однако юзерский гигабайт на /dev/mtdblock2 - обычный FAT Sad
Кодировка имён файлов - UTF-8, это радует, значит мы не будем иметь неразрешимых проблем с национальными символами на этом уровне.

** DEV:
drwxr-xr-x 15 root root 0 Jun 9 22:37 .
drwxr-xr-x 16 root root 1120 Jun 5 01:45 ..
lrwxrwxrwx 1 root root 9 Jan 1 1970 dsp -> sound/dsp
lrwxrwxrwx 1 root root 4 Jan 1 1970 fb0 -> fb/0
crw-rw---- 1 root root 249, 0 Jan 1 1970 ga3d
lrwxrwxrwx 1 root root 11 Jan 1 1970 mixer -> sound/mixer
lrwxrwxrwx 1 root root 10 Jan 1 1970 mouse -> input/mice


Вся сила линуксовых интерфейсов с нами Smile

brw-rw---- 1 root disk 31, 0 Jan 1 1970 mtdblock0
brw-rw---- 1 root disk 31, 1 Jan 1 1970 mtdblock1
brw-rw---- 1 root disk 31, 2 Jan 1 1970 mtdblock2


А вот три раздела встроенной флэш-памяти: загрузочный блок, корневая ФС, юзерская зона.

** ENV:
DISPLAY=:0
HOME=/root
HOSTNAME=wiz
LANG=en_US.UTF-8
LC_ALL=de_DE.utf8
LD_LIBRARY_PATH=./:/lib:/usr/local/lib:/usr/lib
LD_PRELOAD=/lib/libiconv_plug.so
LOGNAME=root
OLDPWD=/root
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/X11R6/lib/pkgconfig
PS1=\u@\h:\w\$
PWD=/mnt/sd
SHELL=/bin/sh
TERM=vt100
TSLIB_CONFFILE=/etc/tslib/ts.conf-input
TSLIB_TSDEVICE=/dev/input/event0
USER=root


Причина то ли для радости то ли для расстройства: всё запускается от рута и имет полный доступ ко всему устройству. Страшновато Neutral Старшие товарищи, правда, говорят, что это тут традиции такие...
Переключение локали реализовано грамотно, на уровне gettext и пременных окружения - с локализацией будет минимум проблем.
DISPLAY ? X11R6 ?? На консольке явно нет иксов. Это, видимо, остатки "большой" системы которая путём урезания ненужного впихивалась в виз.

** PROC:
...
/proc следует изучить отдельно, однако конфигурация ядра (config.gz) отсутствует. Жаль...

** PS:
PID Uid VmSize Stat Command
1 root 532 S init [3]
2 root SW< [kthreadd]
3 root SW< [ksoftirqd/0]
4 root SW< [events/0]
5 root SW< [khelper]
39 root SW< [kblockd/0]
43 root SW< [kseriod]
65 root SW [pdflush]
66 root SW [pdflush]
67 root SW< [kswapd0]
68 root SW< [aio/0]
200 root SW< [mtdblockd]
201 root SW< [nftld]
215 root SW< [ubi_bgt0d]
216 root SW< [ubiblockd]
223 root SW< [kidle_timeout]
231 root SW< [kmmcd]
241 root SW< [ubifs_bgt0_0]
266 root 456 S < /sbin/udevd --daemon
631 root 880 S -sh
670 root SW< [mmcqd]
693 root 876 S /bin/sh ./examine1.gpe
720 root 444 S /usr/gp2x/gpid.gpu
735 root 928 R ps aux


Хм... "SW<" это драйвера наверно. Демоны: udev и какой-то /usr/gp2x/gpid.gpu

Выводы
Устройство крайне перспективно. Медиаплеер и платформа для эмуляции - это десятая часть возможностей виза, практически перед нами полноценный компьютер много мощнее техники на которй мы начинали.
Но, позволим себе повторится, с точки зрения безопасности, устройство являет собой одну большую дыру.

Скрипт и лог: WbEoL-01.tar.gz

to be continued...


Последний раз редактировалось: EugeneP (Ср Июн 10, 2009 5:46 am), всего редактировалось 3 раз(а)
Вернуться к началу
Посмотреть профильEugeneP сейчас оффлайн  Отправить личное сообщение
Hahahoj

Site Admin


Пол: Пол:Мужской
Возраст: 51
Зарегистрирован: 08.10.2008
Сообщения: 1848

Группы: 
[ Команда сайта ]
[Модераторы Модераторы ]


СообщениеДобавлено: Ср Июн 10, 2009 12:26 am    Заголовок сообщения: Ответить с цитатой

В скрипте log.txt надо везде заменить на ./log.txt, чтобы не искать этот лог потом, а взять из скриптовой папки. Cool
Если кому интересно и для сравнения - отдельные моменты лога снятые с GP2X МК2 с прошивкой 2.1.2:

l** CPUINFO:
Processor : Arm920Tid(wb) rev 0 (v4l)
BogoMIPS : 99.32
Features : swp half thumb
Hardware : MagicEye-MDK


Что интересного - параметр BogoMIPS, который является в какой-то мере мерилом производительности системы, поскольку при его подсчете считается не только частота проца, но и работа кеша. Можно подсчитать, что в неоптимизированных под конкретную консоль приложениях Виз работает в 2,66 раз шустрее чем GP2X F-серий. Так же видим, что нет трех параметров: fastmult edsp и той самой java

** MOUNT INFO:
rootfs on / type rootfs (rw)
/dev/root on / type yaffs (rw,sync,noatime)
none on /dev type devfs (rw)
none on /tmp type tmpfs (rw)
none on /proc type proc (rw)
/dev/mtdblock/4 on /mnt/yaffs type yaffs (rw,sync,noatime)
/dev/loop/7 on /mnt/nand type vfat (rw,sync,noatime)
/dev/discs/disc0/part1 on /mnt/sd type vfat (rw,sync,noatime)


Здесь видим одно единственное, имхо, существенное отличие: в качестве системы для корневого раздела на GP2X используется самая первая ФС для работы на флехах - yaffs
Ну, и никаких признаков кодировки имен файлов.

В разделе DEV у GP2X F-серий тоже много разного мусора, но нет 3d-визуализации вроде ga3d Дальше ничего особо интересного не нашел.

Лог файл:
http://wiz.rusbase.net/forum/files/hello/log.txt

GPE-батник:
http://wiz.rusbase.net/forum/files/hello/log_gp2x_MK2.gpe

Определение локали на Wiz: /usr/gp2x/common.ini:
[main] language=es_ES

_________________
Просто Вовк


Последний раз редактировалось: Hahahoj (Вс Сен 04, 2011 3:29 pm), всего редактировалось 1 раз
Вернуться к началу
Посмотреть профильHahahoj сейчас оффлайн  Отправить личное сообщение
Don Miguel

Профи



Возраст: 74
Зарегистрирован: 02.11.2008
Сообщения: 27

Группы: 
[Модераторы Модераторы ]


СообщениеДобавлено: Ср Июн 10, 2009 5:54 pm    Заголовок сообщения: Ответить с цитатой

Сразу понял, что линуксоид. Заче так извиняешься то? по гбх постам все видно.

Но ты очень толково расписал. просто замечательно.
Я вот просто линух юзер... не больше. Настроят - а я юзаю и компилю Cool)
увы.. у меня были до ПК времена.. похлеще... так что... не хочу тратить время на погружение в линух. И не могу Cool)
посему просто благодарен тебе.
может еще цикл напишешь подобного.. по-моему, это очень полезно

еще раз спасибо
Вернуться к началу
Посмотреть профильDon Miguel сейчас оффлайн  Отправить личное сообщение
EugeneP

Местный



Возраст: 43
Зарегистрирован: 04.06.2009
Сообщения: 170

Группы: 
[Модераторы Модераторы ]


СообщениеДобавлено: Ср Июн 10, 2009 6:31 pm    Заголовок сообщения: Ответить с цитатой

Don Miguel писал(а):
Сразу понял, что линуксоид. Заче так извиняешься то? по гбх постам все видно.
...
может еще цикл напишешь подобного.. по-моему, это очень полезно
...


Пожалуйста Very Happy Для меня это тоже интересный новый опыт - ARM, портативный девайс, тачскрин...

Планирую продолжать обязательно. Только определюсь какую тему дальше взять. На выбор много чего:

- Анализ /proc, модулей, драйверов (продолжение этого поста)
- Выцеплпние прошивки, разбор содержимого корневой ФС, рассуждение о резервном копировании (продолжение топика на GBX)
- Локализация прошивки и приложний (продолжение топика на GBX)
- "Как оно работает?" - разбор работы прошивки на верхнем уровне. Старт - пуск приложения - выключение. Возможные усовершенствования.
- Линуксовые хэндхэльды: Виз, ГПх, Динго - параллели, возможности единого подхода (потребуется помощь владельцев девайсов)
- Пространные рассуждения о методах ввода на устройствах с малым числом кнопок/ тачскрином (и ругань разработчиков за извраты и отсутствие единого подхода)
- Линукс девайс как система: многозадачность, межпроцессовое взаимодействие, безопасность, потенциал.
- Возможные интересные применения Виза (внешний джойстик с интеллектом, графический планшет и т.п.)

Ещё хочу написать про Феникс малёк.

Подготовка каждого топика - дня два-три, если какая тема больше глянется народу ( да, вам, четверым активным Very Happy ) то с неё и начну.
Вернуться к началу
Посмотреть профильEugeneP сейчас оффлайн  Отправить личное сообщение
Admin

Site Admin



Возраст: 51
Зарегистрирован: 07.10.2008
Сообщения: 13

Группы: Нет

СообщениеДобавлено: Ср Июн 10, 2009 7:27 pm    Заголовок сообщения: Ответить с цитатой

- Анализ демонов, модулей и драйверов
- Локализация прошивки и приложений (продолжение топика на GBX)
затем по читалкам / букридерам, далее Феникс и руссификация Феникса.
Вернуться к началу
Посмотреть профильAdmin сейчас оффлайн  Отправить личное сообщение Отправить e-mail
btGrave

Постоялец


Пол: Пол:Мужской
Возраст: 78
Зарегистрирован: 10.11.2008
Сообщения: 15

Группы: Нет

СообщениеДобавлено: Сб Июн 13, 2009 9:05 am    Заголовок сообщения: Ответить с цитатой

Вообще читать шибко интересно, жду различных продолжений сабжа.
_________________
Let the chainsaw sing and cut them half!!!
Вернуться к началу
Посмотреть профильbtGrave сейчас оффлайн  Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов GP2X Community -> Статьи сайта Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы можете скачивать файлы




Powered by phpBB © 2001, 2005 phpBB Group

Locations of visitors to this page