又一个冷知识,电脑死机的时候,主机依然在运行,那么这个过程,电脑在干什么呢?
“电脑死机”是十分常见的电脑问题,在我们使用电脑的时候,突然屏幕中的画面就卡住不动了,包括鼠标点击了也没有任何的反应 。
有的小伙伴想试着调出任务管理器,却差点就把键盘上的【CTRL+ALT+DELETE】按烂 。不管怎么操作键盘,电脑都没有一点反应 。
最后,只能用粗暴的方法强制按关机键关机重启 。
好奇,在死机的时候,电脑到底在干什么?
电脑的大脑是“CPU”,它的主要作用是进行运算和控制,处理着各种信息 。
电脑的CPU是一根死脑筋,它是不断地取出指令来一条条执行,直到关机方休!
所以,电脑不会那么容易死机,除非出现这两种情况 。
一种是CPU摆烂不干了,不再执行下一条指令 。这属于硬件死机,出现这种情况是让用户感到最头疼的 。不过出现的概率很低,基本上不会发生 。
另外一种就是软件方面的死机 。CPU被困在了某个地方出不来,导致无法响应用户的输入,本该执行的程序得不到执行电脑就和死机了一样 。
突然有个问题,我们是不是可以创建一个死循环命令让电脑执行,故意把CPU困在里面让它出不去呢?
当然不行,用死循环就想把电脑搞死机是不可能的 。
因为操作系统会用“中断”进行干预 。
有了中断的加入,CPU指令就多出了一个检查中断的步骤 。中断就是可以打断CPU正常的工作,让它去执行别处的指令程序 。
我们最常见的是“时间中断”,即便某个线程进入了死循环,在一定的时间后也要把CPU放出来,让别的程序来接手 。
另外,现在的cpu大都是多核,如果一个线程进入死循环,也有别的核可以参与系统调度呀,所以不会这么容易就死机 。
【计算机冷知识:电脑死机的时候,它到底在做什么?】接着回到连中断都搞不定的死机问题,cpu被困在哪里出不来呢?
首先,中断是有优先级的,低优先级的中断无法打断高优先级的中断 。
例如cpu正在执行程序,突然发生了一个中断事件,cpu会保存当前执行的去处理这个中断事件,然而中途又出现了一个新的中断 。在处理中断的时候,cpu运作在一个高的优先级上,一般的中断是无法把执行权抢过来的,所以就导致这颗cpu没有响应,电脑就死机了 。
另外一种情况,中断抢到了执行权,却发现没有线程可以调动!
比如,两个线程a等待b,b等待a,且互相等待对方让步,局面僵持,最后就成为“死锁” 。
“死锁”出现在应用上,就会导致两个应用崩了 。而出现在内核中,就会让电脑死机:
推荐阅读
- 985 高校计算机系学生都在用的笔记本,我被深深地种草了
- 第54次全国计算机等级考试注意事项,考生们赶紧看看
- 开冷饮店需要注意哪些问题?
- 蘑菇冻了还能吃吗
- 热带鱼凤尾鱼的养殖方法介绍 凤尾鱼是热带鱼还是冷水鱼
- 如何教育孩子成为有学问的人 怎样让孩子长知识
- 说需要冷静传递出什么信息 女朋友说冷静一段时间怎么办
- 什么蔬菜可以冷冻以后吃
- 计算机图形学和数字图像处理学的区别与联系 pr自动重构序列怎么点不了
- 一个羹一个炙是什么成语