为什么我的电脑在切换创建用户的时候会卡死机?
生活随笔
收集整理的這篇文章主要介紹了
为什么我的电脑在切换创建用户的时候会卡死机?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
了解不深,就嘗試套一下理論吧。
在現今流行的windows桌面機上,假如某個應用的線程出現了死循環,它是會消耗掉很多CPU時間,但不該100%占用甚至卡死系統。原因有兩點,一是用完它的時間片,內核會強制切換到別的線程上去執行;另外多核的CPU,最多一個核被100%占用,其它線程還是能歡快地分享剩下的N-1個核。
寫了個死循環代碼在Win7 四核機器上做了個實驗,確實卡不死,只有一個核在100%,該進程在24%~25%徘徊。
所以,猜測這是由于某個內核線程的死循環
導致的,而非用戶態線程。Windows / Linux屬于非搶占式內核,如果一段ring0代碼霸占著CPU某個核不放,就算處理過中斷還是會繼續霸占下去,不會切換到別的線程。如果還在自旋鎖的互斥保護范圍內,那另外的N-1核在事實上也被廢了。或者系統里其它各個用戶態線程的優先級和這個死循環代碼在別的核上的兄弟代碼不對等,所以分到的CPU時間會極端少?內核態死循環的殺傷力滿塞,這個我就沒做試驗了。簡言之,大概某個驅動寫得忒爛了。
總結
以上是生活随笔為你收集整理的为什么我的电脑在切换创建用户的时候会卡死机?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 徐州房屋租赁登记备案证明在哪里办理?
- 下一篇: 企业会计准则备案信息填写?