<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          【IOT物聯(lián)網(wǎng)小鎮(zhèn)】原創(chuàng)文章匯總(2021-12)

          共 3068字,需瀏覽 7分鐘

           ·

          2022-01-09 08:57

          號(hào)主:道哥,十多年的嵌入式開發(fā)老兵,專注于嵌入式 + Linux 領(lǐng)域,玩過單片機(jī)、搞過智能家居、研究過 PLC工業(yè)機(jī)器人,項(xiàng)目開發(fā)經(jīng)驗(yàn)非常豐富。

          他的文章主要包括 C/C++、Linux操作系統(tǒng)、物聯(lián)網(wǎng)、單片機(jī)和嵌入式 這幾個(gè)方面。厚積薄發(fā)、換位思考,以讀者的角度來總結(jié)文章。每一篇輸出,不僅僅是干貨的呈現(xiàn),更是引導(dǎo)你一步一步的深入思考,從底層邏輯來提升自己。

          • 【Linux 從頭學(xué)】系列

          • 物聯(lián)網(wǎng)開發(fā)經(jīng)驗(yàn)

          • C/C++ 語言

          • Linux 應(yīng)用程序設(shè)計(jì)

          • Linux 驅(qū)動(dòng)開發(fā)實(shí)踐

          • Linux 操作系統(tǒng)

          • 編譯和鏈接

          • 嵌入式開發(fā)

          • 代碼調(diào)試

          • Lua 語言

          • 開源庫(kù)學(xué)習(xí)

          • 開發(fā)工具

          • 讀書筆記

          • 心得思考


          【Linux 從頭學(xué)】系列

          這個(gè)系列的文章,把視角回退到經(jīng)典的 x86 平臺(tái),依托幾本經(jīng)典的書籍,來一起學(xué)習(xí)操作系統(tǒng)最原始、最本質(zhì)的功能需求和開發(fā)套路。

          由于拋開了現(xiàn)代Linux操作系統(tǒng)中許多復(fù)雜的算法,把焦點(diǎn)集中在一個(gè)操作系統(tǒng)所必要的基本功能上。只要你會(huì)C語言,就一定能看得懂。

          這個(gè)系列的文章,也許不能讓你的開發(fā)技能有立竿見影的提升,但是一定會(huì)增強(qiáng)你的開發(fā)內(nèi)功

          1. CPU 是如何執(zhí)行一條指令的?

          2. x86中內(nèi)存【段尋址】方式的來龍去脈 *****

          3. 如何告訴 CPU,代碼段、數(shù)據(jù)段、棧段在內(nèi)存中什么位置?

          4. 所有編程語言中的【棧操作】,底層原理都在這里 ***

          5. 系統(tǒng)啟動(dòng)過程中的幾個(gè)神秘地址,你知道是什么意思嗎? *

          6. 16張結(jié)構(gòu)圖,徹底理解【代碼重定位】的底層原理 *****

          7. 中斷那么重要,它的本質(zhì)到底是什么? *

          8. Linux 是如何保護(hù)內(nèi)核代碼的?【從實(shí)模式到保護(hù)模式】 *****

          9. x86 處理器如何進(jìn)行-層層的內(nèi)存保護(hù)?

          10. 三級(jí)跳過程詳解-從 bootloader 到 操作系統(tǒng),再到應(yīng)用程序

          11. 理解了這三個(gè)概念,才能徹底理解【任務(wù)管理】和【任務(wù)切換】

          12. 讀完這篇【特權(quán)級(jí)】文章,你就比別人更“精通”操作系統(tǒng)!

          13. 想徹底搞懂“系統(tǒng)調(diào)用”的底層原理?建議您別錯(cuò)過這篇【調(diào)用門】 ***

          14. 【分頁機(jī)制】-看了這篇文章還沒徹底搞懂?我自罰三杯! ***

          15. 頁目錄和頁表】-理論 + 實(shí)例 + 圖文的最完全、最接地氣詳解 *****

          16. 操作系統(tǒng)-如何把【頁目錄和頁表】當(dāng)做普通物理頁進(jìn)行操作的? *

          物聯(lián)網(wǎng)開發(fā)經(jīng)驗(yàn)

          1. 物聯(lián)網(wǎng)網(wǎng)關(guān)開發(fā):基于MQTT消息總線的設(shè)計(jì)過程(上) ***

          2. 物聯(lián)網(wǎng)網(wǎng)關(guān)開發(fā):基于MQTT消息總線的設(shè)計(jì)過程(下) ***

          3. 物聯(lián)網(wǎng)設(shè)備OTA軟件升級(jí)之:升級(jí)包下載過程之旅 *

          4. 物聯(lián)網(wǎng)設(shè)備OTA軟件升級(jí)之:完全升級(jí)和增量升級(jí) *

          5. 關(guān)于加密、證書的那些事 *****

          6. ESP32 開發(fā)之:亞馬遜 AWS 平臺(tái) OTA 升級(jí)過程完全梳理 *

          7. 從程序員的角度,來拆解物聯(lián)網(wǎng)系統(tǒng)中的開發(fā)工作

          8. 無源物聯(lián)網(wǎng): 物聯(lián)網(wǎng)的下一個(gè)風(fēng)口?

          C/C++ 語言

          1. C語言指針-從底層原理到花式技巧,用圖文和代碼幫你講解透徹 *****

          2. C指針的這些使用技巧,掌握后立刻提升一個(gè)Level *

          3. 內(nèi)聯(lián)匯編很可怕嗎?看完這篇文章,終結(jié)它! *****

          4. 一步步分析-C語言如何面向?qū)ο缶幊?/a> *

          5. 提高代碼逼格的利器:宏定義-從入門到放棄 ***

          6. 數(shù)組不可以直接賦值,為什么結(jié)構(gòu)體中的數(shù)組卻可以?

          7. 拿來即用:用C+JS結(jié)構(gòu)來處理JSON數(shù)據(jù)

          8. C與C++混合編程

          9. 利用C可變參數(shù)和宏定義來實(shí)現(xiàn)自己的日志系統(tǒng)

          10. C_C++_靜態(tài)庫(kù)_動(dòng)態(tài)庫(kù)的制作和使用 *

          11. Linux+Windows: 程序崩潰時(shí),在 C++ 代碼中,如何獲取函數(shù)調(diào)用棧信息 *

          12. 你只用do-while來實(shí)現(xiàn)循環(huán)?太浪費(fèi)了!

          13. C語言函數(shù)傳參:指針的指針

          14. 一個(gè)printf(結(jié)構(gòu)體指針)引發(fā)的血案

          15. 利用C語言中的setjmp和longjmp,來實(shí)現(xiàn)異常捕獲和協(xié)程 *

          16. 代碼安全性和健壯性:如何在if和assert中做選擇?

          17. 天下武功,唯快不破:提升字符串格式化效率的小技巧

          18. C語言中的【柔性數(shù)組】 *

          19. 用純軟件來代替Mutex互斥鎖

          20. 用純軟件來代替Mutex互斥鎖-多線程

          21. 利用_Pragma來溫柔的廢棄API

          22. 一個(gè)跨平臺(tái)的頭文件

          23. 跨平臺(tái)代碼的3種組織方式 *

          24. 結(jié)構(gòu)體中指針類型的成員變量,它的類型重要嗎?

          25. 關(guān)于二進(jìn)制表示和補(bǔ)碼計(jì)算的來龍去脈,入門看了秒懂

          Linux 應(yīng)用程序設(shè)計(jì)

          1. 都說軟件架構(gòu)要分層、分模塊,具體應(yīng)該怎么做(一) *****

          2. 都說軟件架構(gòu)要分層、分模塊,具體應(yīng)該怎么做(二) *****

          3. 我最喜歡的進(jìn)程之間通信方式-消息總線 ***

          4. 【最佳實(shí)踐】生產(chǎn)者和消費(fèi)者模式中的雙緩沖技術(shù) *

          5. 全圖文分析:如何利用Google的protobuf,來思考、設(shè)計(jì)、實(shí)現(xiàn)自己的RPC框架

          6. 多線程異步【日志系統(tǒng)】,高效、強(qiáng)悍的實(shí)現(xiàn)方式:雙緩沖!

          7. 在動(dòng)態(tài)庫(kù)中如何調(diào)用外部函數(shù)?

          8. 用一種討巧方式,來獲取線程棧的使用信息

          9. 這 7 個(gè) Linux 命令,你是怎么來使用的? *

          10. WSL:在 Windows 系統(tǒng)中開發(fā) Linux 程序的又一神器

          11. WSL2:Windows 親生的 Linux 子系統(tǒng)

          Linux 驅(qū)動(dòng)開發(fā)實(shí)踐

          1. 帶你一步一步編譯內(nèi)核驅(qū)動(dòng)程序

          2. 你知道【字符設(shè)備驅(qū)動(dòng)程序】的兩種寫法嗎?

          3. 一步一步編寫字符設(shè)備驅(qū)動(dòng)程序 *

          4. 如何編寫【 GPIO 】設(shè)備的驅(qū)動(dòng)程序?

          5. 驅(qū)動(dòng)程序如何發(fā)送【信號(hào)】給應(yīng)用程序?

          6. 一起來梳理【中斷】的前世今生(附代碼)

          7. 中斷處理函數(shù)如何【發(fā)送信號(hào)】給應(yīng)用層? *

          8. 中斷處理中的【工作隊(duì)列】 workqueue 是什么鬼?

          Linux 操作系統(tǒng)

          1. 一次腦殘的記錄:Linux 中實(shí)時(shí)任務(wù)調(diào)度與優(yōu)先級(jí) *

          2. Linux系統(tǒng)是如何用虛擬內(nèi)存來欺騙應(yīng)用程序的?

          3. Mr. Process的一生-Linux內(nèi)核的社會(huì)視角

          4. Linux中的軟鏈接、硬鏈接:都用在哪些場(chǎng)合? *

          編譯和鏈接

          1. Linux系統(tǒng)中編譯、鏈接的基石-ELF文件:扒開它的層層外衣,從字節(jié)碼的粒度來探索 *****

          2. cmake基礎(chǔ)示例:如何編譯【跨平臺(tái)】的動(dòng)態(tài)庫(kù)和應(yīng)用程序 ***

          3. 使用 cmake 來搭建跨平臺(tái)的應(yīng)用程序框架:C語言版本

          4. 使用 cmake 來搭建跨平臺(tái)的應(yīng)用程序框架:C++版本

          5. Makefile-只修改了.h頭文件,編譯為什么不起作用?

          6. 鏈接兩個(gè)"名字完全一樣"的【動(dòng)態(tài)庫(kù)】,你會(huì)怎么處理?

          7. 黑客級(jí)別的文章:把動(dòng)態(tài)庫(kù)的內(nèi)存操作玩出了新花樣! ***

          嵌入式開發(fā)

          1. 嵌入式開發(fā)需要架構(gòu)設(shè)計(jì)嗎?

          2. 為什么航天器、導(dǎo)彈喜歡用單片機(jī),而不是嵌入式系統(tǒng)?

          3. 一步步教你:在x86平臺(tái),如何用Qemu來模擬ARM系統(tǒng)

          代碼調(diào)試

          1. 原來gdb的底層調(diào)試原理這么簡(jiǎn)單 *****

          2. 用圖文帶你徹底弄懂GDB調(diào)試原理 *****

          Lua 語言

          1. 深入LUA腳本語言,讓你徹底明白調(diào)試原理 *****

          開源庫(kù)學(xué)習(xí)

          1. 向高手學(xué)習(xí):glib如何來封裝跨平臺(tái)的線程庫(kù) *

          開發(fā)工具

          1. 拿來即用:分享一個(gè)檢查內(nèi)存泄漏的小工具

          2. 使用Jenkins + git submodule 實(shí)現(xiàn)自動(dòng)化編譯,解決代碼安全性問題 *

          3. 推薦一個(gè)閱讀代碼、文檔的利器:屏幕貼圖工具

          4. 只有一行代碼的實(shí)用小工具

          讀書筆記

          1. 關(guān)于技術(shù)書籍,我是這么來選書和看書的 *

          2. Starlink星鏈計(jì)劃能與5G抗衡?看一下馬斯克吹過的牛逼

          3. 軟件加密的攻與防 *

          4. 五種時(shí)間:重建人生秩序

          心得思考

          1. 以我失敗的職業(yè)經(jīng)歷:給初入職場(chǎng)的技術(shù)人員幾個(gè)小建議

          2. 我對(duì)經(jīng)驗(yàn)的理解:一點(diǎn)小思考


          星標(biāo)公眾號(hào),第一時(shí)間看文章!


          瀏覽 75
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  99无码国产成人精品视频 | 中文字幕无码乱伦 | 小早怜子一区二区三区 | 啪啪视频自拍 | 91丨豆花丨国产熟女 |