注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡操作系統(tǒng)其他操作系統(tǒng)嵌入式實時操作系統(tǒng)μC/OS-Ⅱ

嵌入式實時操作系統(tǒng)μC/OS-Ⅱ

嵌入式實時操作系統(tǒng)μC/OS-Ⅱ

定 價:¥79.00

作 者: (美)Jean J.Labrosse著;邵貝貝等譯
出版社: 北京航空航天大學出版社
叢編項:
標 簽: 嵌入式計算機

ISBN: 9787810772907 出版時間: 2003-05-01 包裝: 簡裝本
開本: 26cm 頁數(shù): 616 字數(shù):  

內容簡介

  幾年前,邵貝貝教授將MicroC/OS-IITheReal-TimeKernel一書譯成了中文,并在中國出版,說明該書的價值得到了更多人的認可。2002年上半年,筆者出版了這本書的第2版本,對書的內容和書后所附的源代碼都做了大量的改動。筆者相信,翻譯第2版本的工作量決不會少于第1版本。感謝邵教授百忙中抽時間完成這一繁瑣的工作。過去幾年中,一直有很多中國用戶與筆者保持著通信聯(lián)系。中國用戶對嵌入式系統(tǒng)、特別是對μC/OS-II表現(xiàn)出極大的興趣。多數(shù)通信交往來自學術界,隨著基地在中國的電子產品制造業(yè)的發(fā)展,他們對μC/OS-II的興趣也越來越濃厚。對于大專院校的學生,μC/OS-II是實時操作系統(tǒng)(RTOS)的極好教材。試著用一用RTOS,獲得一些RTOS的使用經(jīng)驗,不需要花什么錢,μC/OS-II是在校學生完成研究生論文和本科生畢業(yè)設計的絕好工具。μC/OS-II可以使讀者專注于自己的研究課題,而不必為程序結構花很多時間。有大量移植范例可以從Micrium的??(www.micrium.com)上免費下載。μC/OS-II的性能可以與許多高端商業(yè)軟件產品媲美,某些性能比它們還要好。μC/OS-II已經(jīng)在世界范圍內得到廣泛使用,包括諸多領域,如手機、路由器、集線器、不間斷電源、飛行器、醫(yī)療設備及工業(yè)控制等。實際上,μC/OS-II已經(jīng)通過了非常嚴格的測試,并且得到了美國航空管理局(FederalAviationAdministration)的認證,可以用在飛行器上。這說明μC/OS-II是穩(wěn)定可靠的,可用于與人性命攸關的安全緊要(safetycritical)系統(tǒng);當然,也可用于非安全緊要系統(tǒng)。μC/OS-II一直在不斷地向前發(fā)展。書的出版有個過程,書出版時,書中描述的可能已不是當前的最新版本;故我請邵教授在翻譯這本書時,仍用μC/OS-II的V2.52版本,以同原書版本一致。筆者建議,如果讀者只想學習μC/OS-II,仍應使用V2.52版本。如果想將μC/OS-II嵌入到商業(yè)產品中,請與我們Micrium公司(或我們的中國代理)聯(lián)系,以獲得使用許可證并得到最新版本。關于使用許可證,可直接向以下地址申請:licensing@micrium.com,請附上用戶姓名、公司名以及聯(lián)系電話。關于μC/OS-II今后升級方面的設想是多方面的,請關注Micrium網(wǎng)站。筆者打算今后將μC/OS-II可以管理的任務數(shù)目增加到250個,進一步改進調度算法,使之效率更高。將來的μC/OS-II可以在任務或中斷服務子程序中直接給別的任務發(fā)消息,而不必通過諸如消息隊列等。也還會給μC/OS-II增加一些新的功能函數(shù)。1999年,筆者注冊了一家名為Micrium的公司,目的是開發(fā)并銷售類似μC/OS-II的軟件。目前可提供的其他軟件產品還有:●μC/GUI(嵌入式用戶圖形界面);●μC/FS(嵌入式文件系統(tǒng))。Micrium計劃中的產品也都是專門面向嵌入式系統(tǒng)應用的。所有產品都提供源代碼,其中大多數(shù)軟件的質量也同μC/OS-II一樣好。多年來,我一直參加美國的嵌入式系統(tǒng)年會(EmbeddedSystemConference),并在會上做兩三次講演。我也打算參加一次中國的嵌入式系統(tǒng)年會,或許我們能在會上見面。如果發(fā)e-mail給我,我會盡力給予回復;但是請用英文書寫,以諒解我不懂中文。不必顧慮自己的英文不夠好,總比我的中文要好得多吧。如同筆者從寫書得到樂趣,愿讀者從閱讀此書中得到更多的樂趣。μC/OSII是著名的、源碼公開的實時內核,是專為嵌入式應用設計的,可用于各類8位、16位和32位單片機或DSP。從μC/OS算起,該內核已有10余年應用史,在諸多領域得到了廣泛應用。本書是MicroC/OSIITheRealTimeKernel一書的第2版本,在第1版本(V2.0)基礎上做了重大改進與升級。通過對μC/OSII源代碼的分析與描述,講述了多任務實時的基本概念、競爭與調度算法、任務間同步與通信、存儲與定時的管理以及如何處理優(yōu)先級反轉問題;介紹如何將μC/OSII移植到不同CPU上,如何調試移植代碼。在所附光盤中,給出已通過FAA安全認證的μC/OSIIV2.52的全部源碼以及可在PC機上運行的移植范例。本書可用做高等院校嵌入式實時系統(tǒng)課程教材或工程師培訓教材,也可供嵌入式應用開發(fā)人員研究與使用。

