嵌入式操作系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

出版時(shí)間:2008-5  出版社:電子工業(yè)出版社  作者:藍(lán)楓葉  頁(yè)數(shù):535  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

  本書是《自己動(dòng)手寫嵌入式操作系統(tǒng)》的全面升級(jí)版,作者對(duì)自己親自在PC上開發(fā)的嵌入式操作系統(tǒng)的“Hello China”進(jìn)行全面的升級(jí)和改進(jìn),書中詳細(xì)地?cái)⑹鲎约簞?dòng)手寫嵌入式操作系統(tǒng)所需的各方面知識(shí),如加載和初始化、Shell、線程的實(shí)現(xiàn)、內(nèi)存管理機(jī)制、互斥和同步機(jī)制及中斷和定時(shí)機(jī)制的實(shí)現(xiàn),以及設(shè)備驅(qū)動(dòng)程序管理框架和應(yīng)用編程接口等?! ”緯械拿恳粋€(gè)字都是作者辛勤勞動(dòng)的結(jié)晶,本書所講到的嵌入式操作系統(tǒng)“Hello China”更是作者親自實(shí)踐的成果,因此本書具有極高的實(shí)用性,對(duì)于嵌入式軟件開發(fā)工程師、應(yīng)用軟件開發(fā)工程師均有很高的參考價(jià)值,對(duì)于大中院校的學(xué)生學(xué)習(xí)和理解操作系統(tǒng)及計(jì)算機(jī)原理也會(huì)有許多啟發(fā),對(duì)于系統(tǒng)軟件愛好者更是一本不可多得的好書,因?yàn)樗鼤?huì)使您得到一個(gè)完整而細(xì)致的實(shí)踐過(guò)程。

書籍目錄

