操作系统和硬件,它们如何在 PC 上协同工作?

是否使用都没关系 Windows, Linux、macOS 或任何其他风格的操作系统。 它们都完成相同的功能,即软件与硬件的通信,执行例程和流程的管理以及许多其他任务。 操作系统在您的系统中的作用是什么,它与硬件有什么关系?

每台 PC 只不过是一个集成的硬件和软件系统,其中操作系统是我们可以称之为最重要的程序,它充当程序和硬件本身之间的桥梁。 没有操作系统,程序就无法与硬件交互,因为我们谈论的是两个不同的世界:第一个世界,基本上是无形的,是程序或软件的世界,第二个,是处理器的世界。 和回忆。

操作系统和硬件,它们如何在 PC 上协同工作

实际上,当我们任何人使用计算机上的应用程序时,我们不仅在使用该应用程序,而且该应用程序使用操作系统,而操作系统又使用硬件。 因此,例如,如果您现在正在编写一个 邮箱地址 或者阅读这篇文章,那么你就必须知道,你在屏幕上看到的是软件、操作系统和硬件之间这种关系的产物。

第一个操作系统很简单,但随着硬件功能的增加,它们可以做越来越多的事情,同时操作系统必须管理它们。 我们也不能忘记当今 PC 存在的种类繁多的硬件。 大多数是通用产品,但其他产品需要特定的通信才能正常运行。

操作系统决定运行的内容、地点和时间

操作系统

程序只不过是一系列顺序指令, 中央处理器 必须执行,程序确实有跳转和循环,如果我们严格来说,程序无非如此。 在每个程序中可以有多个并行或串行运行的子程序。 尽管如此,这些必须在 CPU 上执行,并且操作系统必须始终管理数十个例程和进程。

程序不决定哪个 过程或例行程序 每时每刻都在执行,无论何时何地。 这是管理不同进程的操作系统内核的工作。 你肯定曾经给过任务管理器,特别是后台进程选项卡。

好吧,所有这些都是操作系统必须管理的,它必须以这样一种方式来完成,即每个程序都从它需要的 CPU 接收处理时间。 当程序或 PC 变慢时,这是因为操作系统没有足够的能力(或必要时进行优化)从 CPU 来执行其日常任务。

RAM 和处理器上的 VIP 客户端

系统操作过程记忆

操作系统像其他程序一样运行 内存,但为了防止其余程序干扰其运行甚至修改操作系统处理的数据和指令,所做的就是预留一个RAM空间 专用于操作系统 在任何情况下正常情况下其他程序都无法做到这一点。

因为操作系统是 与硬件通信, 它有一个高于其余程序的层次结构,因为在管理例程的执行时,操作系统也可以访问 到程序的 RAM 空间 . 换句话说,操作系统就像一个管家,可以访问豪宅中的所有房间,这些房间将成为内存,而程序则具有有限的访问权限。 在我们运行虚拟化操作系统的情况下,操作系统的管理程序是可以直接访问硬件的管理程序。

但是,没有什么是完美的,有时会创建安全漏洞,某些程序会利用这些漏洞在操作系统空间中执行代码。 例如,计算机病毒之所以得名,是因为它们设法用它们的代码感染分配给操作系统的那部分内存,从而使它们逃脱其控制。

操作系统和硬件之间的通信

系统操作驱动程序

在 PC 中,对硬件的访问是通过使用 某些内存地址 ,当向它们发送数据时,不会在 RAM 中引起相同的读取或写入效果,但最终会在与该内存地址相关联的硬件上产生特定操作。 无论是自动还是失败,数据都用作所述函数的输入方法。 今天,由于执行了大量的例程和进程,驱动程序被用来与硬件通信程序。

因此,当操作系统需要访问某些硬件功能时,它使 司机工作。 司机只不过是一个 抽象化 硬件的工作原理。 在计算中,我们将抽象称为尽可能模拟元素的程序。 在驱动程序的特定情况下,它不会完全模拟硬件,而是模拟其硬件 通讯接口 . 驱动程序本身就是将其转换为硬件确实理解的指令的驱动程序,以便操作系统可以与 PC 上的不同组件和设备进行通信。

尽管在 x86 架构中,内存和 I/O 的寻址在实际层面上是统一的,而今天它是分开的,因为尽管访问一般是通过 MMU , 它是 国际货币基金组织 即负责与外围设备的通信,从属于第一个。

简而言之,硬件和操作系统在其中必不可少,它们在任何情况下都不是单独工作的,它们需要第三方参与者,例如驱动程序,这使整个框架的所有功能更加复杂。