上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 27 下一页
摘要: Linux处理嵌套中断 1.慢速中断情况下 第一种情况:当中断处理1正在执行的时候,中断处理2(不同类型中断)到来,那么会暂停中断处理1,转向执行中断处理2,待中断处理2执行完后,再接着执行中断处理1。 第二种情况:当中断处理1正在执行的时候,中断处理2(同类型中断)来到,那么会忽略中断处理2,接着 阅读全文
posted @ 2016-03-08 20:36 盛夏夜 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 中断类型对应中断号 1.在内核代码中找到irqs.h(.../s3c2410.h)对应的中断号,Linux系统中用的中断号是中断类型编号(INTOFFSET)加上基数偏移得到的。 2.其中的宏就是中断类型所对应的中断号 #define S3C2410_CPUIRQ_OFFSET (16) #defi 阅读全文
posted @ 2016-03-08 17:16 盛夏夜 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 裸机中断: 1.中断统一入口。 2.注册中断处理程序。 3.根据中断源编号,调用中断处理程序。 Linux中断 1.在entry-armv.S中的_irq_svc是中断统一入口。 2.获取产生中断源的编号(中断号)。 3.根据中断号,找到irq_desc结构 4.从irq_desc描述结构中取出事先 阅读全文
posted @ 2016-03-08 17:08 盛夏夜 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 混杂设备概念 在linux系统中,存在一类字符设备,它们拥有相同的主设备号(10),但次设备号不同,我们称这类设备为混杂设备(miscdevice)。所有的混杂设备形成一个链,对设备访问时内核根据次设备号查找到相应的混杂设备。 设备描述 Linux中使用struct miscdevice来描述一个混 阅读全文
posted @ 2016-03-08 11:17 盛夏夜 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 神乎其技 高手过招,唯快不破。 棋逢对手,永无止境。 阅读全文
posted @ 2016-03-08 10:32 盛夏夜 阅读(146) 评论(0) 推荐(0) 编辑
摘要: LED程序设计 1.编写内核模块 2.搭建字符驱动框架 3.实现设备方法 头文件 <linux/io.h> writel() 1.编译/安装驱动 make cp leddev.ko .../rootfs insmod leddev.ko 2.创建设备文件 mknod /dev/myled0 c 25 阅读全文
posted @ 2016-03-07 21:10 盛夏夜 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 设备控制理论 1.设备控制的作用 大部分驱动程序除了需要提供读写设备的能力外,还需要具备控制设备的能力。比如改变波特率。 2.设备控制的函数 在用户空间使用ioctl系统调用函数来控制设备。 int ioclt(int fd, unsigned long cmd, ...) fd:要控制的设备文件描 阅读全文
posted @ 2016-03-07 17:10 盛夏夜 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 应用程序访问驱动程序 1.系统调用找到内核实现函数(read) 在这个过程中主要做了下面的工作: r7 = 3 svc 说明: svc是系统调用指令,当使用该指令时系统会从用户空间进入内核空间的固定入口处,内核会从r7寄存器中取出系统调用编号,然后内核会查找系统调用表找到对应的函数实现,然后调用该函 阅读全文
posted @ 2016-03-07 17:07 盛夏夜 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 头文件 <linux/cdev.h> struct cdev <linux/fs.h> struct file_operations <asm/uaccess.h> copy_from_user(); copy_to_user(); memdev.c #include <linux/init.h> 阅读全文
posted @ 2016-03-07 15:47 盛夏夜 阅读(563) 评论(0) 推荐(0) 编辑
摘要: 设备驱动模型 1.驱动初始化(驱动安装) 1.1.分配设备描述符 1.2.初始化设备描述符 1.3.注册设备描述符 1.4.硬件初始化 2.实现设备操作(驱动操作) 3.驱动注销(驱动卸载) 设备描述结构 在任何一种驱动模型中,设备都会用内核中的一种结构来描述。我们的字符设备在内核中使用struct 阅读全文
posted @ 2016-03-07 10:11 盛夏夜 阅读(286) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 27 下一页