第1章 概述1.1 嵌入式系統(tǒng)概述1.2 嵌入式操作系統(tǒng)概述1.2.1 嵌入式操作系統(tǒng)的特點(diǎn)1.2.2 嵌入式操作系統(tǒng)與通用操作系統(tǒng)的區(qū)別1.2.3 嵌入式實(shí)時(shí)操作系統(tǒng)1.3 操作系統(tǒng)的基本概念1.3.1 微內(nèi)核與大內(nèi)核1.3.2 進(jìn)程、線程與任務(wù)1.3.3 可搶占與不可搶占1.3.4 同步機(jī)制1.4 Hello China概述1.4.1 Hello China的功能特點(diǎn)1.4.2 Hello China的開發(fā)環(huán)境1.4.3 面向?qū)ο笏枷氲哪M1.4.4 對(duì)象機(jī)制1.4.5 Hello China V1.0版本的源文件構(gòu)成1.4.6 Hello China V1.5版本的源文件構(gòu)成1.4.7 Hello China的使用1.5 實(shí)例:一個(gè)簡(jiǎn)單的IP路由器的實(shí)現(xiàn)1.5.1 概述1.5.2 路由器的硬件結(jié)構(gòu)1.5.3 路由器的軟件功能1.5.4 各任務(wù)的實(shí)現(xiàn)第2章 Hello China的加載和初始化2.1 常見嵌入式系統(tǒng)的啟動(dòng)2.1.1 典型嵌入式系統(tǒng)內(nèi)存映射布局2.1.2 嵌入式系統(tǒng)的啟動(dòng)概述2.1.3 常見嵌入式操作系統(tǒng)的加載方式2.1.4 嵌入式系統(tǒng)軟件的寫入2.2 Hello China在PC上的啟動(dòng)2.2.1 PC啟動(dòng)過(guò)程概述2.2.2 Hello China的引導(dǎo)過(guò)程2.2.3 實(shí)地址模式下的初始化2.2.4 保護(hù)模式下的初始化2.2.5 操作系統(tǒng)核心功能的初始化第3章 Hello China的Shell3.1 Shell的啟動(dòng)和初始化3.2 Shell的消息處理過(guò)程3.3 內(nèi)部命令的處理過(guò)程3.4 外部命令的處理過(guò)程第4章 Hello China的線程4.1 線程概述4.1.1 進(jìn)程、線程和任務(wù)4.2 Hello China V1.0版本的線程實(shí)現(xiàn)4.2.1 核心線程管理對(duì)象4.2.2 線程的狀態(tài)及其切換4.2.3 核心線程對(duì)象4.2.4 線程的上下文4.2.5 線程的優(yōu)先級(jí)與調(diào)度4.2.6 線程的創(chuàng)建4.2.7 線程的結(jié)束4.2.8 線程的消息隊(duì)列4.2.9 線程的切換——中斷上下文4.2.10 線程的切換——系統(tǒng)調(diào)用上下文4.2.11 上下文保存和切換的底層函數(shù)4.2.12 線程的睡眠與喚醒4.3 V1.5版本中核心線程的實(shí)現(xiàn)4.3.1 概述4.3.2 核心線程調(diào)度時(shí)機(jī)4.4 V1.5 核心線程管理器(Kernel ThreadManager)的實(shí)現(xiàn)4.4.1 V1.5核心線程隊(duì)列的實(shí)現(xiàn)4.5 V1.5核心線程對(duì)象(Kernel ThreadObject)的實(shí)現(xiàn)4.5.1 V1.5版本中硬件上下文的保存4.5.2 線程的調(diào)度——中斷上下文4.5.3 線程的調(diào)度——程序上下文4.5.4 核心線程的創(chuàng)建和初始化4.5.5 中斷處理程序結(jié)束后的線程調(diào)度第5章 Hello China的內(nèi)存管理機(jī)制5.1 內(nèi)存管理機(jī)制概述5.2 IA32 CPU內(nèi)存管理機(jī)制5.2.1 IA32 CPU內(nèi)存管理機(jī)制概述5.2.2 幾個(gè)重要的概念5.2.3 分段機(jī)制的應(yīng)用5.2.4 分頁(yè)機(jī)制的應(yīng)用5.3 Power PC CPU的內(nèi)存管理機(jī)制5.4 Hello China內(nèi)存管理模型5.4.1 Hello China的內(nèi)存管理模型5.4.2 Hello China的內(nèi)存布局5.4.3 核心內(nèi)存池的管理5.4.4 頁(yè)框管理對(duì)象(PageFrame Manager)5.4.5 頁(yè)面索引對(duì)象(Pagelndex Manager)5.4.6 虛擬內(nèi)存管理對(duì)象(Virtual MemoryManager)第6章 線程本地堆的實(shí)現(xiàn)6.1 Heap概述6.2 堆的功能需求定義6.3 堆的實(shí)現(xiàn)概要6.4 堆的詳細(xì)實(shí)現(xiàn)6.4.1 堆的創(chuàng)建6.4.2 堆的銷毀6.4.3 堆內(nèi)存申請(qǐng)6.4.4 堆內(nèi)存釋放6.4.5 malloc函數(shù)和free函數(shù)的實(shí)現(xiàn)第7章 互斥和同步機(jī)制的實(shí)現(xiàn)7.1 互斥和同步概述7.2 關(guān)鍵區(qū)段概述7.3 關(guān)鍵區(qū)段產(chǎn)生的原因7.3.1 多個(gè)線程之間的競(jìng)爭(zhēng)7.3.2 中斷服務(wù)程序與線程之間的競(jìng)爭(zhēng)7.3.3 多個(gè)CPU之間的競(jìng)爭(zhēng)7.4 單CPU下關(guān)鍵區(qū)段的實(shí)現(xiàn)7.5 多CPU下關(guān)鍵區(qū)段的實(shí)現(xiàn)7.5.1 多CPU環(huán)境下的實(shí)現(xiàn)方式7.5.2 Hello China的未來(lái)實(shí)現(xiàn)7.6 Power PC下關(guān)鍵區(qū)段的實(shí)現(xiàn)7.6.1 Power PC提供的互斥訪問(wèn)機(jī)制7.6.2 多CPU環(huán)境下的互斥機(jī)制7.7 關(guān)鍵區(qū)段使用注意事項(xiàng)7.8 Semaphore概述7.9 Semaphore對(duì)象的定義7.10 Semaphore對(duì)象的實(shí)現(xiàn)7.10.1 Initialize和Uninitialize實(shí)現(xiàn)7.10.2 WaitForThisObject的實(shí)現(xiàn)7.10.3 WaitForThisObjectEx的實(shí)現(xiàn)7.10.4 ReleaseSemaphore的實(shí)現(xiàn)第8章 中斷和定時(shí)處理機(jī)制的實(shí)現(xiàn)8.1 中斷和異常概述8.2 硬件相關(guān)部分處理8.2.1 IA32中斷處理過(guò)程8.2.2 IDT初始化8.3 硬件無(wú)關(guān)部分處理8.3.1 系統(tǒng)對(duì)象和中斷對(duì)象8.3.2 中斷調(diào)度過(guò)程8.3.3 默認(rèn)中斷處理函數(shù)8.4 對(duì)外服務(wù)接口8.5 幾個(gè)注意事項(xiàng)8.6 Power PC的異常處理機(jī)制8.6.1 Power PC異常處理機(jī)制概述8.6.2 Power PC異常的分類8.6.3 異常的處理和返回8.7 定時(shí)器概述8.7.1 SetTimer函數(shù)的調(diào)用8.7.2 CancelTimer函數(shù)的調(diào)用8.7.3 ResetTimer函數(shù)的調(diào)用8.8 設(shè)置定時(shí)器操作8.9 定時(shí)器超時(shí)處理8.10 定時(shí)器取消處理8.11 定時(shí)器復(fù)位8.12 定時(shí)器注意事項(xiàng)第9章 系統(tǒng)總線管理9.1 系統(tǒng)總線概述9.1.1 系統(tǒng)總線9.1.2 總線管理模型9.1.3 設(shè)備標(biāo)識(shí)符9.2 系統(tǒng)資源管理9.2.1 資源描述對(duì)象9.2.2 IO端口資源管理9.3 驅(qū)動(dòng)程序接口9.3.1 GetResource9.3.2 GetDevice9.3.3 CheckPortRegion9.3.4 ReservePortRegion9.3.5 ReleasePortRegion9.3.6 AppendDevice9.3.7 DeleteDevice9.4 PCI總線驅(qū)動(dòng)程序概述9.4.1 PCI總線概述9.4.2 PCI設(shè)備的配置空間9.4.3 配置空間關(guān)鍵字段的說(shuō)明9.4.4 PCI配置空間的讀取與設(shè)置9.5 PCI總線驅(qū)動(dòng)程序的實(shí)現(xiàn)9.5.1 探測(cè)PCI總線是否存在9.5.2 對(duì)普通PCI設(shè)備進(jìn)行枚舉9.5.3 配置PCI橋接設(shè)備第10章 驅(qū)動(dòng)程序管理框架10.1 設(shè)備驅(qū)動(dòng)程序管理框架10.1.1 概述10.1.2 設(shè)備管理器和IO管理器10.1.3 Hello China的設(shè)備管理框架lO.1.4 I/O管理器(IOManager)10.2 文件系統(tǒng)的實(shí)現(xiàn)10.2.1 文件系統(tǒng)與文件的命名10.2.2 文件系統(tǒng)驅(qū)動(dòng)程序10.2.3 打開一個(gè)文件的操作流程10.3 設(shè)備驅(qū)動(dòng)程序框架10.3.1 設(shè)備請(qǐng)求控制塊(DRCB)10.3.2 設(shè)備驅(qū)動(dòng)程序的文件組織結(jié)構(gòu)10.3.3 設(shè)備驅(qū)動(dòng)程序的功能實(shí)現(xiàn)10.3.4 設(shè)備驅(qū)動(dòng)程序?qū)ο?0.3.5 DriverEntry的實(shí)現(xiàn)10.3.6 UnloadEntry的實(shí)現(xiàn)10.4 設(shè)備對(duì)象10.4.1 設(shè)備對(duì)象的定義10.4.2 設(shè)備對(duì)象的命名10.4.3 設(shè)備對(duì)象的類型10.4.4 設(shè)備對(duì)象的設(shè)備擴(kuò)展10.4.5 設(shè)備的打開操作10.4.6 設(shè)備命名策略10.5 設(shè)備的中斷管理第11章 核心線程CPU占用率統(tǒng)計(jì)功能11.1 CPU占用率概述11.2 核心線程CPU占用率統(tǒng)計(jì)的實(shí)現(xiàn)11.2.1 統(tǒng)計(jì)周期和統(tǒng)計(jì)算法11.2.2 核心線程統(tǒng)計(jì)對(duì)象11.2.3 CPU統(tǒng)計(jì)對(duì)象11.2.4 CPU占用率統(tǒng)計(jì)線程11.3 進(jìn)程和多CPU情況下的考慮11.3.1 進(jìn)程的用戶態(tài)和核心態(tài)執(zhí)行時(shí)間統(tǒng)計(jì)11.3.2 多CPU環(huán)境下的考慮第12章 系統(tǒng)核心HOOK機(jī)制的實(shí)現(xiàn)12.1 Hook概述12.2 線程Hook的實(shí)現(xiàn)12.2.1 線程Hook的實(shí)現(xiàn)概述12.2.2 線程調(diào)度前后的回調(diào)機(jī)制12.2.3 線程創(chuàng)建和結(jié)束的回調(diào)機(jī)制12.2.4 CallThreadHook例程的實(shí)現(xiàn)12.3 線程Hook的應(yīng)用第13章 串口交互程序及其實(shí)現(xiàn)13.1 串行通信接口概述13.2 串行通信編程方式13.2.1 串口初始化13.2.2 數(shù)據(jù)發(fā)送13.2.3 數(shù)據(jù)接收13.3 串口交互程序的實(shí)現(xiàn)13.3.1 串口交互程序的使用13.3.2 輪詢模式的串口交互程序?qū)崿F(xiàn)13.3.3 中斷模式的串口交互程序?qū)崿F(xiàn)13.4 串行通信編程總結(jié)13.4.1 輪詢方式和中斷方式編程的對(duì)比13.4.2 串口交互程序的其他實(shí)現(xiàn)方式第14章 應(yīng)用編程接口與示例14.1 核心線程操作接口14.1.1 CreateKernelThread14.1.2 DestroyKernelThread14.1.3 SendMessage14.1.4 GetMessage14.1.5 SetKemelThreadPriority14.1.6 GetKemelThreadPriority14.1.7 GetKemelThreadID14.2 內(nèi)存操作接口14.2.1 KMemAlloc14.2.2 KMemFree14.2.3 VirtualAlloc14.2.4 VirtualFree14.2.5 malloc14.2.6 free14.2.7 CreateHeap14.2.8 DestroyHeap14.2.9 HeapAlloc14.2.10 HeapFree14.3 定時(shí)器操作接口14.3.1 SetTimet14.3.2 CancelTimer14.4 核心線程同步操作接口14.4.1 Sleep14.4.2 CreateMutex14.4.3 ReleaseMutex14.4.4 DestroyMutex14.4.5 CreateEvent14.4.6 SetEvent14.4.7 ResetEvent14.4.8 DestroyEvent14.4.9 WaitForThisObject14.4.10 WaitForThisObjectEx14.5 系統(tǒng)中斷操作接口14.5.1 ConnectInterrupt14.5.2 DisconnectInterrupt14.6 輸入/輸出(IO)接口14.6.1 CreateFile14.6.2 ReadFile14.6.3 WriteFile14.6.4 IoControl14.6.5 SetFilePointer14.6.6 FlushFile14.6.7 CloseFile14.7 設(shè)備驅(qū)動(dòng)程序接口14.7.1 CreateDevice14.7.2 DestroyDevice14.8 相關(guān)輔助功能接口14.8.1 StrLen14.8.2 StrCpy14.8.3 MemZero14.8.4 MemCpy14.9 PC服務(wù)接口14.9.1 PrintLine14.9.2 PrintChar14.9.3 ChangeLine14.9.4 GotoHome第15章 Hello China的應(yīng)用開發(fā)方法15.1 Hello China的開發(fā)方法概述15.2 在Hello China基礎(chǔ)上開發(fā)一個(gè)簡(jiǎn)單應(yīng)用程序附錄A 如何搭建一個(gè)基于Windows的操作系統(tǒng)開發(fā)平臺(tái)附錄B 一種代碼執(zhí)行時(shí)間測(cè)量方法的實(shí)現(xiàn)附錄C 64bit整型數(shù)據(jù)類型的實(shí)現(xiàn)附錄D IoCTRL控制程序使用介紹及實(shí)例附錄E 如何快速掌握匯編語(yǔ)言附錄F 源代碼使用說(shuō)明附錄G 優(yōu)先隊(duì)列(Priority Queue)和環(huán)形緩沖區(qū)(RING BUFFER)的實(shí)現(xiàn)

