• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

Linux下驱动开发中,使用内核态驱动,对系统性能的影响

沃尔夫斯堡的羊 2021-04-29 浏览量:579
周知,常规Linux下设备驱动都是处于内核态的,在用户态使用时可以当作设备文件来打开,可是内核态的驱动会涉及到从用户态和内核态之间的切换,这项开销比较大,会影响到系统性能,那为何还采用这种方式呢?平时使用驱动是什么样的方式?用户态驱动?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 现在很多Linux设备都是模块化驱动的吧,而且驱动其实不会随意的从用户态和内核态间频繁切换的,一些与具体用户应用层的交互是通过系统级的中间层来转换支持的,这样来隔离普通应用程序和系统核心。
    • 发布于 2021-05-01
    • 举报
    • 评论 1
    • 0
    • 0
沃尔夫斯堡的羊 回复了 xdsnet:用户态的程序如果调用底层硬件驱动来完成某种功能,该怎么调用?中间件是封装了一层?而且中间是属于用户态还是内核态?抑或都不属于?中间件和用户态以及内核态间的切换开销大不 回复

其他答案 数量:2
  • 感觉驱动,这些涉及到底层硬件层的都是内核态的吧,用户态很少来控制硬件 。


    • 发布于2021-05-13
    • 举报
    • 评论 1
    • 0
    • 0
沃尔夫斯堡的羊 回复了 一笔之名也 :用户态的程序如果想调用底层某个硬件驱动,该怎么调用?中间层再封装一层? 回复

  • 采用这种方式是为了安全考虑的,内核态的权限是要比较高的,用户态的权限低一些。
    • 发布于2021-05-18
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

Linux下驱动开发中,使用内核态驱动,对系统性能的影响