找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 19715|回復(fù): 39
打印 上一主題 下一主題
收起左側(cè)

底層工作者手冊之嵌入式操作系統(tǒng)內(nèi)核(共219頁pdf)深入理解

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:246812 發(fā)表于 2017-11-7 10:01 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
本書從最底層來深入闡述嵌入式操作系統(tǒng),分享給大家提供源碼,讓大家理解含義.
講述原理 從無到有,和你一起一步步編寫實時嵌入式操作系統(tǒng)內(nèi)核
操作系統(tǒng)內(nèi)核也許并沒有像你想象的那么神秘


目前我所見的絕大部分介紹操作系統(tǒng)的書籍只是從應(yīng)用的角度告訴讀者應(yīng)該如何使用操作系統(tǒng) , 而且相當(dāng)一部分書籍只是把原有的用戶手冊整理了一下便出書了 , 這樣的書籍只能當(dāng)做一本使用手冊去查 , 從學(xué)習(xí)的角度來說意義不大 , 一不介紹實現(xiàn)背景 、 原理 , 二不介
紹應(yīng)用例子 , 無法讓讀者深刻體會操作系統(tǒng)的用法 。 本手冊最大特點是從操作系統(tǒng)的結(jié)構(gòu)設(shè)計 、 編碼的角度講述操作系統(tǒng)內(nèi)核原理 。 本手冊不是在操作系統(tǒng)寫完后才寫的 , 而是一邊設(shè)計一邊編碼一邊編寫 , 記錄了操作系統(tǒng)從無到有的過程 , 講解了操作系統(tǒng)實現(xiàn)的原理 , 只要
讀者了解 C 語言,再對匯編語言和硬件稍微有所了解便能看懂本手冊。
05 年 4 月,經(jīng)歷了漫長的學(xué)生時代我終于參加工作了!
在學(xué)校里接觸了少的可憐的硬件開發(fā) , 由于無人指導(dǎo)再加上本人做和尚撞鐘 , 因此所調(diào)試的單板問題百出 。 進入公司后 , 當(dāng)我可在硬件與底層軟件之間選擇時我毫不猶豫的選擇了軟件,直至走到今天。最開始被分配到做微碼,后來又陰錯陽差的搞起了 C 語言底層軟件開發(fā) 。 我剛?cè)牍緯r可謂軟件基礎(chǔ)太差 , 學(xué)校里學(xué)的知識也使我僅知道一點 C 語言的概念 ,從來沒有實戰(zhàn)過 。 好在當(dāng)時所作的項目編碼階段已經(jīng)結(jié)束 , 我的工作就是學(xué)習(xí)別人的代碼并幫助測試 、 修改問題 , 當(dāng)然 , 做的也并不好 。 現(xiàn)在回想起來 , 在這平淡的工作過程中有三點對我至關(guān)重要 , 一 、 正是在這段時間培養(yǎng)起我比較扎實的 C 語言基礎(chǔ) , 不能說學(xué)到了很多 ,但絕對是讓我明白了很多最基本的概念 , 讓我知道了學(xué)習(xí)的方法 。 二 、 正是在這段時間我接
觸了項目的開發(fā) , 讓我參與到歷時幾年幾百人相互協(xié)助的項目開發(fā)中 , 看到大項目的開發(fā)過程 , 接觸到了很多在學(xué)校里永遠(yuǎn)不會接觸到的事物 , 這些經(jīng)驗對我今后至關(guān)重要 , 雖然只是冰山一角。三、正是在這段時間讓我有機會第一次接觸了嵌入式操作系統(tǒng) —— vxworks ,雖
然僅僅是嵌入式操作系統(tǒng)的一些應(yīng)用層概念。
由于我基礎(chǔ)較差再加上我是慢熱型 , 當(dāng)時工作的并不好 , 一年半后幾經(jīng)周折我換到了一個小部門 。 以前幾百人的開發(fā)團隊不見了 , 眾多的技術(shù)專家 、 牛人不見了 , 一二十層 、 幾個 、幾十個 CPU 的板子不見了,取而代之的是巴掌大的單板,所謂專家就是我,我一個人就可以是整個項目的全部軟件開發(fā)人員,設(shè)計軟件結(jié)構(gòu)、編寫從驅(qū)動層到業(yè)務(wù)層的所有代碼 。 以前所做的工作是冰山一角 , 只知功能不識業(yè)務(wù) , 現(xiàn)如今則需要我承擔(dān)與軟件相關(guān)的所有工作 。
正是在這種環(huán)境中我可以借鑒以前的一些經(jīng)驗并按照自己現(xiàn)有的想法設(shè)計軟件 , 在實現(xiàn)系統(tǒng)功能的同時也證明了我在硬件、底層軟件所掌握知識的正確性。從做大系統(tǒng)的冰山一角 , 到做麻雀雖小五臟俱全的小系統(tǒng) , 各有各的難處 , 但也各有各的優(yōu)點 , 這也為我編寫這本手冊
提供了必要條件。
在做這些小系統(tǒng)時有一個問題一直困擾著我 , 我所作的設(shè)備需要與主設(shè)備對接 , 主設(shè)備會實時下發(fā)命令給我們執(zhí)行 , 并且需要實時回應(yīng)消息 , 這樣看來如果有一個嵌入式操作系統(tǒng)就會比較好實現(xiàn) 。 但我們的小系統(tǒng)硬件資源受限制 , 主頻低 、 存儲空間少 , 使得我很難找到一個合適的操作系統(tǒng) 。 現(xiàn)有的一些能用的操作系統(tǒng)需要收費 , 有些不提供源碼 , 但讓我最不能接受的是資料不全 , 真看不明白 , 使用這些操作系統(tǒng)如果在項目開發(fā)過程中出了問題又沒有很好的技術(shù)支持將是很大的風(fēng)險 , 因此在做這些小系統(tǒng)時我一直是裸奔 。 裸奔是可以搞定一切,但對于系統(tǒng)設(shè)計、維護來說確實是比較費勁。
在一個項目中我拋棄了原有的 51 單片機,使用了 ARM7TDMI 處理器。隨著反復(fù)查 看ARM 芯片手冊并在項目調(diào)試過程中對 ARM7 芯片的逐步了解 , 我逐漸意識到實現(xiàn)一個簡單的操作系統(tǒng)內(nèi)核調(diào)度功能似乎并沒有想象中的那么困難 , 原以為實現(xiàn)操作系統(tǒng)調(diào)度功能需要深入了解編譯器的知識,現(xiàn)在發(fā)現(xiàn)只要使用標(biāo)準(zhǔn)的 C 語言、一些匯編語言和芯片硬件知識就可以實現(xiàn)。

