11 2020 档案
摘要:由于内存和磁盘的读写性能差异较大,Linux会在内存充裕时将空闲内存用于缓存磁盘数据,以提高I/O性能。相对的在内存紧张时Linux会将这些缓存回收,将脏页回写到磁盘中。而在进程的地址空间中,如heap,stack等匿名页,在磁盘上并没有对应的文件,但同样...
阅读全文
摘要:网上已经有很多阐述ftrace原理和使用方法的文章,本文不会面面俱到的介绍所有涉及的原理和方法,只会聚焦在阐述ftrace的event tracing机制,以及如何利用该机制(包括其他一些方法配合)去跟踪某个进程的调度信息。本文的分析基于处理器为ARM64...
阅读全文
摘要:KASAN 是 Kernel Address Sanitizer 的缩写,它是一个动态检测内存错误的工具,主要功能是检查内存越界访问和使用已释放的内存等问题。KASAN 集成在 Linux 内核中,随 Linux 内核代码一起发布,并由内核社区维护和发展。...
阅读全文
摘要:CHRE(Context Hub Runtime Environment)是基于事件驱动的系统,因此CHRE围绕事件循环构建,该循环执行nanoapp代码以及CHRE系统回调。根据CHRE API,nanoapp一次不能在一个以上的线程中执行,因此,尽管系...
阅读全文