![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux内核编程
文章平均质量分 80
xuewuzhijin2012
这个作者很懒,什么都没留下…
展开
-
Linux内核线程
转自: http://blog.chinaunix.net/uid-28693738-id-4137973.html 1.内核线程介绍: 内核经常需要在后台执行一些操作,这种任务就可以通过内核线程(kernle thread)完成——独立运行在内核空间的标准进程。内核线程和普通的进程间的区别在于内核线程没有独立的地址空间,mm指针被设置为NULL;它只在内核空间运行,从来不切换转载 2015-08-14 18:06:46 · 398 阅读 · 0 评论 -
Linux内核等待队列
等待队列(一) 在Linux内核中等待队列有很多用途,可用于中断处理、进程同步及定时。我们在这里只说,进程经常必须等待某些事件的发生。等待队列实现了在事件上的条件等待: 希望等待特定事件的进程把自己放进合适的等待队列,并放弃控制全。因此,等待队列表示一组睡眠的进程,当某一条件为真时,由内核唤醒它们。 等待队列由循环链表实现,其元素包括指向进程描述符的指针。每个等待队列都有一个等转载 2015-08-17 20:45:27 · 434 阅读 · 0 评论 -
Linux内核多线程
Linux内核多线程(三) Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求)。内核需要多个执行流并行,为了防止可能的阻塞,支持多线程是必要的。内核线程就是内核的分身,一个分身可以处理一件特定事情。内核线程的调度由内核负责,一个内核线程处于阻塞状态时不影响其他的内核线程,因为其是调度的基本单位。这与用户线程是不一样的。因为内核线程只运行在内核态,因此转载 2015-08-17 20:48:26 · 600 阅读 · 0 评论 -
Linux内核同步与互斥--锁机制
内核中提供了多种方法来防止竞争条件,理解了这些方法的使用场景有助于我们在编写内核代码时选用合适的同步方法, 从而即可保证代码中临界区的安全,同时也让性能的损失降到最低。 主要内容: 原子操作自旋锁读写自旋锁信号量读写信号量互斥体完成变量大内核锁顺序锁禁止抢占顺序和屏障总结 1. 原子操作 原子操作是由编译器来保证的,保证一个线程对数据的操作不会被其他线程打断。 原子操作有转载 2015-11-17 18:48:28 · 611 阅读 · 0 评论