整理一下我目前所處的情況:
1. 迫切需要一個適合小系統(tǒng)的嵌入式操作系統(tǒng),但又沒有合適的。
2. 了解了嵌入式操作系統(tǒng)的一些概念。
3. 掌握了 ARM7 芯片的硬件結(jié)構(gòu)、 C 語言和匯編語言知識。
4. 找不到一本可以較好的介紹操作系統(tǒng)的書籍 , 希望能讓更多的人了解嵌入式操作系統(tǒng)內(nèi)核調(diào)度的基本原理,并以一種簡單易懂的方式讓更多的人接受。

事已如此 , 萬事具備 ! 現(xiàn)在 , 我們就開始一起編寫兩個嵌入式操作系統(tǒng)內(nèi)核 —— Wanli x和 Mindows !
Wanlix 是一個內(nèi)核非常小的嵌入式操作系統(tǒng),只有幾百個字節(jié)(大小與編譯器、編譯選項也有關(guān) ) ,但功能也非常少,只提供任務(wù)切換功能,而且需要主動調(diào)用函數(shù)切換任務(wù)。但 , 它確實可以實現(xiàn)任務(wù)調(diào)度功能 , 最難能可貴的是它的小巧 , 非常適合資源特別少但又需要任務(wù)切換的小項目。在這個源碼開放的時代, Linux 、 Unix 遍地生根,它就跟我姓了 , 因此叫 Wanlix 。
地球人都知道 Windows ,它是一種大型 PC 機操作系統(tǒng),它是分時操作系統(tǒng),它是 P C機通用操作系統(tǒng)。而我們將要編寫的 Mindows 則是一種小型操作系統(tǒng),是實時的,是用在嵌入式設(shè)備上的嵌入式實時操作系統(tǒng),一切都是與 Windows 相反的!因此這個操作系統(tǒng)就
叫 Mindows !

