操作系统和硬件/软件之间交互的接口?

操作系统和硬件/软件之间交互的接口?

以下说法正确吗:

  1. OS与硬件设备交互的接口是设备驱动;

  2. 操作系统与软件应用程序之间的交互接口是 应用程序二进制接口

如果有不妥的地方还请大家指出。

感谢致敬!

答案1

应用程序和操作系统之间的接口是 API。ABI 定义如何,在任何两个软件之间。API 定义什么

答案2

几乎:

  1. 从技术上讲,设备驱动程序为接口(只是一个 API,见下文或功能规范)实现或提供预期功能,该接口是 I/O 和电源管理功能。设备驱动程序是一个“层”。

  2. 应用程序二进制接口 (ABI) 指的是函数和系统调用在汇编器级别上的工作方式。ABI 回答了以下问题:我是一个函数,我如何获取我的参数(从堆栈获取?从寄存器获取?等等)。遵循相同 ABI 标准的两个二进制文件可以使用或调用彼此的函数。

应用程序接口更可能是您的意思。API 是定义明确的函数,包括函数名称、所需参数以及函数功能的详细规范,允许程序员利用另一个二进制文件提供的服务。ABI 只关心“链接”,而不定义任何具体要完成的事情。

答案3

我认为操作系统充当软件和硬件之间的接口。由于操作系统控制计算机的所有操作,因此它能够从硬件接口提供软件运行所需的细节或元素。因此,操作系统通过在硬盘上进行虚拟存储管理来支持软件运行。因此,软件支持的文件通过操作系统链接到硬盘。

相关内容