LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 951|回复: 7

2.6抢占式内核提供了哪些相关的API内核函数啊?

[复制链接]
发表于 2005-9-18 14:51:28 | 显示全部楼层 |阅读模式
2.6内核最大的特点可以说就是,具有抢占式。那么,请问,内核提供了哪些API函数给我们使用啊?

请具有这方面经验的朋友提携一下,谢谢拉!
发表于 2005-9-18 23:34:09 | 显示全部楼层
感觉你没有理解抢占式内核的意思。

你说的API函数是指的给编写模块使用的吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-19 07:23:46 | 显示全部楼层
Post by daemeon
感觉你没有理解抢占式内核的意思。

你说的API函数是指的给编写模块使用的吗?


对啊,内核提供了抢占式的特性,那么是不是我们可以控制这些特性,或者说更好的利用这些特性,所以我觉得应该有一些函数提供的,不知道对不对?
回复 支持 反对

使用道具 举报

发表于 2005-9-19 10:11:50 | 显示全部楼层
The kernel preemption code uses spin locks as markers of nonpreemptive regions. If a spin lock is held, the kernel is not preemptive. Because the concurrency issues with kernel preemption and SMP are the same, and the kernel is already SMP-safe, this simple change makes the kernel preempt-safe, too.
回复 支持 反对

使用道具 举报

发表于 2005-9-19 13:08:28 | 显示全部楼层
我觉得抢占式内核就是在任务调度时体现他的特性出来,内核可以被其他的任务抢占。用2.6的内核,桌面响应不是好很多吗?
回复 支持 反对

使用道具 举报

发表于 2005-9-19 17:53:04 | 显示全部楼层
Post by freesky64
我觉得抢占式内核就是在任务调度时体现他的特性出来,内核可以被其他的任务抢占。用2.6的内核,桌面响应不是好很多吗?


不是任务调度时, 而是什么时候能任务调度。
回复 支持 反对

使用道具 举报

发表于 2005-9-22 12:28:51 | 显示全部楼层
嗯,抢占体现在何时可以调度,
Linux Kernel Development 一书中提到了四个调度时机(内核抢占):

When an interrupt handler exits, before returning to kernel-space

When kernel code becomes preemptible again

If a task in the kernel explicitly calls schedule()

If a task in the kernel blocks (which results in a call to schedule())
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-28 07:45:39 | 显示全部楼层
谢拉,明白了一些。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表