10 2021 档案
摘要:user space process address space user space process address space 系统调用与内存管理(sbrk、brk、mmap、munmap) https://blog.csdn.net/Apollon_krj/article/details/54
阅读全文
摘要:selinux misc selinux class definition in te file system/sepolicy/private/access_vectors 7# 8# Define a common prefix for file access vectors. 9# 10 11
阅读全文
摘要:timer misc timer timeout callback callstack [ 99.021468] CPU: 2 PID: 0 Comm: swapper/2 Tainted: P O 4.19.116+ #53 [ 99.029138] Hardware name: xxx(DT)
阅读全文
摘要:kernel log buf dump function kmsg_dump_get_buffer() 4.19/kernel/printk/printk.c void kmsg_dump(enum kmsg_dump_reason reason) { struct kmsg_dumper *dum
阅读全文
摘要:ARM64 hw watchpoint、breakpoint注册与注销 write_wb_reg()里的switch macro展开 4.19\arch\arm64\kernel\Hw_breakpoint.c static void write_wb_reg(int reg, int n, u64
阅读全文
摘要:files_struct/fdtable解析 include/linux/fdtable.h /* * Open file table structure */ struct files_struct { /* * read mostly part */ atomic_t count; bool r
阅读全文
摘要:kill一个pthread_test.bin测试程序主线程、子线程退出kernel flow 以下blog基于andorid Q,kernel 4.19 pthread_test.bi是执行pthread_test.bin的主线程,在这个主线程里会创建pthread_test_name线程 执行ki
阅读全文
摘要:signal bit operation include/linux/signal.h #define _SIG_SET_BINOP(name, op) \ static inline void name(sigset_t *r, const sigset_t *a, const sigset_t
阅读全文
摘要:pthread PTHREAD_CREATE_DETACHED pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); 在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached)。一个可结合的线程能够被其
阅读全文
摘要:信号发送处理流程: https://www.cnblogs.com/sunsky303/p/10838610.html
阅读全文
摘要:sdcardfs sdcardfs_read() call flow [ 70.421020] CPU: 0 PID: 4007 Comm: Binder:2841_2 Tainted: P O 4.19.116+ #21 [ 70.429301] Hardware name: xxx (DT) [
阅读全文
摘要:ARM registers arm register alias 4.19\arch\arm64\kernel\Asm-offsets.c DEFINE(S_X0, offsetof(struct pt_regs, regs[0])); DEFINE(S_X1, offsetof(struct pt
阅读全文
摘要:PowerManagerService.WakeLocks wake lock acquire call stack Line 5713: 09-19 09:06:40.206 3291 3291 E power : in acquire_wake_lock: is pmswakelocks. Li
阅读全文
摘要:cpp test program #include <iostream> using namespace std; int main() { const char* id = "PowerManagerService.WakeLocks"; std::string pmswakelocks = "P
阅读全文
摘要:apm-emulation driver framework 在suspend_prepare()里会call error = __pm_notifier_call_chain(PM_SUSPEND_PREPARE, -1, &nr_calls); 因为apm-emulation有注册关于此的cal
阅读全文
摘要:android STR suspend/resume framework console:/sys/power # cat wake_lock PowerManager.SuspendLockout PowerManagerService.Display console:/sys/power # c
阅读全文
摘要:c lang misc 补码 正数的补码就是其本身 负数的补码就是在其原码的基础上,符号位不变,取反后加一。 补码存在的意义就是为了统一计算机加减 比如(7)+(-7)=0 7 -> 0000 0111(7的补码) -7 -> 1111 1001(-7的补码) 所以相加为1 0000 0000(超出
阅读全文
摘要:9.1.3.3 Relocations Relocations for ‘MOVZ’ and ‘MOVK’ instructions can be generated by prefixing the label with ‘#:abs_g2:’ etc. For example to load t
阅读全文
摘要:print address/symbol(%p*) in kernel /* * Show a '%p' thing. A kernel extension is that the '%p' is followed * by an extra set of alphanumeric characte
阅读全文
摘要:Result<Success> SetKptrRestrictAction(const BuiltinArguments&) { std::string path = KPTR_RESTRICT_PATH; if (!SetHighestAvailableOptionValue(path, KPTR
阅读全文
摘要:开启CONFIG_ARM64_PTDUMP_CORE & CONFIG_ARM64_PTDUMP_DEBUGFS config,将会产生如下文件: /sys/kernel/debug/kernel_page_tables
阅读全文
摘要:以下内存布局信息在引导时由Linux内核在我的SoC平台上打印(带有4核Cortex-A53处理器和2.75GiB DRAM) [ 0.000000] Memory: 2736316K/2883584K available (4796K kernel code, 488K rwdata, 1360K
阅读全文
摘要:Ubuntu下使用tmux实现分屏,以及tmux快捷键 最近用到了终端的复用,使用了tmux,写一下自己的使用和一些快捷键。 tmux是指通过一个终端登录远程主机并运行后,在其中可以开启多个控制台的终端复用软件。 来个效果图: 截图我使用的命令是 gnome-screenshot (安装了gnome
阅读全文
摘要:linux汇编(ARM64) quad arm64汇编代码里(.S)的.quad,表示4个word,即8个字节 memset/__memset函数实现 这两个函数都是汇编函数,在如下路径里的.S文件里实现: 4.19\arch\arm64\lib\memset.S misc 一. 带点的(一般都是A
阅读全文