本手冊假定讀者具有一定的軟硬件基礎(chǔ),對于其中軟件編碼方面的基礎(chǔ)問題不再贅述 。另外需要特殊說明的是 , 我使用 vxworks 嵌入式操作系統(tǒng)時間只有一年左右 , 而且只是使用過極其簡單的幾個最基本的功能,在后來的一個項目中還簡單使用過 TI DSP 的 BIOS操作系統(tǒng) , 因此本人對嵌入式操作系統(tǒng)的了解僅限皮毛 , 本手冊也僅是根據(jù)本人在使用上述兩種操作系統(tǒng)中所建立的感官印象并按照我自己的想法來實現(xiàn)的 , 錯誤 、 疏漏之處在所難免 ,還請各位多多包涵,如有問題,可以反饋到論壇。
本人免費提 供 Wanli x 和 Mindow s 的源碼 , 但不承擔(dān)您使用本操作系統(tǒng)為您帶來的損失 。另外 , 本人語文水平實在有限 , 當(dāng)我還年輕的時候就因為高中還需要寫作文 , 就沒有報考高中,后來是班主任硬逼著改報的高中,在此向當(dāng)年的班主任孫老師表示感謝!因此 , 本手冊無法顧及語言優(yōu)美邏輯順通,只要大家能看明白就行了,有問題我們可以再交流。
最后 , 向那些無償付出自己知識的兄弟姐妹們表示敬意 ! 在編寫操作系統(tǒng)過程中 , 確實遇到了一些問題 , 正是在網(wǎng)上查到你們貢獻(xiàn)出的寶貴經(jīng)驗才能讓我得以完成此操作系統(tǒng)的編寫 , 因此 , 我也將這本手冊無償提供給大家 , 供大家參考 , 希望本手冊能給你能帶來一些幫助!


內(nèi)容截圖:



完整的pdf格式文檔51黑下載地址(共219頁):
底層工作者手冊之嵌入式操作系統(tǒng)內(nèi)核.pdf (5.19 MB, 下載次數(shù): 906)


評分

參與人數(shù) 4黑幣 +68 收起 理由
catlu + 12
超級大怪獸 + 5 共享資料的黑幣獎勵!
wu317417 + 1 共享資料的黑幣獎勵!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏31 分享淘帖 頂4 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:303333 發(fā)表于 2018-4-8 07:30 | 只看該作者
很好,值得學(xué)習(xí)!
回復(fù)

使用道具 舉報

板凳
ID:302547 發(fā)表于 2018-4-15 10:33 | 只看該作者
非常不錯
回復(fù)

使用道具 舉報

地板
ID:245224 發(fā)表于 2018-4-15 11:53 | 只看該作者
這么好的東西為啥,沒有人呢?
回復(fù)

使用道具 舉報

5#
ID:314323 發(fā)表于 2018-4-26 09:44 | 只看該作者
好東西,可以好好學(xué)學(xué)
回復(fù)

使用道具 舉報

6#
ID:297069 發(fā)表于 2018-5-25 12:20 | 只看該作者
謝謝分享
回復(fù)

使用道具 舉報

7#
ID:168038 發(fā)表于 2018-5-25 16:37 | 只看該作者
好東西,可以好好學(xué)學(xué)
回復(fù)

使用道具 舉報

8#
ID:8298 發(fā)表于 2018-7-5 17:17 | 只看該作者
一定要看看呀。感謝呀
回復(fù)

使用道具 舉報

9#
ID:20672 發(fā)表于 2018-7-30 20:39 | 只看該作者
謝謝分享,好資料,需要頂起來
回復(fù)

使用道具 舉報

10#
ID:85686 發(fā)表于 2018-8-2 10:20 | 只看該作者
我只想說作者真的是太厲害了,不知道能不能認(rèn)識,,
回復(fù)

使用道具 舉報

11#
ID:384661 發(fā)表于 2018-8-9 16:14 | 只看該作者
lemaden520 發(fā)表于 2018-4-15 11:53
這么好的東西為啥,沒有人呢?

好東西啊,我也很喜歡 ,不錯
回復(fù)

使用道具 舉報

12#
ID:275111 發(fā)表于 2018-8-20 09:34 | 只看該作者
另外一本書,50幾塊錢,除了大量的芯片資料介紹之外,有效內(nèi)容也就有這本書的30頁的量。這本書真是有貨的。
回復(fù)

使用道具 舉報

13#
ID:388210 發(fā)表于 2018-8-20 16:40 | 只看該作者
從新浪博客找到這里的,很不錯
回復(fù)

使用道具 舉報

14#
ID:64692 發(fā)表于 2018-8-24 11:08 | 只看該作者
感謝分享,學(xué)習(xí)一下
回復(fù)

使用道具 舉報

15#
ID:223554 發(fā)表于 2019-8-8 15:16 | 只看該作者
感謝分享
回復(fù)

