Android

всё относительно мобильных гаджетов и приложений

Модераторы: Olej, adminn, vikos

Правила форума
Все сообщения не по теме форума будут, без каких либо уведомлений, удаляться, а их авторы - убираться из регистрации.
Язык сообщений - исключительно русский.
Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 20 ноя 2011, 16:45

Olej писал(а): 4. стандартный (ARM архитектура) Android (образ .iso) запущенный в виртуальной машине QEMU (в варианте qemu-arm - в составе репозитария вашего дистрибутива такого варианта, почти наверняка, нет, но это легко ставится с исходников с сайта qemu).
До этого способа у меня (пока ;-) ) руки не дошли ...
В том, что для архитектуры ARM не помещают вариант QEMU в репозитарии пакетных дистрибутивов Linux - это я ошибся :-( - так раньше было ... проверяем:

Код: Выделить всё

[olej@notebook ~]$ yum list all qemu*
...
Установленные пакеты
qemu.i686                                                    2:0.12.3-4.fc12                                       @updates-testing
qemu-common.i686                                             2:0.12.3-4.fc12                                       @updates-testing
qemu-img.i686                                                2:0.12.3-4.fc12                                       @updates-testing
qemu-kvm.i686                                                2:0.12.3-4.fc12                                       @updates-testing
qemu-kvm-tools.i686                                          2:0.12.3-4.fc12                                       @updates-testing
qemu-launcher.noarch                                         1.7.4-7.fc12                                          @fedora         
qemu-system-arm.i686                                         2:0.12.3-4.fc12                                       @updates-testing
qemu-system-cris.i686                                        2:0.12.3-4.fc12                                       @updates-testing
qemu-system-m68k.i686                                        2:0.12.3-4.fc12                                       @updates-testing
qemu-system-mips.i686                                        2:0.12.3-4.fc12                                       @updates-testing
qemu-system-ppc.i686                                         2:0.12.3-4.fc12                                       @updates-testing
qemu-system-sh4.i686                                         2:0.12.3-4.fc12                                       @updates-testing
qemu-system-sparc.i686                                       2:0.12.3-4.fc12                                       @updates-testing
qemu-system-x86.i686                                         2:0.12.3-4.fc12                                       @updates-testing
qemu-user.i686                                               2:0.12.3-4.fc12                                       @updates-testing
Вот кто нам нужен:

Код: Выделить всё

[olej@notebook ~]$ which qemu-system-arm
/usr/bin/qemu-system-arm

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 20 ноя 2011, 19:08

Olej писал(а): Вот кто нам нужен:

Код: Выделить всё

[olej@notebook ~]$ which qemu-system-arm
/usr/bin/qemu-system-arm
Но всё равно, во всём, что касается QEMU, сверяться отправляемся сюда: http://wiki.qemu.org/Main_Page - на их домашнюю страницу, тем более, что только совсем недавно команда QEMU решили, что они созрели до ресурс-кандидата 1-й версии:
Nov 7, 2011
QEMU version 1.0-rc1 is out. See the Download page for more information.
И это при том, что многие годы весь мир пользовался QEMU в версиях 0.Х ... да и VirtualBox Sun Microsystems строила на исходных кодах QEMU.
Это вот значит, что вот так выглядят проекты, в которых разработчики относятся к своим результатам ответственно ;-)

P.S. Ну, ещё вот сюда:
1. http://jack.kiev.ua/docs/qemu-doc-ru.html :
Документация пользователя эмулятора процессора QEMU
ПЕРЕВОД: Павел Марьянов <acid_jack@ukr.net>, март 2006
2. http://www.xakep.ru/magazine/xa/118/094/1.asp -
Виртуальный полигон: Эмулируем аппаратное обеспечение различных платформ с помощью QEMU
Владимир «turbina» Ляшко (v.turbina@gmail.com)
... и если очень интересно станет, то ещё сюда: а). кое-что об установке и б). настройки сети и роутингов.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 22 ноя 2011, 21:03

Olej писал(а):можно 4-мя способами (4-й я ещё пока не называл и не пробовал):
И интересует меня теперь именно 4-й способ:
Olej писал(а): 4. стандартный (ARM архитектура) Android (образ .iso) запущенный в виртуальной машине QEMU (в варианте qemu-arm - в составе репозитария вашего дистрибутива такого варианта, почти наверняка, нет, но это легко ставится с исходников с сайта qemu).
Особенно после того, как в другой теме Linux для embedded применений я собирал "с нуля" образ Linux под ARM процессор, и это запускалось что-то типа:

