上一页 1 2 3 4 5 6 7 8 9 ··· 41 下一页
摘要: cpp misc std::set iterate方法 // Set of strings std::set<std::string> setOfStr = { "jjj", "khj", "bca", "aaa", "ddd" }; // Creating a iterator pointing 阅读全文
posted @ 2022-04-27 10:40 aspirs 阅读(28) 评论(0) 推荐(0) 编辑
摘要: Android misc 解压boot.img里的ramdisk ramdisk包含在boot.img里,想要解压ramdisk,首先需要解包boot.img unpack boot.img(AN 11) 使用/system/tools/mkbootimg/unpack_bootimg.py来unp 阅读全文
posted @ 2022-04-20 21:13 aspirs 阅读(582) 评论(0) 推荐(0) 编辑
摘要: module_platform_driver(xxx)最终展开后就是如下形式:static int __init xxx_init(void){undefined return platform_driver_register(&xxx);}module_init(xxx_init);static 阅读全文
posted @ 2022-04-18 20:24 aspirs 阅读(28) 评论(0) 推荐(0) 编辑
摘要: DMB/DSB/ISB instructions DMB 数据存储器隔离。DMB 指令保证: 仅当所有在它前面的存储器访问操作都执行完毕后,才提交(commit)在它后面的存储器访问操作。 DSB数据同步隔离。比 DMB 严格: 仅当所有在它前面的存储器访问操作都执行完毕后,才执行在它后面的指令(亦 阅读全文
posted @ 2022-04-12 15:47 aspirs 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 一、socket系统调用创建socket/sock 系统调用参数family为PF_NETLINK,protocol为NETLINK_AUDIT 186 int audit_open() { 187 return socket(PF_NETLINK, SOCK_RAW | SOCK_CLOEXEC, 阅读全文
posted @ 2022-03-20 18:54 aspirs 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 本文原创,谢绝转载! vmemmap VA与struct page阵列页表映射 一个struct mem_section对应PAGES_PER_SECTION个page,比如PAGES_PER_SECTION的值为18,即对应256KB个page,256K个struct page所占用的空间为256 阅读全文
posted @ 2022-02-23 17:12 aspirs 阅读(520) 评论(0) 推荐(0) 编辑
摘要: dm-verity dm-verity-target.c里的verity_target结构体里的map函数是在哪里被调用的呢? 在drivers/md/dm.c里的__map_bio() static blk_qc_t __map_bio(struct dm_target_io *tio) r = 阅读全文
posted @ 2022-02-15 17:00 aspirs 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 每个程序都有的main函数是谁调用的? 程序有动态链接程序和静态链接程序,这两类程序开始执行的flow有些差异,下面将对这两类程序开始执行的flow进行说明 动态链接程序开始执行流程 1. 链接器执行阶段,执行加载依赖的动态链接库 动态链接程序需要在开始执行前先链接依赖的动态库,这个链接的工作由链接 阅读全文
posted @ 2022-02-06 15:33 aspirs 阅读(535) 评论(0) 推荐(0) 编辑
摘要: 使用eventpoll+signalfd方式来处理signal android init进程signal处理采用了eventpoll+signal的方式,本文解析一下这种方式是如何实现的 eventpoll+signalfd方式signal处理流程 1. 将SIGCHLD block 调用sigpr 阅读全文
posted @ 2022-02-04 16:31 aspirs 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 数据结构(双向链表...)操作API list双向链表 . static inline void list_splice(const struct list_head *list, struct list_head *head) 将两个链表拼接,比如:head (2,3),list(4,5) 拼接后 阅读全文
posted @ 2022-02-04 09:38 aspirs 阅读(26) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 41 下一页