2012年7月11日
摘要: 并发指的是多个执行单元同时、并行被执行,而并发的执行单元对共享资源的访问则很容易导致竞态linux内核中主要竞态1.多对称处理器的多个CPU 2.单CPU内进程与抢占它的进程 3.中断(硬中断、软中断、Tasklet、下半部)与进程之间访问共享内存资源的代码区称为“临界区”,临界区需要被以某种互斥机制加以保护,中断屏蔽、原子操作、自旋锁和信号量等是linux设备驱动中可采用的互斥途径。这几个互斥的介绍:1.中断屏蔽,这个主要用于单CPU,中断屏蔽将使得中断和进程之间的并发不再发生。使用方法:local_irq_disable();//屏蔽中断......临界区...local_irq_enab 阅读全文
posted @ 2012-07-11 22:28 孟浩依然 阅读(2898) 评论(0) 推荐(0) 编辑
摘要: 驱动分为:字符设备驱动,块设备驱动和网络设备驱动。字符设备驱动是操作字节流,不允许随机访问。块设备允许随机访问。字符设备比较基础,下面给出编写字符驱动的方法。#include <linux/module.h>#include <linux/kernel.h>#include <linux/init.h>MODULE_LICENSE ("GPL");static int __init hello_2_init (void){ printk (KERN_INFO "Hello world\n"); return 0;}st 阅读全文
posted @ 2012-07-11 22:10 孟浩依然 阅读(911) 评论(0) 推荐(1) 编辑