Код: Выделить всё

[olej@nvidia images]$ qemu-system-arm -kernel zImage -initrd rootfs.cpio -M versatilepb -nographic
...
Обыскался по интернету, естественно, нет там такого, как Android-образ ... есть только множество подростковой болтовни "как разобрать образ system.img" ;-)
Имеется в виду - смотрим родной Android SDK, вот тот, который:
Olej писал(а): 2. симулятор из состава родного SDK Android (выше обсуждалось и где берётся и как ставится);
и там находим:

Код: Выделить всё

/home/olej/android-sdk-linux_x86/system-images/android-14/armeabi-v7a
[olej@nvidia armeabi-v7a]$ ls -l *.img
-rw-rw-r--. 1 olej olej    162858 Ноя 17 11:50 ramdisk.img
-rw-rw-r--. 1 olej olej 175646592 Ноя 17 11:50 system.img
-rw-rw-r--. 1 olej olej   3801600 Ноя 17 11:50 userdata.img
там же рядом:

Код: Выделить всё

[olej@nvidia tools]$ pwd
/home/olej/android-sdk-linux_x86/tools
[olej@nvidia tools]$ ls -l emu*
-rwxrwxrwx. 1 olej olej   21928 Ноя 17 04:14 emulator
-rwxrwxrwx. 1 olej olej 2310224 Ноя 17 04:14 emulator-arm
-rwxrwxrwx. 1 olej olej 2276020 Ноя 17 04:14 emulator-x86
- это и есть сами симуляторы ... в замечательном запуске из командной строки...

Вот здесь и следует разбираться относительно образа ARM Android для выполнения под QEMU... и сразу же находим в разделе разработчиков
http://developer.android.com/guide/deve ... lator.html
The Android emulator is a QEMU-based application that provides a virtual ARM mobile device on which you can run your Android applications.
Вот это самое оно и есть! ;-)

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 29 ноя 2011, 15:44

Новость свежайшая, прямо от сегодня, которой грех не поделиться :lol: , http://habrahabr.ru/blogs/android_development/133609/
ARM выпустила Development Studio 5 Community Edition — среду разработки для Android:
Вчера ARM выпустил среду разработки для Android — ARM Development Studio 5 Community Edition, учитывающую особенности микропроцессоров ARM, прелесть которой заключается в том, что эта версия стала бесплатной, в отличие от ранее представленной коммерческой версии. Конечно, выпущенная среда CE содержит ограниченный функционал коммерческой версии, однако же все основные инструменты для написания и отладки кода присутствуют в полной мере — включая стандартный SDK (Software Development kit) и набор NDK (Native development kit).

Среда разработки представляет из себя кастомизированный Eclipse, сама разработка ведется на С++.

Утвердается, что программы, написанные при помощи среды разработки ARM при аналогичных условиях работают в 4 раза быстрее, чем Java-код, запущенный в аналогичных условиях и написанный в Eclipse при помощи ADT от Google.
- выделено мной ... чему я не могу поверить, пока этому не будет дано внятных объяснений.
Доступны версии для Windows и Linux. Страница продукта находится здесь.
- "здесь" - это: http://www.arm.com/products/tools/softw ... /index.php
Изображение

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 19 мар 2012, 23:22

http://www.nixp.ru/news/Linux-3-3-слиян ... I-C6X.html
Linux 3.3: слияние с наработками Android; Open vSwitch, поддержка TI C6X3

Вышла новая версия ядра Linux, являющегося сердцем многочисленных дистрибутивов, — 3.3.

Самым значимым изменением, представленным в Linux 3.3, можно назвать долгожданное слияние кодовой базы основной ветки ядра с разработками проекта мобильной Linux/Java-платформы Android.

kit_D
Писатель
Сообщения: 52
Зарегистрирован: 13 мар 2012, 13:14
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение kit_D » 14 апр 2012, 23:59

- остаётся только угадывать какие там интерфейсы, как они называются и как нумеруются...
Используйте ip link. Еще есть netcfg, если не ошибаюсь

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 15 апр 2012, 09:51

