电脑死机按哪个键重启(电脑死机按什么键结束当前程序)
如果有更好的建议或者想看更多关于电子数码技术大全及相关资讯,可以多多关注茶馆百科网。
今天我想花几分钟时间和大家分享一个有趣且信息量大的问题:当你的电脑死机时,到底发生了什么?
电脑死机,应该是每一个接触电脑的朋友都经历过的吧。
尤其是早年,在电脑配置像现在这么高之前,打开几个比较重量级的应用程序,都会死机,即使你按下键盘上的CTRL+ALT+DELETE,任务管理器也不会出来,最后只能默默含泪按下关机按钮,强行关机。
那么,你有没有想过当你的电脑死机时,你在做什么?
众所周知,计算机的核心是中央处理器(CPU)。上过基础计算机课程的人都知道,cpu是一心一意的,不断地抽出指令并执行,直到关机。
理论上讲,有两种崩溃,一种是CPU罢工,停止执行下一条指令,这是硬件崩溃,但这种情况很少发生。
这更像是一种软件崩溃,CPU卡在了某个地方,无法出来,所以它应该执行的程序没有执行,看起来就像崩溃了。
聪明的你可能马上会想,如果写一个死循环,CPU困在里面出不去,是不是就能死机呢?是这样的:
如果你尝试这样做,你会发现冷却CPU的风扇会转动,但计算机仍然会工作而不会崩溃。
死循环,CPU不是应该一直在这里转吗?它不会崩溃吗?
这就引出了中断的概念。
中断的概念绝对是计算史上最伟大的发明之一。
中断,顾名思义,中断CPU的正常工作,以便它可以在其他地方执行指令程序。
操作系统处于控制状态,因为它在启动时将一系列中断处理程序(例如最常见的时钟中断)插入到CPU中,允许操作系统定期从CPU中收回执行,并安排其他线程执行。
因此,即使其中一个线程陷入了无休止的循环,当您的时间片用完时,您也必须将CPU交给另一个程序。
这自然是不可能崩溃的计算机与一个无休止的循环。
其实要想想也是,如果这么容易就给你死机了,那这个操作系统也太盘菜了,新手如果刚学编程,还得一天强行重启电脑十几次吗?
至少,今天的大多数cpu都有多核,即使不考虑中断。一个线程进入死循环,但是有其他的核心可以参与系统调度,并且仍然不会崩溃。
那么回到最初的问题,CPU卡在哪里,不能出来,甚至不能中断?
有两种情况:
1、打断实在受不了
很多人都知道中断的概念,但是很多人不知道中断是有优先级的。
这很容易理解,例如,如果CPU正在执行一个程序,并且发生了中断事件。CPU保存当前的执行上下文,然后转过来处理中断事件。但是在处理的中途,一个新的中断事件到来。CPU是做什么的?你想回应吗?
因此,中断有优先级。低优先级中断不能中断高优先级中断。
考虑到这一点,想象一下,如果操作系统内核代码编写不当,并在处理中断(比如旋转锁)时陷入无休止的循环,会发生什么?
由于CPU在处理中断时以高优先级运行,正常的中断无法从CPU核心中获取执行,从而导致“植物人”CPU核心在其他方面没有响应。
2. 中断可以抢占CPU,但找不到线程调度
程序员应该熟悉死锁的概念,即两个线程A等待B, B等待A,两个线程互相等待对方屈服(释放锁),从而导致死锁。
如果死锁发生在应用程序级别,这不是问题,最多两个程序死亡。但如果它发生在内核中呢?
例如,在Windows操作系统内核中,有很多全局锁。一个不小心导致死锁,所有其他想要它的线程都必须在队列中等待,这很酷。
0
本文主要介绍了关于电脑死机按哪个键重启(电脑死机按什么键结束当前程序)的相关养殖或种植技术,电子数码栏目还介绍了该行业生产经营方式及经营管理,关注电子数码发展动向,注重系统性、科学性、实用性和先进性,内容全面新颖、重点突出、通俗易懂,全面给您讲解电子数码技术怎么管理的要点,是您电子数码致富的点金石。
以上文章来自互联网,不代表本人立场,如需删除,请注明该网址:http://seotea.com/article/1444023.html