編輯推薦

  全面解讀,國(guó)內(nèi)原創(chuàng)嵌入式操作系統(tǒng),開發(fā)全過(guò)程?! ∏度胧讲僮飨到y(tǒng):設(shè)計(jì)與實(shí)現(xiàn)  本書是《自己動(dòng)手寫嵌入式操作系統(tǒng)》的全面升級(jí)版,作者對(duì)自己親自在PC上開發(fā)嵌入式操作系統(tǒng)的“Hello China”進(jìn)行全面的升級(jí)和改進(jìn),本書具有極高的實(shí)用性,對(duì)于嵌入式軟件開發(fā)工程師、應(yīng)用軟件開發(fā)工程師均有很高的參考價(jià)值,對(duì)于大中院校的學(xué)生學(xué)習(xí)和理解操作系統(tǒng)及計(jì)算機(jī)原理也會(huì)有許多啟發(fā),對(duì)于系統(tǒng)軟件愛好者更是一本不可多得的好書,因?yàn)樗鼤?huì)使您得到一個(gè)完整而細(xì)致的實(shí)踐過(guò)程?! ∫粋€(gè)簡(jiǎn)單的想法  操作系統(tǒng)真的如此難開發(fā)嗎?  我國(guó)的通信產(chǎn)品的核心部件和核心技術(shù)真的只能依靠國(guó)外廠家提供嗎?  一個(gè)曲折的過(guò)程  在緊張的工作之余進(jìn)行開發(fā),曾幾度想放棄,一年多的開發(fā)過(guò)程,堅(jiān)持,堅(jiān)持,再堅(jiān)持,終于在2006年年初,才把當(dāng)初規(guī)劃的所有功能開發(fā)完畢?! ¤T就本書  即以作者親自在PC上開發(fā)嵌入式操作系統(tǒng)“Hello China”的全過(guò)程為主線,詳細(xì)地?cái)⑹鲎约簞?dòng)手寫嵌入式操作系統(tǒng)所需的各方面知識(shí)。

圖書封面

圖書標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    嵌入式操作系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬(wàn)本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7