kit_D писал(а):
- остаётся только угадывать какие там интерфейсы, как они называются и как нумеруются...
Используйте ip link. Еще есть netcfg, если не ошибаюсь
Дело то в том, что:
- мы же находимся в shell Android ...
- а там очень ограниченный набор команд ... который сочли нужным оставить разработчики именно этого девайса.
- и вот что получается:

Код: Выделить всё

# ip
ip: not found
# netcfg
lo       UP    127.0.0.1       255.0.0.0       0x00000049
sit0     DOWN  0.0.0.0         0.0.0.0         0x00000080
P.S. Вообще, команды shell + binutils в Android делаются интересно (так же как и на других embedded платформах, на ARM тех же) - с помощью единой исполняющей утилиты busybox, все остальные команды (из этого набора) есть только ссылки на busybox, а та, в зависимости от argv[ 1 ] её вызова знает, что от неё хотят на этот раз:

Код: Выделить всё

# ls -l /system/* | grep box
lrwxr-xr-x root     shell             2010-10-12 11:18 ifconfig -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 umount -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 id -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 renice -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 mkdir -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 ls -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 getprop -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 setconsole -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 cmp -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 unzip -> busybox
lrwxr-xr-x root     shell             2010-10-12 11:18 ioctl -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 log -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 vmstat -> toolbox
-rwxr-xr-x root     shell     1745016 2010-09-20 04:43 busybox
lrwxr-xr-x root     shell             2010-10-12 11:18 wipe -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 rm -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 sync -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 grep -> busybox
lrwxr-xr-x root     shell             2010-10-12 11:18 top -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 uptime -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 dmesg -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 rmmod -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 ln -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 mv -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 getevent -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 df -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 date -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 chown -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 hd -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 newfs_msdos -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 setprop -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 reboot -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 start -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 sleep -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 mount -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 notify -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 chmod -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 cp -> busybox
lrwxr-xr-x root     shell             2010-10-12 11:18 sendevent -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 ps -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 vi -> busybox
lrwxr-xr-x root     shell             2010-10-12 11:18 printenv -> toolbox
-rwxr-xr-x root     shell       73228 2010-10-12 12:32 toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 smd -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 netstat -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 dd -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 schedtop -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 lsmod -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 watchprops -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 stop -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 route -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 kill -> toolbox
lrwxr-xr-x root     shell             2010-10-12 12:32 cat -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 insmod -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 iftop -> toolbox
lrwxr-xr-x root     shell             2010-10-12 11:18 tar -> busybox
lrwxr-xr-x root     shell             2010-10-12 11:18 rmdir -> toolbox

Таким же образом производитель наталкивает свои утилиты в программу toolbox.
Это достаточно оригинальное решение, которое следует взять на заметку программистам-разработчикам.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 15 апр 2012, 09:53

Olej писал(а): Таким же образом производитель наталкивает свои утилиты в программу toolbox.
Это достаточно оригинальное решение, которое следует взять на заметку программистам-разработчикам.

Код: Выделить всё

# busybox
BusyBox v1.8.1 (2007-11-14 10:11:37 EST) multi-call binary
Copyright (C) 1998-2006 Erik Andersen, Rob Landley, and others.
Licensed under GPLv2. See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: [function] [arguments]...

	BusyBox is a multi-call binary that combines many common Unix
	utilities into a single executable.  Most people will create a
	link to busybox for each function they wish to use and BusyBox
	will act like whatever it was invoked as!

