• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            星光燦爛

            C元素

            讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》

             

            第二章 從內(nèi)核出發(fā)

             

            內(nèi)核開發(fā)特點:

            1. 沒有l(wèi)ibc庫。 kernel是一個不依賴任何庫的,包括標準C函數(shù)庫。kernel中使用的一些常見函數(shù),比如memset, strcpy都是在kernel代碼中自己實現(xiàn)的。
            2. 請使用gcc來編譯內(nèi)核,因為內(nèi)核中的代碼并不完全符合ANSI C的標準。
            3. 沒有內(nèi)存保護,非法的內(nèi)存操作可能會使系統(tǒng)掛起。
            4. 不要使用浮點數(shù)
            5. 內(nèi)核棧容量很小( 2 * 頁面大小 )
            6. linux是搶占多任務(wù)操作系統(tǒng),進程,內(nèi)核都可以搶占,而且支持多處理器,所以內(nèi)核代碼需要考慮并發(fā)和同步的問題。
            7. 盡量要兼容所有架構(gòu)(arch),良好的移植性

             

             

             

            第三章 進程管理

             

            內(nèi)存描述符及任務(wù)結(jié)構(gòu)

            1. 每個進程都對應(yīng)有一個進程描述符,即task_struct結(jié)構(gòu),用來記錄這個進程的所有信息:打開的文件,地址空間,進程狀態(tài)……
            2. linux通過slab(個人感覺類似于pool)分配task_struct。 進程的task_struct指針存放在位于內(nèi)核棧底的一個叫做thread_info的結(jié)構(gòu)里面。
            3. 內(nèi)核通過PID來標識進程,默認設(shè)置最大值,即默認系統(tǒng)最大進程數(shù)為32768。內(nèi)核中一般通過current宏來獲的當(dāng)前進程的task_struct,不同的體系架構(gòu)下,實現(xiàn)方法可能會不同。
            4. 進程狀態(tài),可以通過set_task_state來設(shè)置
              1. TASK_RUNNING 進程可執(zhí)行;它正在運行,或者是在任務(wù)隊列中等待被運行。
              2. TASK_INTERRUPTIBLE 進程可中斷;進程被阻塞,但是可以通過信號,或者其他方法喚醒。
              3. TASK_UNINTERRUPTIBLE 進程不可中斷;進程被阻塞,而且不受任何干擾,不會響應(yīng)信號而被喚醒。
              4. TASK_ZOMBIE 進程僵死;進程已經(jīng)運行完畢,但是父進程沒有調(diào)用wait4系統(tǒng)調(diào)用,此時子進程的task_struct保留,等待父進程查詢相關(guān)信息。【Agaric:相似的,在windows上,進程的HANDLE通過(CreateProcess或者OpenProcess得到) 在程序運行完畢后,在CloseHandle 前,也是仍然有效,用于查詢進程相關(guān)信息,比如Exit code 等等】
              5. TASK_STOPPED 進程停止;
            5. 進程上下文: 進程通過系統(tǒng)調(diào)用或者異常陷入內(nèi)核,此時內(nèi)核是"代表進程"在工作,這個工作環(huán)境,叫做進程上下文,內(nèi)核程序可以通過宏來獲的當(dāng)前進程的task_struct
            6. 進程家族樹: 除了init,每個進程都有父進程, 每個進程都可能有子進程及兄弟進程。

            (待續(xù))

            posted on 2008-03-06 00:00 菌子 閱讀(1784) 評論(7)  編輯 收藏 引用 所屬分類: 讀書

            評論

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2008-09-03 10:17 ddd

            陳利君的書感覺就是大雜燴,
            自己沒搞懂,
            東拼西湊各種概念

            寫linux內(nèi)核的書從2.2就開始了  回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2010-12-09 08:23 ji

            [url=http://www.iebook.cn]電子雜志[/url]
            [url=http://www.iebook.cn]iebook第一門戶[/url]
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:00 便箋本印刷

            http://www.iein.cn 明信片印刷
            http://www.iein.cn 手提袋印刷
            http://www.iein.cn 便箋本印刷
            http://www.iein.cn 快印
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:00 便箋本印刷

            http://www.iein.cn 印功夫
            http://power.iebook.cn 企業(yè)電子畫冊
            http://power.iebook.cn iebook超級精靈
            http://power.iebook.cn 超級精靈
            http://power.iebook.cn 電子雜志制作系統(tǒng)
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:02 便箋本印刷

            http://diy.iebook.cn 電子相冊制作軟件
            http://sc.iebook.cn 電子雜志模板制作器
            http://tj.iebook.cn 電子雜志統(tǒng)計系統(tǒng)
            http://tj.iebook.cn 統(tǒng)計精靈
            http://pf.iebook.cn 超級皮膚
            http://pf.iebook.cn iebook皮膚
            http://pf.iebook.cn 電子雜志皮膚
            http://pf.iebook.cn 雜志皮膚
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:02 便箋本印刷

            http://sc.iebook.cn 電子雜志模板制作器
            http://www.iein.cn 印刷
            http://www.iein.cn 在線印刷
            http://www.iein.cn 在線設(shè)計
            http://www.iein.cn 名片印刷
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:03 便箋本印刷

            http://www.iebook.cn 企業(yè)電子雜志
            http://www.iebook.cn 企業(yè)電子商刊
            http://www.iebook.cn 第一門戶
            http://www.iebook.cn iebook第一門戶
            http://mb.iebook.cn 超級模板
            http://sc.iebook.cn 電子雜志模板
            http://sc.iebook.cn 電子雜志模板下載
            http://sc.iebook.cn flash電子雜志模板
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:03 便箋本印刷

            http://www.iebook.cn 電子雜志
            http://www.iebook.cn 電子雜志制作軟件
            http://www.iebook.cn 電子雜志制作
            http://www.iebook.cn 電子雜志軟件
              回復(fù)  更多評論   

            # re: 讀《Linux 內(nèi)核設(shè)計與實現(xiàn)》 2011-06-14 17:04 便箋本印刷

            http://www.iebook.cn 電子畫冊
            http://www.iebook.cn 電子商刊
            http://www.iebook.cn 時尚雜志
            http://www.iebook.cn 雜志
              回復(fù)  更多評論   


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            導(dǎo)航

            <2011年6月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            統(tǒng)計

            常用鏈接

            留言簿(8)

            隨筆分類

            隨筆檔案

            令一片星空

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            日本人妻丰满熟妇久久久久久| 久久se这里只有精品| 亚洲愉拍99热成人精品热久久| 国内精品伊人久久久久777| 中文字幕久久久久人妻| 国产欧美一区二区久久| 久久国产成人精品国产成人亚洲| 久久久久久久久久久免费精品| 2021久久精品免费观看| 久久国产精品久久久| 亚洲欧美久久久久9999| 99久久99这里只有免费费精品| 久久久精品日本一区二区三区| 久久精品中文无码资源站| 久久久久中文字幕| A级毛片无码久久精品免费| 成人亚洲欧美久久久久| 亚洲国产精品成人久久| 亚洲人成无码www久久久| 色综合合久久天天综合绕视看| 久久久久久精品免费看SSS| 久久亚洲2019中文字幕| 国产精品久久久久…| 亚洲国产精品无码久久SM| 国产精品久久久香蕉| 色播久久人人爽人人爽人人片aV| 精品精品国产自在久久高清| 亚洲欧美成人综合久久久| 四虎国产精品成人免费久久| 狠狠精品久久久无码中文字幕| WWW婷婷AV久久久影片| 亚洲国产精品一区二区久久hs| 久久国产影院| 久久夜色精品国产亚洲av| 99久久精品免费国产大片| 欧美综合天天夜夜久久| 国产精品天天影视久久综合网| 久久精品国产亚洲精品2020| 久久天堂AV综合合色蜜桃网| 久久无码人妻一区二区三区午夜| 精品综合久久久久久98|