1.字符设备
1 申请设备号
2 分配内存
3 注册设备
2 并发、竞态 。。共享数据导致 并发、竞态
1 自旋锁 spin_lock_interruptible();
spin_unlock_interruptible();
2信号量 down_interrupilbel();
up_interrupible();
3 阻塞
等待队列
wait_event_interruptible():
wake_up_interruptible();
非阻塞 0
select();
poll();
4 异步通知
5 中断和时钟
request_irq();
上半部 hander_irq() ; 中断处理函数
下半部 tasklet 工作队列 软中断