
linux驱动
文章平均质量分 51
琴棋书画诗茶酒
这个作者很懒,什么都没留下…
展开
-
设备驱动开发学习记录
读写设备的寄存器完成设备的轮询中断处理DMA通信物理内存到虚拟内存的映射自旋锁、互斥、信号量、等待队列等并发与同步机制linux源码常用方式:vim+cscope 或者 vim+ctagscscope和ctags可以建立代码索引;两组寄存器:控制寄存器和数据寄存器控制:工作方式;数据:读写数据;ToVirtual()的作用是将寄存器的物理地址转化为虚拟地址;冯*诺伊曼:程序和数据存储器一起,公用总线;intel,arm7,mips;哈佛:程序存储器和数据存储器分开,独立总线;avr,arm9原创 2022-06-05 19:54:56 · 152 阅读 · 0 评论 -
linux学习
设备驱动程序操作系统的主要任务之一是控制所有的输入/输出设备。它必须向设备发布命令,捕获中断并进行错误处理,它还要提供一个设备与系统其余部分的简单易用的界面,该界面应该对所有的设备尽可能的一致,从而将系统硬件设备细节从用户视线中隐藏起来,例如虚拟文件系统对各种已安装的文件系统类型提供了统一的视图而屏蔽了具体底层细节,具体细节都是由设备驱动程序来完成的,对于驱动程序,在 Linux 中可以按照模块的形式进行编译和加载。中输入/输出设备被分为 3 类:块设备,字符设备和网络设备文件系统仅仅控制抽象的块设备原创 2022-05-07 14:13:55 · 212 阅读 · 0 评论 -
linux开源和书籍学习的几个点
1、函数地命名;2、内核种有哪些函数可以调用;3、内核地接口方式;4、内核地一些问题解决方式;5、内核地一些典型设计算法,比如数据地存储,快速查找,数据地组织,链表地使用;6、书籍提炼出自己不会地不熟悉地豁然开朗地精华部分;...原创 2022-05-06 23:13:50 · 236 阅读 · 0 评论 -
linux学习
Linux 内核 大约有 200 多万行,占 60MB 左右的空间将 GNU 项目的 C 库、gcc、Emacs、bash 等很快移植到 Linux 内核上来;linux内核开发模式:代码新特性提交,网络上人下载测试,提出问题,稳定之后由相关人员合入;对于用户进程,Linux 采用简单的动态优先级调度方式;对于内核中的例程(如设备驱动程序、中断服务程序等)则采用了一种独特的机制—软中断机制,这种机制保证了内核例程的高效运行;整个 Linux 内核由很多过程组成个过程可以独立编译,然后用连接程序将原创 2022-05-06 22:54:10 · 652 阅读 · 0 评论 -
深入分析Linux内核源代码.pdf参考资源
1 Linux 源代码的获取网站为 http://www.kernel.org/ ,在这里可以找到各种源代码版本及补丁。2 Linux 源代码超文本交叉检索工具国 外 网 站 : http://lxr.linux.no/ , 国 内 镜 像 网 站 为 :http://www2.linuxforum.net/lxr/http/source3 Linux 内核文档项目(LDP)站点为:http://www.linuxdoc.org ,该主页中还包括了有用的链接、指南、FAQ 及 HOWTO。4原创 2022-05-05 22:14:49 · 1057 阅读 · 0 评论 -
linux驱动PCIE开发
Linux内核用主设备号来定位对应的设备驱动程序,而次设备号则由驱动程序使用,用来标识它所管理的若干同类设备;字符设备是 Linux 驱动中最基本的一类设备驱动,字符设备就是一个一个字节,按照字节流进行读写操作的设备,例如LED、按键、IIC、SPI等。字符型驱动通常加载在/dev/xxx下形成一个文件,例如/dev/led是led的驱动文件。用户处于用户空间,驱动处于内核空间,用户通过系统调用的方法实现对驱动的操作。在linux内核文件include/linux/fs.h 中有 file_ope原创 2022-05-05 15:32:56 · 3034 阅读 · 0 评论