作者簡介

暫缺《嵌入式實時操作系統(tǒng)μC/OS-Ⅱ》作者簡介

圖書目錄

前言1
     概述7
    
     第1章 初識μC/OSII 1
     1.00 安裝 μC/OSII 1
     1.01 范例11
     1.02 范例210
     1.03 范例320
     1.04 范例430
     第2章 實時系統(tǒng)概念34
     2.00 前/后臺系統(tǒng)34
     2.01 代碼的臨界段35
     2.02 資源36
     2.03 共享資源36
     2.04 多任務36
     2.05 任務36
     2.06 任務切換38
     2.07 內核38
     2.08 調度39
     2.09 不可剝奪型內核39
     2.10 可剝奪型內核40
     2.11 可重入函數(shù)42
     2.12 時間片輪番調度法44
     2.13 任務優(yōu)先級44
     2.14 靜態(tài)優(yōu)先級44
     2.15 動態(tài)優(yōu)先級44
     2.16 優(yōu)先級反轉44
     2.17 任務優(yōu)先級分配47
     2.18 互斥條件49
     2.18.01 關中斷和開中斷49
     2.18.02 測試并置位操作50
     2.18.03 禁止,然后允許任務切換50
     2.18.04 信號量51
     2.19 死鎖55
     2.20 同步56
     2.21 事件標志58
     2.22 任務間通信59
     2.23 消息郵箱59
     2.24 消息隊列60
     2.25 中斷61
     2.26 中斷延遲62
     2.27 中斷響應62
     2.28 中斷恢復時間63
     2.29 中斷延遲. 響應及恢復64
     2.30 中斷處理時間66
     2.31 非屏蔽中斷66
     2.32 時鐘節(jié)拍67
     2.33 對存儲器的需求69
     2.34 使用實時內核的優(yōu). 缺點70
     2.35 實時系統(tǒng)小結71
     第3章 內核結構72
     3.00 臨界段, OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()73
     3.01 任務76
     3.02 任務狀態(tài)78
     3.03 任務控制塊(OS_TCB)80
     3.04 就緒表88
     3.05 任務調度91
     3.06 任務級的任務切換, OS_TASK_SW()92
     3.07 給調度器上鎖和開鎖96
     3.08 空閑任務97
     3.09 統(tǒng)計任務98
     3.10 μC/OSII中的中斷103
     3.11 時鐘節(jié)拍107
     3.12 μC/OSII初始化111
     3.13 μC/OSII的啟動113
     3.14 獲取當前μC/OSII的版本號115
     第4章 任務管理116
     4.00 建立任務, OSTaskCreate()117
     4.01 建立任務, OSTaskCreateExt()119
     4.02 任務堆棧122
     4.03 堆棧檢驗, OSTaskStkChk()125
     4.04 刪除任務, OSTaskDel()128
     4.05 請求刪除任務, OSTaskDelReq()132
     4.06 改變任務的優(yōu)先級, OSTaskChangePrio()135
     4.07 掛起任務, OSTaskSuspend()138
     4.08 恢復任務, OSTaskResume()140
     4.09 獲得任務的信息, OSTaskQuery()142
     第5章 時間管理144
     5.00 任務延時函數(shù), OSTimeDly()144
     5.01 按時. 分. 秒延時函數(shù), OSTimeDlyHMSM()146
     5.02 恢復延時的任務, OSTimeDlyResume()149
     5.03 系統(tǒng)時間, OSTimeGet()和OSTimeSet()150
     第6章 事件控制塊152
     6.00 將任務置于等待事件的任務列表156
     6.01 從等待事件的任務列表中使任務脫離等待狀態(tài)156
     6.02 在等待事件的任務列表中查找優(yōu)先級最高的任務157
     6.03 空余事件控制塊鏈表159
     6.04 初始化一個事件控制塊, OS_EventWaitListInit()159
     6.05 使一個任務進入就緒態(tài), OS_EventTaskRdy()161
     6.06 使一個任務進入等待某事件發(fā)生狀態(tài), OS_EventTaskWait()163
     6.07 由于等待超時而將任務置為就緒態(tài), OS_EventTO()163
     第7章 信號量管理165
     7.00 建立一個信號量, OSSemCreate()166
     7.01 刪除一個信號量, OSSemDel()168
     7.02 等待一個信號量, OSSemPend()171
     7.03 發(fā)出一個信號量, OSSemPost()173
     7.04 無等待地請求一個信號量, OSSemAccept()175
     7.05 查詢一個信號量的當前狀態(tài), OSSemQuery()176
     第8章 互斥型信號量管理179
     8.00 建立一個互斥型信號量, OSMutexCreate()182
     8.01 刪除一個互斥型信號量, OSMutexDel()185
     8.02 等待一個互斥型信號量(掛起), OSMutexPend()187
     8.03 釋放一個互斥型信號量, OSMutexPost()191
     8.04 無等待地獲取互斥型信號量(任務不掛起), OSMutexAccept()193
     8.05 獲取互斥型信號量的當前狀態(tài), OSMutexQuery() 195
     第9章 事件標志組管理198
     9.00 深入事件標志組199
     9.01 建立一個事件標志組, OSFlagCreate()202
     9.02 刪除一個事件標志組, OSFlagDel()204
     9.03 等待事件標志組的事件標志位, OSFlagPend()206
     9.04 置位或清0事件標志組中的事件標志, OSFlagPost()214
     9.05 無等待地獲得事件標志組中的事件標志, OSFlagAccept()223
     9.06 查詢事件標志組的狀態(tài), OSFlagQuery()226
     第10章 消息郵箱管理228
     10.00 建立一個郵箱, OSMboxCreate()229
     10.01 刪除一個郵箱, OSMboxDel()231
     10.02 等待郵箱中的消息, OSMboxPend()234
     10.03 向郵箱發(fā)送一則消息, OSMboxPost()236
     10.04 向郵箱發(fā)送一則消息, OSMboxPostOpt()238
     10.05 無等待地從郵箱中得到一則消息, OSMboxAccept()240
     10.06 查詢一個郵箱的狀態(tài), OSMboxQuery()241
     10.07 用郵箱作為二值信號量243
     10.08 用郵箱實現(xiàn)延時, 而不使用OSTimeDly()243
     第11章 消息隊列管理245
     11.00 建立一個消息隊列, OSQCreate()249
     11.01 刪除一個消息隊列, OSQDel()251
     11.02 等待消息隊列中的消息, OSQPend()253
     11.03 向消息隊列發(fā)送一則消息(FIFO), OSQPost()256
     11.04 向消息隊列發(fā)送一則消息(LIFO), OSQPostFront()258
     11.05 向消息隊列發(fā)送一則消息(FIFO或LIFO), OSQPostOpt()259
     11.06 無等待地從消息隊列中獲得消息, OSQAccept()262
     11.07 清空消息隊列, OSQFlush()263
     11.08 獲取消息隊列的狀態(tài), OSQQuery()264
     11.09 使用消息隊列讀取模擬量的值267
     11.10 消息隊列用做計數(shù)型信號量268
     第12章 內存管理270
     12.00 內存控制塊271
     12.01 建立一個內存分區(qū), OSMemCreate()272
     12.02 分配一個內存塊, OSMemGet()275
     12.03 釋放一個內存塊, OSMemPut()277
     12.04 查詢一個內存分區(qū)的狀態(tài), OSMemQuery()278
     12.05 使用內存分區(qū)279
     12.06 等待內存分區(qū)中的一個內存塊281
     第13章 移植μC/OSII283
     13.00 開發(fā)工具286
     13.01 目錄和文件286
     13.02 INCLUDES.H287
     13.03 OS_CPU.H287
     13.03.01 與編譯器相關的數(shù)據(jù)類型289
     13.03.02 OS_ENTER_CRITICAL()和 OS_EXIT_CRITICAL()289
     13.03.03 OS_STK_GROWTH293
     13.03.04 OS_TASK_SW()293
     13.04 OS_CPU_C.C294
     13.04.01 OSTaskStkInit()294
     13.04.02 OSTaskCreateHook()298
     13.04.03 OSTaskDelHook()298
     13.04.04 OSTaskSwHook()299
     13.04.05 OSTaskStatHook()299
     13.04.06 OSTimeTickHook()299
     13.04.07 OSTCBInitHook()299
     13.04.08 OSTaskIdleHook()300
     13.04.09 OSInitHookBegin()301
     13.04.10 OSInitHookEnd()301
     13.05 OS_CPU_A.ASM301
     13.05.01 OSStartHighRdy()301
     13.05.02 OSCtxSw()302
     13.05.03 OSTickISR()304
     13.05.04 OSIntCtxSw()306
     13.06 測試移植代碼307
     13.06.01 確保C編譯器. 匯編編譯器及鏈接器正常工作307
     13.06.02 驗證OSTaskStkInit()和 OSStartHighRdy()函數(shù)311
     13.06.03 驗證OSCtxSw()函數(shù)313
     13.06.04 驗證OSIntCtxSw( )和 OSTickISR()函數(shù)316
     第14章 μC/OSII在80x86上的移植333
     14.00 開發(fā)工具335
     14.01 目錄和文件336
     14.02 INCLUDES.H文件336
     14.03 OS_CPU.H文件337
     14.03.01 OS_CPU.H, 數(shù)據(jù)類型338
     14.03.02 OS_CPU.H, OS_ENTER_CRITICAL()及OS_EXIT_CRITICAL()338
     14.03.03 OS_CPU.H, 堆棧方向340
     14.03.04 OS_CPU.H和OS_TASK_SW()340
     14.03.05 OS_CPU.H, 時鐘節(jié)拍頻率340
     14.03.06 OS_CPU.H,浮點仿真341
     14.04 OS_CPU_C.C文件341
     14.04.01 任務堆棧初始化函數(shù)OSTaskStkInit()342
     14.04.02 浮點仿真任務棧初始化函數(shù)OSTaskStkInit_FPE_x86()344
     14.04.03 任務建立接口函數(shù)OSTaskCreateHook()350
     14.04.04 任務刪除接口函數(shù)OSTaskDelHook()351
     14.04.05 任務切換接口函數(shù)OSTaskSwHook()351
     14.04.06 空閑任務接口函數(shù)OSTaskIdleHook()351
     14.04.07 統(tǒng)計任務接口函數(shù)OSTaskStatHook()351
     14.04.08 時鐘節(jié)拍接口函數(shù) OSTimeTickHook()352
     14.04.09 系統(tǒng)初始化開始接口函數(shù)OSInitHookBegin()352
     14.04.10 系統(tǒng)初始化結束接口函數(shù)OSInitHookEnd()352
     14.04.11 控制塊初始化接口函數(shù) OSTCBInitHook()353
     14.05 OS_CPU_A.ASM文件353
     14.05.01 OSStartHighRdy() 353
     14.05.02 OSCtxSw()355
     14.05.03 OSIntCtxSw()357
     14.05.04 OSTickISR()360
     14.06 內存占用366
     第15章 μC/OSII在帶有硬件浮點運算單元的80x86上的移植372
     15.00 開發(fā)工具372
     15.01 目錄和文件374
     15.02 INCLUDES.H文件375
     15.03 OS_CPU.H文件375
     15.03.01 OS_CPU.H, 數(shù)據(jù)類型376
     15.03.02 OS_CPU.H, OS_ENTER_CRITICAL()及OS_EXIT_CRITICAL()376
     15.03.03 OS_CPU.H, 堆棧方向376
     15.03.04 OS_CPU.H, OS_TASK_SW()377
     15.03.05 OS_CPU.H, 時鐘節(jié)拍頻率377
     15.03.06 OS_CPU.H, 浮點函數(shù)377
     15.04 OS_CPU_C.C文件378
     15.04.01 任務堆棧初始化函數(shù)OSTaskStkInit()378
     15.04.02 浮點處理單元初始化函數(shù)OSFPInit()380
     15.04.03 任務建立接口函數(shù)OSTaskCreateHook()381
     15.04.04 任務刪除接口函數(shù)OSTaskDelHook()382
     15.04.05 任務切換接口函數(shù)OSTaskSwHook()384
     15.04.06 空閑任務接口函數(shù)OSTaskIdleHook()385
     15.04.07 統(tǒng)計任務接口函數(shù)OSTaskStatHook()385
     15.04.08 時鐘節(jié)拍接口函數(shù) OSTimeTickHook()385
     15.04.09 系統(tǒng)初始化開始接口函數(shù)OSInitHookBegin()386
     15.04.10 系統(tǒng)初始化結束接口函數(shù) OSInitHookEnd() 386
     15.04.11 控制塊初始化接口函數(shù)OSTCBInitHook() 386
     15.05 OS_CPU_A.ASM文件386
     15.05.01 OSStartHighRdy()387
     15.05.02 OSCtxSw()387
     15.05.03 OSIntCtxSw()390
     15.05.04 OSTickISR()393
     15.05.05 OSFPSave()394
     15.05.06 OSFPRestore()395
     15.06 內存占用396
     第16章 μC/OSII參考手冊398
     第17章 μC/OSII配置手冊509
     17.00 雜項509
     17.01 事件標志512
     17.02 消息郵箱512
     17.03 內存管理513
     17.04 互斥型信號量513
     17.05 消息隊列514
     17.06 信號量515
     17.07 任務管理515
     17.08 時鐘管理516
     17.09 函數(shù)概述517
     第18章 PC中的功能函數(shù)520
     18.00 字符顯示520
     18.01 保存和恢復DOS的環(huán)境設置523
     18.02 程序運行時間的測量525
     18.03 其他函數(shù)525
     18.04 接口函數(shù)526
     18.05 參考文獻544
    
     附錄A C語言編程規(guī)約545
     A.01 文件頭545
     A.02 文件包含546
     A.03 標志符命名法547
     A.04 縮寫. 略語及助記符548
     A.05 注解550
     A.06 定義語句550
     A.07 數(shù)據(jù)類型551
     A.08 局部變量552
     A.09 函數(shù)原型552
     A.10 函數(shù)聲明553
     A.11 縮進格式554
     A.12 語句和表達式556
     A.13 結構和聯(lián)合557
     A.14 參考文獻558
    
     附錄B μC/OSII的使用許可證559
     B.01 用于學院和大學教學559
     B.02 用于商業(yè)目的559
     附錄C μC/OSII速查手冊560
     附錄D 工具程序TO574
     附錄E 參考文獻576
     附錄F 本書所附光盤578
     F.01 文件和目錄579

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號