Hi ALL ! Sorry for my disgusting English, and sorry if my message will be found offtopic. Today I first time have read documentation about emulator, and find out many interesting things. For example, that emulator creates internal flash ROM image userdata.img in \Documents and Settings\<user>\Local Settings\Application Data\Android. The second surprising thing, that it has "-qemu" option. When I saw that, I at once went to \Application Data\Android, to look image file. And what was I surprised, when find the next dump fragment:
11dffb0c ad00cd50 /system/lib/libdvm.so
11dffb14 00127fe0 [heap]
11dffb20 ad0646bc /system/lib/libdvm.so
11dffb2c ad065378 /system/lib/libdvm.so
There is linux so-libraries in ROM image !!! But much more surprised was the second fragment:
pid: 472, tid: 568 >>> system_server <<<
signal 11 (SIGSEGV), fault addr 00000042
r0 0019bd38 r1 00000007 r2 0017f708 r3 00000042
r4 00127f70 r5 0019bd38 r6 ad3490a0 r7 ad021fb1
r8 40152a18 r9 00000000 10 11dffce8 fp 00001866
ip ad0646f4 sp 11dffbc0 lr ad32726f pc 00000042 cpsr 00000010
It is ARM registers names !!! Рrobably qemu crashes and dumps crashlog. So I understand that emulator is qemu based product, and it emulates not only linux, but ARM !!! I thing early, that emulator is usual Java application, for modeling some other Java-environment. But now, I cannot understand, how emulator can works with so fantastic speed ??? Now I develop rather complex application, based on OpenGL. And it runs so fast, that it is possible to look picture without any anger ! And it is qemu !!!
The second question. If we have a valuable linux on emulator, have somebody tried to setup some linux programs ? For example, I want "midnight commander", "gdb", "less"... When I run "adb shell" i find out only "sh", "ls", "pwd", and "cat". It is much better that nothing but I want have usual linux environment, in "adb" if it works with real linux.
Third question. Does somebody know, how to compile for Android from C/C++ ? What CPU type ? What memory mapping, etc. Very desirable will to have headers. It will be very convenient to have standard linux utilities on emulator and "adb".
Once more, sorry if this matter is offtopic. I don't want place it on http://code.google.com/android/ forum, because http://www.anddev.org/ seems me much more competent and practically useful.