分享 信号量和自旋锁的选择
yd2763132 2011-5-13 21:54
自旋锁是专为防止多处理器并发而引入的一种锁,它在内核中大量应用于中断处理等部分;自旋锁最多只能被一个内核任务持有;在单处理器上,自旋锁仅仅当作一个设置内核抢占的开关,内核不能被抢占。 ?? 信号量是一种睡眠锁。如果有一个任务试图获得一个已被持有的信号量时,信号量会将其推入等待队列,然后让其睡眠;当持有 ...
个人分类: linux|801 次阅读|0 个评论
分享 fs2410开发板的按键驱动程序
yd2763132 2011-5-13 21:33
fs2410开发板的按键驱动程序
#include linux/init.h #include linux/module.h #include linux/kernel.h& ...
个人分类: linux|911 次阅读|0 个评论
分享 中断和定时器
yd2763132 2011-5-12 20:10
中断和定时器
为了提高吞吐量势必要求中断程序尽可能短小 , 所以将中断处理程序分解为两个部分 :top half 和 bottom half. 顶半部只需完成底半部的调度即可,底半部则完成中断函数大部分。 ? Tasklet ,工作队列,软中断为底半部调度机制。他们的使用方式都是如下: ...
个人分类: linux|1008 次阅读|1 个评论
分享 信号和AIO
yd2763132 2011-5-12 20:06
异步阻塞IO:阻塞通知非阻塞io,即io操作发出后不阻塞IO操作,将通知阻塞,直到采用select查询后才获得操作结果; ?? 异步非阻塞IO:即io操作发出后不阻塞IO操作也不阻塞通知,当操作完成后内核通过信号或回调方式主动通知调用进程,而不需要等待调用者主动进行查询。 ?? 在异步IO操作中,当IO资源可用时驱动释放相应的信 ...
个人分类: linux|938 次阅读|0 个评论
分享 等待队列
yd2763132 2011-5-12 20:05
在阻塞IO操作中,用于实现阻塞进程的唤醒和阻塞,其常常与进程的调度函数混合使用。当将当前进程加入等待队列链表后通常使用__set_current_state(TASK_INTERRUPTIBLE)和schedule()将进程睡眠,资源可使用后,释放资源的进程通过wake_up_interruptible唤醒需要资源的已睡眠进程,再将该进程的等待队列删除。 ??struct __wai ...
个人分类: linux|693 次阅读|0 个评论
分享 信号量和自旋锁的选择
yd2763132 2011-5-12 20:04
自旋锁是专为防止多处理器并发而引入的一种锁,它在内核中大量应用于中断处理等部分;自旋锁最多只能被一个内核任务持有;在单处理器上,自旋锁仅仅当作一个设置内核抢占的开关,内核不能被抢占。 ?? 信号量是一种睡眠锁。如果有一个任务试图获得一个已被持有的信号量时,信号量会将其推入等待队列,然后让其睡眠;当持有 ...
个人分类: linux|686 次阅读|0 个评论
分享 2410 DMA初始化代码导读笔记(2)
yd2763132 2011-5-12 20:03
#include linux/config.h #ifdef CONFIG_S3C2410_DMA_DEBUG #define DEBUG #endif #include linux/module.h #include linux/init.h #include linux/sched.h #include linux/spinlock.h #include linux/interrupt.h #include linux/sysdev.h #include linux/slab.h ...
个人分类: linux|883 次阅读|0 个评论
分享 2410 DMA初始化代码导读笔记(1)
yd2763132 2011-5-12 20:02
鉴于DMA的重要性花了2天时间读了一下初始化代码,做一下相关笔记。 首先有一些重要的数据结构如下: typedef enum { ?S3C2410_DMA_IDLE, //器件空闲 ?S3C2410_DMA_RUNNING,//器件运行 ?S3C2410_DMA_PAUSED //器件暂停 } s3c2410_dma_state_t;//描述DMA器件状态 ?? typedef enum { ?S3C2410_DMALOAD_NONE //没有缓存被负载 ...
个人分类: linux|1030 次阅读|1 个评论
分享 一个很好用的软件
yd2763132 2011-5-12 19:58
H-JTAG可以调试和烧写flash,速度比三星的sjf2410快的多。 ??www.hjtag.com
个人分类: linux|729 次阅读|0 个评论
分享 2410触摸屏驱动
yd2763132 2011-5-12 19:56
#include linux/config.h #include linux/module.h #include linux/kernel.h #include linux/init.h #include linux/miscdevice.h #include linux/sched.h #include linux/delay.h #include linux/poll.h #include linux/spinlock.h #include linux/irq.h #i ...
个人分类: linux|908 次阅读|0 个评论
关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
返回顶部