Thank you guys!
Yes, I understand Android App are JAVA programs interpreted by Dalvik
VM. But I m trying to find a relation between the App point of view
(JAVA Apps, framework components, activities, services,..) vs. kernel
point of view (processes and threads). For this job I have modified
the Android emulator to provide me some additional information on a
non intruseve way (no instrumentantions techniques on the kernel were
used).
My objective is compare a linux + JAVA VM + User App with the Android
framework proposal.
To run a App. like a calculator, a standard linux the shell will will
fork and make a execv syscall to load the VM to interprete the app's
bytecode. Additional syscalls are App dependent. At the end, a
sys_exit will be called to terminate the process.
So on Android the "????" process will tell to the zygote process to
sys_clone (thread, fork or vfork?) and then the new zygote process
will load the "????" using the "????" syscall. Does this new zygote
will load a new dalvik image or just use the forkerd copy of the
parent? As far as I can see, no execve syscall is made, so I suposed a
forked copy is used. Is ii right?
Aditionally why binder threads are lauched? The only think I know
about binder is it a new IPC mechanisms ported from BeOS, so they are
kernel threads? does kernel thread uses the do_fork() kernel function
too? I didn't found a sys_exit syscall for these threads.
thanks in advance!
On 7 maio, 18:02, Dianne Hackborn <
hack...@android.com> wrote:
> 2-3 threads are usually created for the binder IPC thread pool.
>
> > > unsubscribe:
android-kerne...@googlegroups.com<
android-kernel%2Bunsu...@googlegroups.com>
> > > website:
http://groups.google.com/group/android-kernel
>
> > --
> > unsubscribe:
android-kerne...@googlegroups.com<
android-kernel%2Bunsu...@googlegroups.com>
>
hack...@android.com