日期::2024-10-31作者:网友整理人气:
日常工作中,电脑是大多数人都在用的工具。
那肯定所有人都有遇到过电脑蓝屏死机,或者是Mac上的5国语言报错吧。
那么你有没有深入的想过,电脑死机的时候,它到底在干些什么呢?今天这一期,就来聊聊这个事。
电脑死机有好几种,一种是比较彻底的,屏幕被冻结,或是直接蓝屏和黑屏,你只能按下电源键来强制重启。
而另一种是鼠标还能移动,但点按都没反应,并且鼠标的图标变成沙漏或是转圈。这种时候,按下键盘上 CTRL+ATL+DELETE,还能调出任务治理器,强制关闭未响应的程序还能让电脑恢复的。
所以可以说电脑死机,也就是计算机的核心中心处理器CPU出了问题。
上过计算机基础课的同学们一定知道一个原理。CPU是一根筋死脑筋,只知道不断的取出指令来一条一条得执行,直到关机为止。好在现在的电脑都具有多核心了,要是像几十年前的老电脑,一旦多开几个重量级应用,那运行缓慢,死机等情况都会如约而至。主要原因是同一时间给到CPU的指令太多,CPU一下子运算不过来了,后续的指令就需要前一条完后再来处理。但是加上一些程序本身设计的原因,CPU等待的时间大于了程序本来预设的超时时间,就造成程序前后断链,使得CPU跳过了原本要运行一段指令,转而运行后面的指令去了。这样就造成CPU自己也懵了圈,怎么就驴头不对马嘴了。就好比怎么这人进门的时候是男的,出门就变成女的了。CPU进入逻辑错误,被困在一个地方出不来了,使得后续的程序无法执行,就变得像是死机一样了。
这就是软件层面的死机。
但假如有人说,CPU这么轻易死脑筋,那我写一段永远循环的代码让CPU自己跑起来那也能像病毒一样让电脑死机崩溃了?其实没这么简朴。虽然电脑可能会风扇全力运转,但是计算机却依旧能正常工作,并没有死机。唉?这不就前后矛盾了吗?前面说CPU是一根筋的,怎么现在让它被困在原地却还能运行呢?
那么就要提到另一个概念中断。
中断这个概念,绝对是计算机史上最伟大的发明之一。
中断,顾名思义,用于打断CPU正常的工作,让它去执行别处的指令程序。
操作系统之所以能够掌控全局,就得益于它启动时给CPU安插的一系列的中断处理函数(比如我们最常见的时钟中断),好让操作系统能周期性的收回CPU的执行权,调度别的线程来执行。
所以,即便你某个线程进入了死循环,在给你时间片用完之后,穿插的中断函数就会起作用,查看是否还在正常运算,假如不正常,就把出问题的应用给踢出CPU运算队列,让别的程序来执行。
所以,想用一个死循环程序就把电脑搞死机,那自然是不可能的。
退一万步讲,就算不考虑中断的影响,现在的CPU大都是多核,一个线程进入死循环,但还有别的核可以参与系统调度,也依然不会死机。
那么问题又来了,既然有中断,那为什么CPU还是会被困在原地里死机出不来了呢?
这其实有两种情况:
中断优先级不够
中断在运行时,也有优先级的概念。
这很轻易理解,比如CPU正在执行程序,忽然发生了一个中断事件。CPU保存好当前执行的上下文,转头去处理这个中断事件,但刚处理到一半儿,这时又有一个新的中断事件来了,那CPU怎么办?要不要响应?这时,就要看谁的官大听谁的。
所以,低优先级的中断无法打断高优先级的中断。
有了这个前提来试想一下,假如由于操作系统内核代码写的不当,在处理某个中断的时候陷入了死循环,会发生什么?
因为在处理中断的时候,CPU运行在一个很高的优先级上,一般的中断是无法把执行权抢过去的,这就导致这颗CPU核心成为了植物人,怎么叫它都没反应了。也就死机了。
2.中断能抢到CPU,但发现没有进程程可以调度
这里又有一个新的概念,死锁。
死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。
这里可以有一个比喻,2辆公交车并排预备出同一个站头,由于出站门只能同时出一辆车。于是调度说(也就是CPU说)A车你先出,A车说不行,因为驾驶员还在B车上,B车你先出。B车说也不行,按照规定我是一定要等你A车出了以后才我能出的(优先级没你高)。A车说那你开门让驾驶员下来,B车说那也不行,你不先出去我开不了门。最后CPU蒙圈得说,那先谁也别出了,就在门口把事情绕清晰再说。等待良久CPU又说,还是A车你先出,A车说不行,因为驾驶员还在B车上。。。 于是循环又开始了。
假如这个死锁发生在应用层面,那问题不大,最多就是两个程序死了。但假如发生在内核呢?
比如在Windows操作系统内核中,就有大量的全局性的锁,一个不小心造成死锁,其他想要的线程都得进入等待队列,那就凉凉了。
所以死机时,电脑不是真的罢工了,而是在内部的逻辑中反复运算。尝试能让自己说服自己。但往往这些折腾都是徒劳的。最终还是直接拔电源重启来的干脆。
那这,就是电脑死机时发生的那点事。归根到底,程序的设计上有BUG,造成通道堵塞引起CPU进入循环出不来。但程序上的BUG是永远存在,修复老BUG会有新BUG的出现。工程师能做的,就是尽量得精益求精,但无法十全十美。
01.
我们经常听说男人在婚前会如何把自己心爱的姑娘给放在心尖上,那么在婚后呢?
在结婚之后,他是不是还记得你的生日,你们的结婚纪念日,你们在结婚之后还会继承爱吗?
好的爱情是藏在生活的细微之处,落到穿衣、吃饭、睡觉,同一个屋檐下一个人爱不爱你,你看他怎么对你的就行了。
一个真正爱你的男人,他的心里是有你的,他也会记得关于你的一切,尤其是你的生日。你们结婚后,他还记得给你过生日吗?会不会因为工作忙碌而忽略了。
晓雨有点开始怀疑老公对她的心意。生日快来的那一天,晓雨特殊希望自己能失忆,她不想提醒老公,很想少女心一下,看看老公是多么爱她。
晓雨的老公偏偏就属于那种不太会说话的男人,不会说美丽话,但是会办实事。
心里想了无数次不要记得生日,晓雨还是忍不住发脾气问老公了:你看你根本不爱我,我的生日你从来没放在心上。怎么不记得,这不还没到吗?老公的迟疑,让晓雨觉得是推辞,她开始有点伤心了。
到了生日那天,晓雨也没有收到她老公的一句生日快乐,心里有点郁闷。老公早起上班的时候照例吻了她一下,之后就匆匆上班去了,临到中午的时候也没有打电话来关心晓雨有没有吃饭。
晓雨一个人带孩子累到不行,然后再加上生日这天也没有什么安慰和礼物,她多长有点委屈,觉得老公不爱她了。
他没给我过生日的样子,他没有把我放在心上,似乎我做什么都不值得了。
女人就是这样,在婚姻里做什么都可以,但前提是这个让他付出的男人得爱她,真心实意的爱她。
02.
晓雨生日那天,临到下午三点的时候,老公终于打来了电话,很是温柔的声音:收拾一下,一会呢我去接你,带你吃好吃的。但是你得在商场先自己玩一会,我还有个会要开。
晓雨她们家离她老公上班的地方有点远,一来一回要花上一个小时的时间,晓雨心疼老公让她别来接了,老公直言:那怎么行,你一个人带孩子不方便。晓雨心里有点小开心,然后很快的化妆穿衣,给孩子穿衣服,收拾妈妈包,只等着老公回家接她。
下午四点的时候,她老公还真的来了。晓雨假装不开心的说:我以为你不想给我过生日了。即便是没有什么礼物,但是老公能来接她陪她过生日,心里也是有她的。
她老公就是那种诚实男人,不会挑生日礼物,一向是你喜欢什么,我带你买好不。不是所有的男人都能很懂女人,有一些男人不会花哨的送礼物,但是他心里是真心实意爱的。
老公把晓雨和孩子送到商场,然后自己又赶快回去要开会。差不多过了一个小时,老公终于来商场找他们了,晓雨很开心的让一岁多的宝宝自己走着去找爸爸,宝宝扑倒老公怀里老公来抱她的时候,晓雨感受到了一种幸福。
真正的幸福不一定要有礼物,但是那个你爱的人他对你温柔,肯花时间陪着你也就足够了。
老公带晓雨去吃了她一直很想吃的一家菜,吃饭的时候主动喂孩子,让晓雨好好的吃饭。
其实一个男人心里有没有你,未必要用礼物来表现,只要是他真心实意的肯陪着你,你也就知道了他的心意。
老公爱不爱你,同一个屋檐下生活,你怎么可能不清晰。
03.
那天的生日过得平静而又有点小开心,晓雨和她老公在一起有六年了,结婚三年,但还是犹如初恋一般。吃完饭,老公抱着孩子陪同晓雨买礼物,很是霸气的说:老婆,只要是你喜欢的,你想要的,买了就行了。我不会挑礼物又怕挑到你不喜欢的款式,索性让你自己挑,买你喜欢的。
一句话说的晓雨感动到不行,然后小跑过去抱了抱她老公。
其实就是这样,有很多男人比较大条,未必会去挑你的生日礼物,但是他带着你去买也是一种真心实意。
结婚之后,老公爱不爱你,看他给你过生日的样子就能很自然知晓一切。
有些男人在结婚之后都忘记了对老婆的爱,哪还会记得老婆生日,甚至在老婆说了后还会来一句:老夫老妻了,过什么生日。
婚姻幸不幸福,要害在于婚姻里的你们如何去经营?
不要用工作的忙来给你的不关心找借口。如若你真的想和妻子培养好感情,不妨对她多关心一点,哪怕你什么都不买,只要在她生日那天陪着她就好。
女人就是这样,他们的要求很简朴,只要是能让她看到你是真心实意的对她就好。
结了婚不要忘记爱,还是要记得彼此的生日,让你的生活有仪式感,一个男人爱不爱你,看他给你过生日的样子就会知道。
好的爱情未必要有礼物,但是那个爱你的人一定会陪在你的身边。
今日话题:结婚之后,你老公还会陪你过生日吗?请留言。- END -
★作者:YIBAO;情感原创作者,写这个世界温暖的感情事。