为什么驱动程序一般在内核态工作
答案:2 悬赏:30 手机版
解决时间 2021-01-26 16:10
- 提问者网友:抽煙菂渘情少年
- 2021-01-26 00:01
为什么驱动程序一般在内核态工作
最佳答案
- 五星知识达人网友:从此江山别
- 2021-01-26 01:24
驱动的种类很多,有你所说的设备驱动,但是还有一大类内核驱动。
要理解什么是驱动程序就要知道用户程序和内核的关系。
应用程序都是用户程序,在执行用户程序是CPU处于用户态,有些特权指令无法运行。
运行操作系统的代码时,CPU处于内核态,是可以执行特权指令的。
驱动程序就是用户程序想完成个功能,但是必须要在内核态完成,所以就需要一个内核态的助手,这个助手就是驱动程序。驱动程序是加载到内核里的。
要理解什么是驱动程序就要知道用户程序和内核的关系。
应用程序都是用户程序,在执行用户程序是CPU处于用户态,有些特权指令无法运行。
运行操作系统的代码时,CPU处于内核态,是可以执行特权指令的。
驱动程序就是用户程序想完成个功能,但是必须要在内核态完成,所以就需要一个内核态的助手,这个助手就是驱动程序。驱动程序是加载到内核里的。
全部回答
- 1楼网友:封刀令
- 2021-01-26 01:58
操作系统的内核(kernel)的不同,体现在-可执行文件格式的不同(linux用的是标准的elf格式,我不了解windows采用什么格式)-系统调用(syscall)不同,系统编程接口不同,导致在两个操作系统间的程序移植比较困难-静态、动态链接库机制、格式不同-开发方式不同,linux内核是开放源码的,而windows是封闭式开发。-等等等等
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