麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

linux

2019-11-11 07:10:06
字體:
來源:轉載
供稿:網友

2.6之前不支持內核搶占,支持用戶搶占。用戶態搶占必須等內核代碼運行完畢,返回用戶態前夕。內核搶占是在內核代碼運行期間,內核態里其他代碼間互相搶占。

內核態搶占發生時機:1.中斷調用返回,need_resched == 1,2.內核從不可搶占變為可搶占PReempt_count(這個是持有鎖個數) ==0,也是隱式調用schedule()3.內核任務顯示調用schedule,主動放棄cpu4.內核任務被阻塞,顯示調用schedule

判斷是否可以搶占:1.當前任務不持有鎖。也就是thread_info結構體中的preempt_count==0

內核搶占,在很多地方還是為了保護臨界區資源而需要臨時性的禁用內核搶占不可搶占情況很多,先說幾個內核不可以搶占情況:1.中斷2.當期進程持有鎖3.內核正在調用schedule函數4.內核正在處理每cpu私有數據

任務調度時機:1.當前進程變為非可執行2.搶占:當前任務時間片用完 or 高優先級任務就緒

 

linux 將所有的線程都當作進程來實現。在linux2.6之前,內核并不支持線程的概念,僅通過輕量級進程(lightweight process)模擬線程在linux2.6之后,為了完全兼容posix標準,引入了線程組的概念(仍然用輕量級進程表示線程),有了這個概念就可以將一組線程組織稱為一個進程,如此通過這個改變,linux內核正式支持多線程特性。

系統調用clone創建子進程時, 可以有選擇性地讓子進程共享父進程所引用的資源. 這樣的子進程通常稱為輕量級進程,又叫內核線程。

linux2.6前,用輕量級進程模擬線程,只實現了posix線程5點要求的1點;linux2.6,引入了線程組的概念,真正實現了posix線程所有的5點要求;但還是用輕量級進程模擬線程。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品午夜未成人免费观看 | 欧美亚洲一区二区三区四区 | 国产一区视频观看 | 欧美成年性h版影视中文字幕 | 久久免费视频一区二区三区 | 美女黄色影院 | 亚洲一级电影在线观看 | 精品久久久久久中文字幕 | 精品国产99久久久久久宅男i | 国产日本在线播放 | chinese xvideos gay| 污黄视频在线播放 | 欧美成人三级视频 | 国产成人高清在线观看 | 99在线热播精品免费 | h色在线观看 | 久久久久久久久久亚洲 | 久久99精品久久 | 毛片视| 黄色aaa视频 | 久久国产中文 | 中文字幕 亚洲一区 | 视频一区二区三区在线播放 | 久久国产夫妻视频 | 91九色福利| 免费人成年短视频在线观看网站 | 成人不卡一区二区 | 一级电影免费在线观看 | 一区二区三区小视频 | 成人羞羞网站入口 | 欧美成人性色区 | 黄色一级片毛片 | 日本在线国产 | 91性高湖久久久久久久久网站 | 狠狠干五月天 | 校花被肉干高h潮不断 | 嫩呦国产一区二区三区av | 蜜桃视频在线观看视频 | 久久综合精品视频 | 中文国产在线视频 | 成品片a免人视频 |