Currently defined functions:
	[, [[, addgroup, adduser, adjtimex, ar, arp, arping, ash,
	awk, basename, bunzip2, bzcat, bzip2, cal, cat, catv,
	chattr, chgrp, chmod, chown, chpasswd, chpst, chroot,
	chrt, chvt, cksum, clear, cmp, comm, cp, cpio, crond,
	crontab, cryptpw, cut, date, dc, dd, deallocvt, delgroup,
	deluser, df, dhcprelay, diff, dirname, dmesg, dnsd, dos2unix,
	du, dumpkmap, dumpleases, echo, ed, egrep, eject, env,
	envdir, envuidgid, ether-wake, expand, expr, fakeidentd,
	false, fbset, fdflush, fdformat, fdisk, fgrep, find, fold,
	free, freeramdisk, fsck, fsck.minix, ftpget, ftpput, fuser,
	getopt, getty, grep, gunzip, gzip, halt, hdparm, head,
	hexdump, hostid, hostname, httpd, hwclock, id, ifconfig,
	ifdown, ifup, inetd, init, insmod, install, ip, ipaddr,
	ipcalc, ipcrm, ipcs, iplink, iproute, iprule, iptunnel,
	kbd_mode, kill, killall, killall5, klogd, last, length,
	less, linux32, linux64, linuxrc, ln, loadfont, loadkmap,
	logger, login, logname, logread, losetup, ls, lsattr,
	lsmod, lzmacat, makedevs, md5sum, mdev, mesg, microcom,
	mkdir, mkfifo, mkfs.minix, mknod, mkswap, mktemp, modprobe,
	more, mount, mountpoint, mt, mv, nameif, nc, netstat,
	nice, nmeter, nohup, nslookup, od, openvt, passwd, patch,
	pgrep, pidof, ping, ping6, pipe_progress, pivot_root,
	pkill, poweroff, printenv, printf, ps, pscan, pwd, raidautorun,
	rdate, readlink, readprofile, realpath, reboot, renice,
	reset, resize, rm, rmdir, rmmod, route, rpm, rpm2cpio,
	run-parts, runlevel, runsv, runsvdir, rx, sed, seq, setarch,
	setconsole, setkeycodes, setlogcons, setsid, setuidgid,
	sh, sha1sum, slattach, sleep, softlimit, sort, split,
	start-stop-daemon, stat, strings, stty, su, sulogin, sum,
	sv, svlogd, swapoff, swapon, switch_root, sync, sysctl,
	syslogd, tail, tar, taskset, tcpsvd, tee, telnet, telnetd,
	test, tftp, time, top, touch, tr, traceroute, true, tty,
	ttysize, udhcpc, udhcpd, udpsvd, umount, uname, uncompress,
	unexpand, uniq, unix2dos, unlzma, unzip, uptime, usleep,
	uudecode, uuencode, vconfig, vi, vlock, watch, watchdog,
	wc, wget, which, who, whoami, xargs, yes, zcat, zcip

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 15 апр 2012, 10:02

Olej писал(а):

Код: Выделить всё

# ip
ip: not found
# netcfg
lo       UP    127.0.0.1       255.0.0.0       0x00000049
sit0     DOWN  0.0.0.0         0.0.0.0         0x00000080
Вот как с ip получается! :

Код: Выделить всё

# busybox ip
BusyBox v1.8.1 (2007-11-14 10:11:37 EST) multi-call binary

Usage: ip [OPTIONS] {address | route | link | tunnel | rule} {COMMAND}

ip [OPTIONS] OBJECT {COMMAND}
where OBJECT := {address | route | link | tunnel | rule}
OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }

Код: Выделить всё

# busybox ip link
1: lo: <LOOPBACK,UP,10000> mtu 16436 qdisc noqueue 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: sit0: <NOARP> mtu 1480 qdisc noop 
[1]   Segmentation fault      busybox ip link
Вот так вот! :

Код: Выделить всё

# busybox u_n_a_m_e -a
Linux localhost 2.6.29 #153 Fri Oct 22 07:57:00 HKT 2010 armv6l unknown
# u_n_a_m_e -a
uname: not found
(значки _ - это я добавил из-за уродства отображения этого форума, естественно, их не было ;-) )
Последний раз редактировалось Olej 15 апр 2012, 10:09, всего редактировалось 1 раз.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Android

Непрочитанное сообщение Olej » 15 апр 2012, 10:04

А вот с toolbox всё куда менее понятно :-( :

Код: Выделить всё

# toolbox
Toolbox!
# toolbox --help
--help: no such tool
# toolbox -help
-help: no such tool
# toolbox help
help: no such tool
# toolbox vmstat
procs  memory                       system          cpu              
 r  b    free mapped   anon   slab    in   cs  flt  us ni sy id wa ir
 1  0    2404  39640  62376   4664  1521  353    0   6  0  4 92  0  0
 1  0    2404  39644  62376   4664  1496  342    0   5  0  7 92  0  0
...

Ответить

Вернуться в «Android»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя