-
西江月·夏江
-
Android Dynamic Linker in Marshmallow
Dynamic linker, links shared libraries together to be able to run, has been a fundamental mechanism in modern operating system and rich software ecosystem over the past decades. Dynamic linker is always highly platform-customized since it's coupled with binary format of a system. This article introduces the basic conception of dynamic linker and takes Android (Marshmallow) dynamic linker as example to discuss the implementation. We will see that dynamic link is a engineering-purpose mechanism rather than a theory-born one.
-
观念的自我塑造
人与人的观念差异远比我们想象中的要大得多。
-
低俗小说
『真实、饱满、自由。最重要的是自由。但只有真实饱满的人物构造才能展现出其中的自由。』这是我对《低俗小说》最新的评价。
-
Google Breakpad:脱离符号的调试工具
Breakpad 是一套用于抓取应用崩溃数据的工具。Breakpad 可以在移除编译器调试信息后,抓取、压缩 minidump 信息,将其发送回你的服务器,然后为 C/C++ 生成调用栈。
-
集子:保福寺
一名保福寺烟酒僧
-
但行好事,莫问前程
琐事与成见蒙蔽着我们的心智,如滴水穿石。面对生活中不可知,我们定义各种假设、规则,依靠他们来决策,尝试让生活变成一道道逻辑题,答案能够确定。这种行为填满了内心,消除了不安全感,而且心理上不需要为最后产生的结果负责。然而生活变得更美好了吗?我们变得更快乐了吗?
-
A Dual-TLB Method for MIPS Heterogeneous Virtualization
DBT directly translates and executes binary programs, enabling a compatible system by virtualizing one machine (guest) on another (host). However, the memory virtualization of guest brings in a great overhead, due to effort it takes to translate GVA into HPA (Host Physical Address). For QEMU, a DBT with efficient memory virtualization mechanism, more than 60% of the translated code is used to virtualize memory, thus leading to a low performance of guest. In this paper, we employ the Co-Design methodology to optimize memory access performance of guest. This optimization is primarily focused on two aspects. First, hardware extensions are designed and implemented to conduct GVA to HPA translation directly. Second, we modify QEMU to cooperate with hardware to reduce translated code. By this means, the cost of memory virtualization is completely eliminated, resulting in a significant enhancement of the performance of the Loongson binary translation system. The experimental data implies that the performance of guest has been dramatically improved by 100 times for peak performance and 19.12% for average performance over the previous system.
-
QEMU:一个高速、可移植的动态翻译器
QEMU可以在多种主机(x86, PowerPC, ARM, Sparc Alpha and MIPS)上仿真多种客户机(x86, PowerPC, ARM and Sparc)。通过完备的系统仿真,QEMU支持在虚拟机中运行未经修改的操作系统;通过Linux用户模式仿真,还支持在不同CPU上运行Linux软件。
-
游颐和园