对于没有相应硬件的驱动程序,下半部分是什么?

时间:2010-05-31 15:33:12

标签: device-driver

这个问题的灵感来自于这个answer

对于没有实际硬件设备的驱动程序,下半部分做了什么?

3 个答案:

答案 0 :(得分:2)

下半部分概念仅在您为驱动程序中的硬件中断提供服务时才有用。硬件中断服务路由将屏蔽较低优先级的中断,因此您希望尽快离开硬件。下半部分,无论是tasklet还是工作队列,都被视为软中断,因此它们通常不会屏蔽任何内容。

就任务隔离而言,您不希望在硬件中进行任何可能被阻止的调用。最佳做法是将数据保存在上半部分,然后在下半部分执行任何处理/系统调用/ kmalloc /等。

答案 1 :(得分:1)

这看起来更像是一个概念上的划分,而不是一个实际的划分,即:

  • 下半部分 - 向设备
  • 发送和接收消息
  • 上半部分 - 与平台对话

在没有实际设备的驱动程序中,“下半部分”执行驱动程序应该执行的操作。例如,如果它是RAM磁盘,则它管理内存块。

答案 2 :(得分:1)

该答案使用隐喻来解释设备驱动程序。不一定是两半的划分,其中底部控制硬件。

在任何情况下,答案可能是“下半部分”模拟某些硬件,如虚拟CD-ROM驱动器或类似的东西。