新聞中心

        EEPW首頁 > 嵌入式系統 > 牛人業話 > Linux驅動程序學習步驟經典收藏

        Linux驅動程序學習步驟經典收藏

        作者: 時間:2016-12-08 來源:網絡 收藏

          了解linux技巧學習的方法很重要,學習linux操作系統時,你可能會遇到關于驅動方面的問題,這里將介紹學習linux的方法,在這里拿出來和大家分享一下。

        本文引用地址:http://www.104case.com/article/201612/341305.htm

          1.學會寫簡單的makefile

          2.編一應用程序,可以用makefile跑起來

          3.學會寫linux的makefile

          4.寫一簡單char驅動,makefile編譯通過,可以insmod,lsmod,rmmod.在驅動程序的init函數里打印helloworld,insmod后應該能夠通過dmesg看到輸出。

          5.寫一完整驅a動,加上read,write,ioctl,polling等各種函數的驅動實現。在ioctl里完成從用戶空間向內核空間傳遞結構體的實現。

          6.寫一block驅動程序加上read,write,ioctl,poll等各種函數實現。

          7.簡單學習下內存管理,這個是最難的,明白各種memoryalloc的函數實現細節。這是linux開發的基本功。

          8.學習鎖機制的應用,這個不是最難的但是最容易犯錯的,涉及到很多同步和并發的問題。

          9.看內核中實際應用的linux驅動程序代碼。你會發現最基本的你已經知道了,大的框架都是一樣的,無非是read,write,ioctl等函數的實現,但里面包含了很多很多細小的實現細節是之前不知道的。這時候就要考慮到很多別的問題而不僅僅是基本功能的實現。

          推薦您看2.6.20中integrated的一個驅動kvm,記得是在driver/lguest下,很好玩的,就是linux下的虛擬機驅動程序,代碼不長,但功能強大。有能力的可以自己寫一操作系統按照要求做成磁盤鏡像加載到虛擬機中,然后客戶機可以有自己的4G虛擬地址空間。

          10.看完linux驅動程序代碼歡迎您進入kernel學習中來。

          最簡單的方法,跟著ldd(linuxdevivedriver)做一遍。



        關鍵詞: Linux 驅動程序

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 田阳县| 基隆市| 揭东县| 剑川县| 定西市| 济宁市| 扬州市| 西充县| 平潭县| 陇川县| 景洪市| 恭城| 吴堡县| 阿瓦提县| 万源市| 攀枝花市| 新疆| 福海县| 天气| 南江县| 景德镇市| 阳城县| 阜康市| 宜黄县| 包头市| 晴隆县| 凌海市| 内江市| 新邵县| 富平县| 广平县| 温州市| 兰州市| 南皮县| 陆川县| 长沙县| 兴化市| 吉林市| 吴江市| 吴桥县| 七台河市|