您基本上是在回答问题时回答自己的问题,但是为了获得答案,我将尽我所能尽力回答。
有不同的方法,某些东西可能会变得无响应。
假设您正在使用Windows,尽管此过程与其他操作系统没有什么不同。
与程序交互时,可以通过在程序具有焦点时单击或键入来进行交互。
单击或键入通过鼠标或键盘进入主板。操作系统将查询正在键入的内容以及如何移动鼠标。它解释信号并相应地与程序进行交互。
除非按下具有全局状态的热键,否则键盘快捷键将发送到活动的应用程序。在这种情况下,操作系统将执行不同的操作。
操作系统还将使该程序与其他程序一起运行,而无需任何交互。例如,当您将文件从位置1复制到位置2时,如果您未键入任何内容或不移动鼠标,则文件复制操作仍将继续。
现代操作系统具有一个称为“ 多任务处理”的功能,该功能基本上意味着它可以非常快地循环浏览所有程序,从而为每个程序提供时间来执行其编程中的循环。这样看来,所有程序都可以流畅地同时运行。在此周期中,操作系统本身还将获得CPU时间。
当程序执行大量计算时,CPU的利用率更高。使用的CPU越多,系统其余部分(包括循环所有其他程序)的可用功率就越少。当CPU达到100%利用率时,计算机将变得非常缓慢,因为它正在等待CPU时间来处理所有打开的程序的所有活动。如果发生这种情况,操作系统通常会阻止计算机冻结,但是在这些情况下,计算机可能会冻结。
在创建程序时,可能存在一个错误,当执行一系列任务时,该错误会导致程序崩溃或变得无响应。
在谈论程序错误时,无响应的程度不同。程序可能会暂停执行,等待某个按钮被按下,但是该按钮出现在屏幕外部。该程序正常工作,只是不接受用户输入,因此在技术上似乎不起作用。
程序可能正在执行存储操作,但是该存储操作引用了另一段内存,该段又引用了另一段内存,并最终引用了第一段内存。结果,形成了永无止境的循环。该程序认为其执行的是简单操作,并期望在几纳秒内得到结果,但会导致缓冲区不足或溢出。Windows 7和更高版本具有多种保护,并且将给出严重错误:“程序停止响应并崩溃。发送错误报告”。在早期版本的Windows中,根据内存循环的严重程度,可能会导致蓝屏死机。
操作系统本身在本质上也是程序,并且具有相同的问题。编程中的错误可能会导致整个操作系统无响应。
最后,操作系统的一部分是用于与硬件通信的程序。这些称为驱动程序。与普通程序一样,驱动程序也可能崩溃并变得无响应,尽管发生这种情况的可能性较小。鼠标仍然可以工作时,键盘驱动程序可能崩溃并导致键盘停止响应。
操作系统通常会检测驱动程序问题,并尝试重新启动驱动程序。取决于对驱动程序进行编程的程度,可以确定用户发现撞车事故的程度。有时可能会导致显示闪烁,仅此而已,有时会显示一个弹出窗口,指示驱动程序已崩溃并重新启动。
即插即用驱动程序通常稳定且不会崩溃。特定硬件的自定义驱动程序可能更容易崩溃,因为未发现某些错误的可能性更高。
有了上面的解释,就该回答问题了。
如图所示,崩溃可能由于不同的原因和严重程度而发生。如果CapsLock键将触发LED灯,则需要两件事。它要求驱动程序正常运行,并且要求操作系统给予时间来处理驱动程序的编程周期(我之前提到的多任务处理部分)
如果两个都成立,请按Capslock键将执行以下操作:
按下键盘上的键,其信号发送到主板。操作系统的驱动程序向操作系统解释发生了什么,并且驱动程序将一条消息发送回键盘,指示LED状态应更改为新状态。操作系统将使用此信息在大写字母中键入文本。但是,某些程序会通过向驱动器发送第二个Capslock信号来关闭LED键。在这种情况下,取决于键盘,CapsLock指示灯可能永远不会点亮。
如果按下大写锁定键后驾驶员没有立即得到骑行,则LED不会改变。但是由于某些原因,系统可能很慢,并且周期被延迟。在这种情况下,按下大写锁定键或数字锁定键不会立即更改LED的状态,而是在一两秒钟后会发生这种情况。
最后,由于某种原因,在操作系统级别上,它可能会等待驱动程序编程周期,因为它正在等待某些东西。在这种情况下,可能仍可以移动鼠标,但其他所有内容似乎都被冻结了。
如果经过5秒钟的时间后正常的键盘LED功能无法正常工作,则电脑将出现严重故障,可以安全地认为系统已严重崩溃且无法恢复。
还有另外两个键,即“滚动锁定”和“数字锁定”。在这三个键中,由于该键的性质,Numlock是其他程序可能不会滥用的唯一键。使用数字锁来测试系统是否响应,比使用大写锁定或滚动锁更为可靠,因为某些程序倾向于使用这些键来触发其他功能,因此,它们通常会使LED状态变为熄灭,从而使系统处于关闭状态。使用Capslock或滚动锁测试时可靠性较低,而使用Numlock进行测试时可靠性较高。