-1

所以我很困惑我们作为程序员是如何与计算机上的设备对话的。现在我不是在谈论大的想法。我知道有一些设备驱动程序位于硬件之上,以便不同的程序可以使用这些功能。

但总的来说,谁与司机交谈?编写应用程序的程序员是否负责调用驱动程序上的函数?还是程序员通过操作系统调用一个函数,然后处理对驱动程序的调用?正如您所看到的,我真的对驱动程序、操作系统和您的应用程序如何组合在一起的细节感到困惑。

4

1 回答 1

1

应用程序不直接调用驱动程序——这将违反用户模式和内核分离的整个理念。相反,操作系统向用户模式程序公开相关的ABI,使应用程序能够调用公开的功能(关于应记录的预定义限制)。

于 2016-06-12T19:31:30.383 回答