摘要: neovim使用的是lazyvim,开箱即用十分方便。 linux kernel源码,如果用clangd构建指定好LLVM还是可以使用下面的指令得到 compile_commands.json 这个文件的。compile_commands.json就是用来做clangd跳转支持的文件。 ./scri 阅读全文 »
posted @ 2024-09-11 16:13 LIalan 阅读(141) 评论(0) 推荐(0) 编辑
摘要: LPC中几个参考资料 How to introduce KUnit to physical device drivers? Testing Drivers with KUnit Does Hardware have to be Hard? 设备模拟 有些驱动文件是需要device的,所以KUnit提 阅读全文 »
posted @ 2024-09-06 10:49 LIalan 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 官网 基本介绍 KUnit Suite Memory 每一个kUnit都有自己的上下文,所以一个崩溃了,不会影响到其他的suit。 开关 目前可以有下面几种方法控制case测试。 menuconfig控制 使用.kunitconfig控制编译的测试文件 使用宏选择性开启某些case 使用debugf 阅读全文 »
posted @ 2024-09-06 09:43 LIalan 阅读(102) 评论(0) 推荐(0) 编辑
摘要: KASLR kernel address space layout randomization 内核地址空间布局随机化 本质是将链接的地址做了随机偏移,这样System.map中的地址也不一样了,需要用 cat /proc/kallsyms才能查看到实际的地址。主要还是为了安全,这样地址布局随机化, 阅读全文 »
posted @ 2024-09-06 09:32 LIalan 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 事情的起因是发现 gpio_request 被标记成弃用了,想找一下改这个patch和邮件,查看一下原因。 首先 # gpiolib-legacy.c是该函数存在的文件 git blame drivers/gpio/gpiolib-legacy.c 然后得到该change的commit git sh 阅读全文 »
posted @ 2024-09-02 14:22 LIalan 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 作业1 make x86_64_defconfig make LLVM=1 menuconfig 报错,解决 sudo apt install lld 配置界面: 接下来编译 make LLVM=1 -j 12 作业2 问题1: 在Kconfig中有相关的配置,具体在: obj-m := r4l_e 阅读全文 »
posted @ 2024-07-17 21:05 LIalan 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 参考文章 《linux设备驱动开发详解》第15章 【linux iic子系统】i2c整体框图【精髓部分】(五)_bus_for_each_drv-CSDN博客 linux设备驱动程序——i2c总线的添加与实现_如何填充i2c_client-CSDN博客 【linux iic子系统】i2c设备与驱动匹 阅读全文 »
posted @ 2024-05-05 22:15 LIalan 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 参考来源: 《内核设计与实现》 一步一图带你深入理解 Linux 物理内存管理 - bin的技术小屋 - 博客园 (cnblogs.com) Linux内存管理宏观篇(五)物理内存:页面分配和释放页面-阿里云开发者社区 (aliyun.com) 首先有个宏观的认识: 内存是cpu的内存,在多cpu中 阅读全文 »
posted @ 2024-05-05 22:06 LIalan 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 进程与线程 pcb 进程通过进程描述符(pcb)描述。在linux中pcb的结构体是 task_stack (在include/linux/sched.h) 包含了进程的状态信息、地址空间等进程的全部信息。通过pcb就可以恢复进程的状态。所以这里可以稍微说一下,进程切换其实就是将current_th 阅读全文 »
posted @ 2024-05-05 21:54 LIalan 阅读(65) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示