
linux kernel
文章平均质量分 76
panda19881
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
__asm__ __volatile__内嵌汇编用法简述
__asm__ __volatile__内嵌汇编用法简述 __asm__ __volatile__内嵌汇编用法简述在阅读C/C++原码时经常会遇到内联汇编的情况,下面简要介绍下__asm__ __volatile__内嵌汇编用法。因为我们华清原创 2011-07-10 18:19:54 · 370 阅读 · 0 评论 -
linux kthread
内核线程和普通进程的区别:内核线程只能运行在内核态,而普通进程既可以运行在内核态,也可以运行在用户态。因为内核线程只运行在内核态,它们只使用大于PAGE_OFFSET的线性地址空间。另一方面,不管在用户态还是在内核态,普通进程可以用4G的线性地址空间。1. 头文件#include //wake_up_process()#inc转载 2012-06-09 17:53:08 · 1296 阅读 · 0 评论 -
linux current
尽管内核模块不象应用程序一样顺序执行, 内核做的大部分动作是代表一个特定进程的. 内核代码可以引用当前进程, 通过存取全局项 current, 它在 中定义, 它产生一个指针指向结构 task_struct, 在 定义. current 指针指向当前在运行的进程. 在一个系统调用执行期间, 例如 open 或者 read, 当前进程是发出调用的进程. 内核代码可以通过使用 current 来使转载 2012-06-08 16:05:54 · 3520 阅读 · 0 评论 -
list_add_tail 双向链表实现分析
在看内核v4l2示例代码driver/media/video/vivi.c时 ,看到list_add_tail()函数,现在对其进行分析:struct list_head { struct list_head *next, *prev;}; list_add_tail(&buf->vb.queue, &vid->active);/** * list_add_tail原创 2012-06-12 09:50:23 · 4260 阅读 · 1 评论 -
platform 机制
从Linux 2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制, 设备用Platform_device表示,驱动用Platform_driver进行注册。Linux platform driver机制和传统的device driver 机制(通过driver_register函数进转载 2012-07-30 21:59:00 · 437 阅读 · 0 评论