這篇我沒有期待很多人按讚.... XD
哈哈哈!因為這篇談的東西比較小眾啦!不過真的是好東西!不好的東西我從來不屑放到我的粉絲頁的,因為對花時間看我貼文的粉絲,是項褻瀆...(請開始感動拭淚,謝謝! XD)
喜歡「嵌入式系統」、寫過或者想學著寫 Linux Driver 的朋友大概知道,最最最最...簡單的 Linux Driver,也要兩三百行。因為,一個 Linux Driver 有太多「例行公事」般的程式碼要寫,完成後才能開始寫真正屬於「硬體驅動」的部份。
但現在有位善心人士,寫了一份「LDT (Linux Driver Template)」。它把那些「例行公事」幫我們做好了,只要把真正硬體驅動的程式碼填上,就有一支可供編譯的 Linux Driver 了。這對提高程式師的生產力,非常重要。俗話說的好:「懶人抱枕,強人爆肝」。當個強人程式設計師沒什麼,多讀書就好了。但要當個「懶人」,還能把工作都應付得「不被挨罵」就不簡單了。平時得非常注意「別人十刻鐘,我只一分鐘」的一些小訣竅,才能提高生產力。強人只在乎「準時交卷」,懶人得做到「準時交卷,準時下班」。
原文只介紹 Linux Driver Template (LDT),沒有附上 LDT 的下載連結(奇怪?)。我去「谷歌廟」拜過,幫各位補上了。那麼,就請大家一起往「懶人程式設計師」的境界邁進吧!呵呵~
Linux Driver Template (LDT) 介紹原文:
http://www.phoronix.com/scan.php?page=news_item&px=MTIyNzk
Linux Driver Template 下載點與下載方法:
https://github.com/makelinux/ldt/
「linux driver書」的推薦目錄:
- 關於linux driver書 在 紀老師程式教學網 Facebook 的最佳解答
- 關於linux driver書 在 Re: [請益] Linux device driver好不好自學上手? - 看板Soft_Job 的評價
- 關於linux driver書 在 Jserv與他愉快的小夥伴- 《The Linux Kernel Module ... 的評價
- 關於linux driver書 在 LINUX驅動程式書況影片- YouTube 的評價
- 關於linux driver書 在 [徵書] 新手入行,想多買書來練功- linuxdev - PTT數位生活 的評價
- 關於linux driver書 在 [心得] 十本Linux 核心開發書籍介紹- 看板LinuxDev - PTT網頁版 的評價
- 關於linux driver書 在 linux kernel教學2023-精選在臉書/Facebook/Dcard上的焦點 ... 的評價
- 關於linux driver書 在 linux kernel教學2023-精選在臉書/Facebook/Dcard上的焦點 ... 的評價
linux driver書 在 Jserv與他愉快的小夥伴- 《The Linux Kernel Module ... 的推薦與評價
《The Linux Kernel Module Programming Guide》最初發布於2001 年,採用Open Software License (copyleft 風格) 發布,針對Linux-2.4 和Linux-2.6 版本,提供解說用的 ... ... <看更多>
linux driver書 在 Re: [請益] Linux device driver好不好自學上手? - 看板Soft_Job 的推薦與評價
※ 引述《pl132 (pl132)》之銘言:
: 最近小弟有考上資工在職專班
: 有問到教授是做無線網路演算法
: 他說要熟linux device driver怎麼寫
: 但是無奈小弟是用python做儀控比較多
: 實在不熟C,大學非本科,程式是上班後自學的
: 想請問各位版友這塊到底好不好做啊?自學上手要多久呢?
同學你好,我最近跟學生一起編撰《The Linux Kernel Module Programming Guide》,
這本電子書原本在 2007 年 (相當於 Linux v2.6.20 釋出的年代) 就停止更新,但秉持
「路見不平,拿 patch 來填」的精神,我們就接手維護,更新書中描述和對應的範例程
式碼到 Linux v5.x (配合 Ubuntu Linux LTS 的發布)。可線上免費存取:
https://sysprog21.github.io/lkmpg/
這本書簡稱為 LKMPG,儘管有很多地方需要改進,但關於 Linux 裝置驅動程式開發的
基本概念應已涵蓋。我知道好幾位讀者都用下班時間自學 [1],只要腳步踏實,仍可累
積些認知和成果。
另外,我也準備 vwifi 這個針對 Linux cfg80211 子系統 [2] 的虛擬無線網路驅動程
式,僅用不到 300 行就可開發,支援無線網路的掃描、連接,和斷線等功能,請見:
https://github.com/sysprog21/vwifi
Linux 核心裝置驅動程式和內部實作需要對 C 語言有更入的掌握,歡迎利用線上免費
講座「你所不知道的 C 語言」來學習:
https://hackmd.io/@sysprog/c-prog
以及「Linux 核心設計」系列講座:
https://hackmd.io/@sysprog/linux-kernel-internal
關於「自學上手要多久」這樣的問題,我沒有資格回覆,畢竟我從 1997 年學習 Linux
以來,一直認為自己不理解 Linux 核心,一如蘇格拉底所說:「我唯一知道的,就是我
一無所知」。
[1] 暑期 Linux 核心課程大約六成的學員是上班族:
https://hackmd.io/@sysprog/linux2021-summer
[2] cfg80211 子系統:
https://www.kernel.org/doc/html/latest/driver-api/80211/cfg80211.html
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.246.163 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1630642175.A.AE5.html
... <看更多>