2017-05-23 39 views
0

过去几天我一直在阅读android基础结构,我发现Dalvik虚拟机是基于寄存器的机器,而不是传统的基于堆栈的虚拟机。在这种情况下,dex文件的内存布局会是什么样子?在典型的C程序中,其内存布局采用数据,文本,堆和堆栈的形式。这对于dex文件也是一样的。如果是这样,Dalvik虚拟机如何处理这些文件?android dex文件的内存布局

回答

0

据我所知,Android运行在Linux内核上。所以,Linux内核负责管理物理内存。 Android ART如何管理与内核的内核交互对我来说并不熟悉。但是,事先应该提供与Linux二进制文件(文本,数据,堆,堆栈,共享内存)相同的内存布局。 那么,实际上我通过查看进程的内存映射(cat /proc/pid/maps)得到了确认,它为您提供了与典型Linux程序类似的内存布局,但是具有很多共享库。