亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

操作系統內核的一些事

發布時間:2020-06-27 06:10:53 來源:網絡 閱讀:413 作者:dog250 欄目:系統運維

一.總的來講,操作系統只要能實現以下兩點就可以了:
1.時間的假象和空間的假象
時間假象的作用是實現了多進程/多線程;空間假象的作用是實現了虛擬內存。無疑,這兩點是現代操作系統的基石。
2.和硬件接口以及和用戶態的接口
從硬件那里接收信息,這個用中斷實現,和硬件互相讀寫,這個用基本IO實現;從用戶接收請求,這個用系統調用...向用戶發送信息,這個用信號...。無疑,這樣就在接口層次滿足了上層用戶和底層硬件的要求,無疑,UNIX在這一點上是成功的(信號,IPC,POSIX...)。
二.大內核和微內核
如果我們把操作系統內核在其生命周期的前期按照時間分割,我們把它分為源碼階段和二進制階段,大內核和微內核的區分是二進制階段的區分。我們都知道,Linux是大內核,然而為何大而不亂呢?實際上看看它的源碼就明白了,它的源碼組織非常好,核心文件不到100個,其它的都是驅動或者體系結構相關的代碼。畢竟,開發者知道,對于二進制文件,人是看不懂的,人所看的是源碼,將二進制文件分開,無疑會增加維護的復雜性,更何況,將問題控制在源碼階段就節省了很多調試時間。
三.設備驅動開發
1.閱讀datasheet,編寫IO、中斷例程
2.和操作系統內核接口,也就是插入內核最低端
3.和用戶態接口,也就是在最上端導出一個用戶接口,比如ioctl
4.編寫用戶態demo和工具進程,調用第3步的接口
5.試用,調試打包
6.總結,層次結構-從上到下:最終用戶-應用程序員-系統程序員-驅動程序員-硬件工程師
四.到底應不應該在內核中解決fork×××
fork×××臭名昭著,一堆看似亂碼的字符就能耗盡你的cpu:.(){.|.&};.。如果想在內核解決它,那是很簡單的,那就是控制task_struct的層數,我們知道Linux進程是分層樹形組織的,如果限制層數最多為5層,那么該×××最多也就是炸五次就無法發揮作用了,然而這卻不是好方法,因為這會損害那些正好需要6層或以上的正常程序的利益。其實還有很多解決辦法:1.利用cpu組調度,限制它們可以使用的資源;2.修改oom killer的核心算法,優先砍掉那些過于長,然而卻很瘦的樹枝,這也符合園藝工人的操作方式,因為這種枝丫會帶走過多的養分!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

广灵县| 金沙县| 德惠市| 鹰潭市| 荔波县| 黄梅县| 静宁县| 西乌珠穆沁旗| 延川县| 应城市| 如皋市| 阳泉市| 大邑县| 新野县| 尉犁县| 庆元县| 镇安县| 右玉县| 英山县| 湟中县| 筠连县| 天津市| 桐乡市| 济宁市| 顺义区| 海淀区| 观塘区| 遵义市| 高雄市| 卓尼县| 北辰区| 澄城县| 华阴市| 黄石市| 巴中市| 鹤山市| 肥乡县| 盐津县| 洛宁县| 巴里| 潜山县|