我的问题是:
当我在Windows/Linux中按下“关闭”按钮时,计算机关机。“关机”命令是如何使计算机实际关机的?
发布于 2018-05-24 13:43:51
在最基本的层面上,纯文本代码最终转化为0和1。这些0和1代表低电平和高电平。此时,电压电平控制各种电路。
想想电池供电的风扇。电池提供的电流为电动机提供动力,电动机内部利用电力产生emag场,导致轴旋转,从而驱动风扇叶片旋转。这是电压如何变成物理的例子。
你可以建立一个“开关”,给定适当的电压,最终将获得电源停止从墙上拉电流。
显然它比这更复杂,但这是它的要点。
为了更容易,计算机由抽象层组成。
最低层是电压,电路,晶体管和硅。硬件上的下一层是操作系统。操作系统管理硬件并提供“挂钩”来使用它,而不是一次又一次地重写每种硬件访问的代码。这些钩子或“接口”允许代码具有访问不同硬件的通用方法。因此,使用操作系统提供的接口,你可以编写你的应用程序。
在每一层中,都有子层,例如硬件可能具有固件 - 一种低级指令集,指示硬件应如何运行,存储在EEPROM中,并在驱动器加电时加载。另一个子层是像python这样的高级语言如何提供库来编写网络软件,而不必直接编程到OS提供的原始套接字API。
操作系统处理大多数硬件/软件交互。硬件供应商编写“插件/模块/驱动程序”,允许操作系统控制其特定的硬件。
所以你会编写一个软件应用程序,利用这些操作系统提供的硬件接口。
发布于 2018-05-24 14:24:56
那么,关机实际上并不是物理上的,电脑中的所有电路都不会完全关闭,除非切断电源。
该软件使用BIOS中的APM(高级电源管理)接口来控制计算机中的电源电路。
当计算机关闭时,它仍然可以在没有物理拉动开关的情况下打开。
https://stackoverflow.com/questions/-100001360
复制相似问题