使用道具 舉報

16#
ID:604046 發(fā)表于 2019-8-26 20:56 | 只看該作者
好東西,可以好好學(xué)學(xué)
回復(fù)

使用道具 舉報

17#
ID:282095 發(fā)表于 2019-8-27 20:33 | 只看該作者
不錯不錯 值得學(xué)習(xí)
回復(fù)

使用道具 舉報

18#
ID:554658 發(fā)表于 2019-9-12 18:42 | 只看該作者
寫得挺好的,值得學(xué)習(xí)!
回復(fù)

使用道具 舉報

19#
ID:627627 發(fā)表于 2019-10-21 15:59 | 只看該作者
感謝分享
回復(fù)

使用道具 舉報

20#
ID:628712 發(fā)表于 2019-10-23 23:23 | 只看該作者
太感謝了,學(xué)習(xí)一下~
回復(fù)

使用道具 舉報

21#
ID:586438 發(fā)表于 2019-10-24 15:25 | 只看該作者
保存下  以后應(yīng)該會有能用上的地方
回復(fù)

使用道具 舉報

22#
ID:250818 發(fā)表于 2020-4-20 08:40 | 只看該作者
也沒有配套的源碼下載?
回復(fù)

使用道具 舉報

23#
ID:740489 發(fā)表于 2020-4-28 22:46 | 只看該作者
有點問題,4.2節(jié)寫啦,用keil5操作不來,哪位大神實際做過;
回復(fù)

使用道具 舉報

24#
ID:221519 發(fā)表于 2020-6-22 22:47 | 只看該作者
十分感謝 謝謝分享
回復(fù)

使用道具 舉報

25#
ID:130230 發(fā)表于 2020-10-17 21:42 | 只看該作者
這個是真大神
回復(fù)

使用道具 舉報

26#
ID:852186 發(fā)表于 2020-12-2 09:30 | 只看該作者
在找程序跑飛如何分析的時候發(fā)現(xiàn)作者還寫了書,決定要看一下肯定會有額外的收獲。
回復(fù)

使用道具 舉報

27#
ID:731155 發(fā)表于 2020-12-2 10:01 | 只看該作者
看起來很不錯,收藏吃灰
回復(fù)

使用道具 舉報

28#
ID:352755 發(fā)表于 2021-2-27 18:08 | 只看該作者
很有啟發(fā),我也特別喜歡底層設(shè)計
回復(fù)

使用道具 舉報

29#
ID:893503 發(fā)表于 2021-3-18 14:59 | 只看該作者
此等大神膜拜~~
回復(fù)

使用道具 舉報

30#
ID:885885 發(fā)表于 2021-3-22 17:35 | 只看該作者
好東西,謝謝分享。
回復(fù)

使用道具 舉報

31#
ID:230752 發(fā)表于 2021-4-11 21:31 | 只看該作者
非常好的資料,感謝。。。
回復(fù)

使用道具 舉報

32#
ID:850519 發(fā)表于 2022-4-10 09:53 來自手機 | 只看該作者
有些想看了
回復(fù)

使用道具 舉報

33#
ID:364937 發(fā)表于 2022-11-16 10:12 | 只看該作者
感謝樓主分享。。。
回復(fù)

使用道具 舉報

34#
ID:865842 發(fā)表于 2022-11-18 16:02 | 只看該作者
深入學(xué)習(xí),期待新的提高。
回復(fù)

使用道具 舉報

35#
ID:983641 發(fā)表于 2022-11-21 17:43 | 只看該作者
全是干貨。
回復(fù)

使用道具 舉報

36#
ID:462629 發(fā)表于 2024-1-4 09:47 | 只看該作者
配套源碼有嗎?
回復(fù)

使用道具 舉報

37#
ID:23640 發(fā)表于 2024-1-8 17:15 | 只看該作者
好資料,感謝分享!
回復(fù)

使用道具 舉報

38#
ID:886043 發(fā)表于 2024-6-4 15:25 | 只看該作者
感謝樓主
回復(fù)

使用道具 舉報

39#
ID:1128802 發(fā)表于 2024-7-12 09:32 | 只看該作者
正好我在學(xué)操作系統(tǒng),想?yún)⒖家幌伦髡叩乃悸?/td>
回復(fù)

使用道具 舉報

40#
ID:1128802 發(fā)表于 2024-7-12 09:34 | 只看該作者
樓主,可以分享一下PDF嗎
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表