简单来说,本质是每一个函数都是一个状态机。更严谨一点的说法是:Kotlin 编译器会将每一个 suspend 函数(挂起函数)编译成一个状态机(...
背景 鸿蒙系统是中国首款完全自主研发的分布式操作系统,其底层技术实现完全自主可控,摆脱了对安卓和iOS的依赖。尤其在当前国际科技竞争加剧的背景下...
char16_t、unsigned short 和 UTF-16 之间有密切的关系: 定义和大小: 关系说明: char16_t:C++11引入...
接着上篇文章内容 函数栈帧与BP寄存器[https://juejin.cn/post/7402058032651665462] 我们继续构造两个...
让我们写一段简单的代码来分析 通过GDB调试,我们可以查看寄存器和汇编代码,方便我们理解这里我们在main,foo函数加上断点 通过layout...
主要思路是找到被hook函数地址,并将被hook函数地址执行指令替换成jmp <地址偏移量>,这个地址由hook函数地址和target函数地址相...
弄清楚GDB的底层原理,首先需要了解一下ptrace这个系统调用: ptrace 是一个用于在 Unix 和 Unix-like 操作系统上进行...
大家都知道MMKV性能好,因为是直接操作内存。内存其实就是一个数组结构,根据地址去寻址查找数据的,就跟数组通过index查找数据一样,但是数组修...
Ubuntu安装libunwindapt-get install libunwind8-dev编译命令:gcc unwind.c -lunwind