摘要: CONFIG_SPARSEMEM_VMEMMAP 阅读全文
posted @ 2025-04-02 11:25 _xingxing 阅读(1) 评论(0) 推荐(0) 编辑
摘要: /* A virtual v4l2-mem2mem example device. This is a virtual device driver for testing mem-to-mem videobuf framework. It simulates a device that uses m 阅读全文
posted @ 2025-03-26 23:26 _xingxing 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 以VPU为例,如果是通过PCIE访问: vpu需要的内存来自于哪里?来自于cpu还是显存? gpu的显存怎么管理?CPU侧的通过操作系统管理,如果是GPU的呢? 阅读全文
posted @ 2025-03-26 19:51 _xingxing 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 从软件角度学习PCIE(PCI - Express)主要包括以下几个方面: 1. 驱动程序开发 设备识别与初始化 软件需要能够识别连接到PCIE总线上的设备。这涉及到对PCIE设备的枚举过程的理解,通过读取配置空间(Configuration Space)来获取设备的厂商ID(Vendor ID)、 阅读全文
posted @ 2025-03-26 14:57 _xingxing 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 学习过程 0319: 对于任何驱动来说,buffer是最重要的,知道了buffer的创建使用这个驱动就会一半了; 现在感觉是一个无头苍蝇,感觉非常复杂:数据结构非常多,之间的关系也非常复杂; 不过没关系,先研究buffer通路; 可以看见应用层对mmap写入的hello world,驱动中vkms_ 阅读全文
posted @ 2025-03-19 23:41 _xingxing 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 初始化:__fdt_scan_reserved_mem 由于此时设备树还没有展开,只能通过扫描所有设备树节点判断是否包含"reserve-memory"这个属性; 如果获取到了,得到它的child device_node,获取reg属性,里面包含size,length; 获取其是否包含no-map属 阅读全文
posted @ 2025-02-24 15:06 _xingxing 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 为了性能,同一类型的softirq有可能在不同的CPU上并发执行, 如果一个tasklet在processor A上被调度执行,那么它永远也不会同时在processor B上执行,也就是说,tasklet是串行执行的(注:不同的tasklet还是会并发的),不需要考虑重入的问题 如果一个中断处理函数 阅读全文
posted @ 2025-01-25 10:50 _xingxing 阅读(6) 评论(0) 推荐(0) 编辑
摘要: dtc将dts编译为dtb dtb其实是有一定格式的,叫做fdt,这是一个协议规范; 内核会根据fdt的格式进行解析; 阅读全文
posted @ 2025-01-02 16:12 _xingxing 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 为什么要有slub 伙伴子系统是以4k * 2^order分配内存,往往驱动分配内存用不了4k,必然会有大量的内存碎片,为了解决这一个问题,提出了slub; slub能分配多大的内存?从slub中想分配多大就多大吗? 从slub中分配的内存大小是固定的,在kmem_cache_create中传入参数 阅读全文
posted @ 2024-12-31 00:05 _xingxing 阅读(28) 评论(0) 推荐(0) 编辑
摘要: ![](https://img2024.cnblogs.com/blog/3222919/202412/3222919-20241225005414258-678788566.png) ![](https://img2024.cnblogs.com/blog/3222919/202412/3222919-20241225005419535-1740190417.png) ![](https://i 阅读全文
posted @ 2024-12-25 00:54 _xingxing 阅读(7) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示