注職場辦公,分享實用干貨,洞察科技資訊!大家好,這里是職場科技范~
我們在使用電腦的時候,最害怕的就是卡屏死機,尤其是文件未保存時,簡直就是滅頂之災,每次碰到這種情況,真的砸電腦的心情都有,今天就教大家如何解決這個問題。
方法一:硬盤空間不足
系統盤滿了是也會導致電腦經??ㄋ?,系統盤一般都是C盤,如果是硬盤問題導致的卡頓,解決方法如下:
1.首先在桌面上找到【此電腦】,鼠標雙擊進入;
2.然后選中C盤,右鍵選擇【屬性】,點擊【磁盤清理】,電腦會自動計算可釋放的空間。
3.最后點擊【清理系統文件】,勾選“Windows 更新清理”、“臨時文件”,進行刪除即可。
方法二:內存和CPU占用較高
如果是內存、CPU占用高導致的電腦卡頓,那么我們可以用下面這個方法來解決。
1.首先按住鍵盤上的【Ctrl+Alt+Delete】組合鍵,調出任務管理器;
2.隨后打開任務管理器,找到【性能】,這里我們可以看到在窗口中顯示有【CPU】和【內存】;
3.接著我們打開資源監控器,查看占用比例較高的程序,右鍵選擇【結束進程】就可以了。
方法三:CPU溫度過高
CPU溫度過高無法發揮其性能,電腦會卡這是正常現象,CPU溫度過高解決方法如下:
若以上方法都無法解決,可嘗試更換CPU解決。
方法四:更換電腦硬件
如果是電腦硬件都問題,那么解決方法只有一個,就是更換升級。內存不足就更換內存,硬盤不足就更換硬盤。
電腦經常性卡屏死機,大部分都是這些問題,希望對大家有所幫助。
今天花幾分鐘跟大家分享一個很有意思又能漲知識的問題:電腦死機的時候到底在干什么?
電腦死機,應該每個接觸計算機的小伙伴都經歷過吧。
尤其是早些年,電腦配置還沒現在這么高的時候,多開幾個重量級應用程序,死機就能如約而至,就算你把鍵盤上的CTRL+ALT+DELETE按爛了,任務管理器也出不來,最后只能默默含淚長按關機按鈕,強制關機。
那么,你有沒有想過,電腦在死機的時候,它到底在干嘛呢?
眾所周知,計算機的核心中樞是中央處理器CPU。上過計算機基礎課程的同學都被教導過:CPU是一根筋死腦筋,只知道不斷的取出指令來一條條執行,直到關機方休。
所以理論上,死機分為兩種,一種是CPU罷工不干了,不再執行下一條指令了,這屬于硬件死機,不過這種情況基本不會發生。
更多的是軟件層面的死機,也就是CPU被困在了某個地方出不來了,導致本該執行的程序得不到執行,看起來就是死機了一般。
聰明的你可能馬上想到,如果寫一個死循環,把CPU陷在里面出不去,是不是就能死機了?比如這樣:
void dead_loop() {
while (1) {
...
}
}
你可以試一下,會發現為CPU降溫的風扇可能會轉起來,但計算機依舊能正常工作,并沒有死機。
死循環,CPU不是應該一直在這里轉圈嗎?難道不會死機?
這就不得不提到一個概念:中斷。
中斷這個概念,絕對是計算機史上最偉大的發明之一。
中斷,顧名思義,用于打斷CPU正常的工作,讓它去執行別處的指令程序。
操作系統之所以能夠掌控全局,就得益于它啟動時給CPU安插的一系列的中斷處理函數(比如我們最常見的時鐘中斷),好讓操作系統能周期性的收回CPU的執行權,調度別的線程來執行。
所以,即便你某個線程進入了死循環,在你的時間片用完之后,也得乖乖交出CPU,讓別的程序來執行。
想用一個死循環就把電腦搞死機,那自然是不可能的。
其實想來也是,如果這么容易就給你搞死機了,那這操作系統也太菜了吧,新手如果剛學編程,還不得一天強制重起電腦十幾回?
退一萬步講,就算不考慮中斷的影響,現在的CPU大都是多核,一個線程進入死循環,但還有別的核可以參與系統調度,也依然不會死機。
那么回到開始的問題,那到底CPU被困在了哪里出不來,連中斷都拿它沒辦法呢?
其實有兩種情況:
1、中斷確實拿它沒辦法
很多人都知道中斷的概念,但很多人不知道,中斷也是有優先級的。
這很容易理解,比如CPU正在執行程序,突然發生了一個中斷事件。CPU保存好當前執行的上下文,轉頭去處理這個中斷事件,但剛處理到一半兒,這時又有一個新的中斷事件來了,那CPU怎么辦?要不要響應?
所以中斷也有優先級之分,低優先級的中斷無法打斷高優先級的中斷。
有了這個前提來試想一下,如果由于操作系統內核代碼寫的不當,在處理某個中斷的時候陷入了死循環,比如自旋鎖,會發生什么?
因為在處理中斷的時候,CPU運行在一個很高的優先級上,一般的中斷是無法把執行權搶過去的,這就導致這顆CPU核心成為了“植物人”,怎么叫它都沒反應了。
2、中斷能搶到CPU,但發現沒有線程可以調度
程序員們對死鎖這個概念應該不陌生,兩個線程A等待B,B等待A,兩個線程互相等待對方讓步(釋放鎖),形成僵持局面,最后成為死鎖。
如果死鎖發生在應用層面,那問題不大,最多就是兩個程序死了。但如果發生在內核呢?
比如在Windows操作系統內核中,就有大量的全局性的鎖,一個不小心造成死鎖,其他想要的線程都得進入等待隊列,那就涼涼了。
引用一段另一位大神Tim Chen的描述(我覺得特別形象):