• <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 內核設計與實現》

             

            第二章 從內核出發

             

            內核開發特點:

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

             

             

             

            第三章 進程管理

             

            內存描述符及任務結構

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

            (待續)

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

            評論

            # re: 讀《Linux 內核設計與實現》 2008-09-03 10:17 ddd

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

            寫linux內核的書從2.2就開始了  回復  更多評論   

            # re: 讀《Linux 內核設計與實現》 2010-12-09 08:23 ji

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

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:00 便箋本印刷

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

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:00 便箋本印刷

            http://www.iein.cn 印功夫
            http://power.iebook.cn 企業電子畫冊
            http://power.iebook.cn iebook超級精靈
            http://power.iebook.cn 超級精靈
            http://power.iebook.cn 電子雜志制作系統
              回復  更多評論   

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:02 便箋本印刷

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

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:02 便箋本印刷

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

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:03 便箋本印刷

            http://www.iebook.cn 企業電子雜志
            http://www.iebook.cn 企業電子商刊
            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電子雜志模板
              回復  更多評論   

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:03 便箋本印刷

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

            # re: 讀《Linux 內核設計與實現》 2011-06-14 17:04 便箋本印刷

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

            導航

            <2008年3月>
            2425262728291
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            統計

            常用鏈接

            留言簿(8)

            隨筆分類

            隨筆檔案

            令一片星空

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            伊人久久国产免费观看视频| 99久久精品日本一区二区免费| 夜夜亚洲天天久久| 国产成人无码精品久久久久免费| 国产亚洲欧美成人久久片| 91麻豆精品国产91久久久久久| 久久亚洲AV永久无码精品| 久久影院综合精品| 久久伊人影视| 国产91色综合久久免费| 亚洲欧美成人久久综合中文网 | 国内精品久久久久久久久| 亚洲国产精品成人AV无码久久综合影院 | 99热都是精品久久久久久| 亚洲午夜精品久久久久久浪潮| 欧美牲交A欧牲交aⅴ久久| 久久亚洲国产成人影院网站| 天堂久久天堂AV色综合| 久久精品国产一区二区电影| 久久成人国产精品| 久久精品国产欧美日韩99热| 青青青伊人色综合久久| 久久AV高清无码| 亚洲中文字幕无码久久2017 | 精品久久久久久国产| 久久国产精品一区| 久久青草国产手机看片福利盒子| 狠狠色噜噜色狠狠狠综合久久| 久久国产免费| 精品视频久久久久| 精品国产热久久久福利| 国产精品久久久久影视不卡| 久久久av波多野一区二区| 久久精品国产乱子伦| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 日本人妻丰满熟妇久久久久久| 久久天天躁狠狠躁夜夜2020一| 亚洲国产精品一区二区三区久久 | 久久福利青草精品资源站免费 | 久久亚洲精品视频| 久久精品国产免费一区|