原创 linux Samba 服務器配置

下面所述爲CentOS 6的Samba服務器設置,設置Samba服務器是爲了在虛擬機中的或者服務器中的linux和本地windows之間共享文件。 現在是敘述在虛擬機中的linux與windows之間的samba服務器架設。 安裝VMwa

原创 lua中表table的拷貝而不是引用的操作方法

lua中的table類型相互賦值都是相互引用,也就是修改被賦值或者賦值的table都會影響雙方的內容,相當於兩個指針的指向是一樣的,修改其中一個指針的指向內容,另一個所指向的內容也相應的變化,想通過賦值得到一個copy的想法看來有點天真了

原创 編譯錯誤"/usr/bin/ld: cannot find -lz"

今天在編譯libid3tag的時候死活編譯不過去,zlib-1.2.3編譯成功了,但是libid3tag make的時候死活報有問題,發現了有個提示是: /usr/bin/ld: cannot find -lz collect2: er

原创 linux驅動程序開發4

驅動程序中的阻塞與非阻塞編程 一個驅動當它無法立刻滿足請求的時候,驅動應當阻塞進程,使它進入休眠,直到請求可以繼續時再將它喚醒。 操作系統實現的原理是,當驅動發現無法滿足進程的請求時,會調用內核api將該進程掛入等待隊列後主動放棄cpu,

原创 linux驅動編程注意事項

1 license問題,Linux驅動必須有license,使用MODULE_LICENSE("GPL");解決 2 避免“名字空間污染”,模塊動態鏈接進內核裏,最好不要輸出內核中的全局變量燈,解決方法:EXPORT_NO_SYMBOLS

原创 各種排序算法和查找算法

自己實現了一遍冒泡排序、選擇排序、插入排序,留個念想 冒泡排序 簡單來說就是從數組末端冒泡到數組當前位置 void bubblesort(unsigned char *data, unsigned short length) { un

原创 交叉編譯GDB工具

GDB是Linux下用來調試驅動的利器,可以單步、設置端點、查看變量等等,簡直跟一個硬件調試器一樣,很方便。現在要在Linux虛擬機中編譯一個GDB,然後下載到Linux開發板中運行,好方便調試開發板的驅動。 如下步驟: 1 下載資源,共

原创 linux驅動程序開發2

驅動程序設備號 1 驅動程序有主設備號,次設備號之分,主設備號是區分設備屬於哪個驅動的標誌,次設備號是驅動程序用來區別多個設備的。 2 設備號的內部表示:    typedef unsigned long dev_t;其中搞12位爲主設備

原创 linux常用命令

1 清理kernel的編譯結果,Please check your kernel and try to clean the directory by runningmake distclean

原创 KEIL環境下如何讓代碼在 RAM中運行(轉)

原文鏈接:https://www.stmcu.org.cn/article/id-328210?=edm KEIL環境下如何讓代碼在 RAM中運行 發佈時間:2016-08-26 來源:ST社區

原创 linux驅動程序設計21 Linux設備驅動的調試

本章導讀 “工欲善其事,必先利其器”,爲了方便進行Linux設備驅動的開發和調試,建立良好的開發環境很重 要,還要使用必要的工具軟件以及掌握常用的調試技巧等。 21.1節講解了Linux下調試器GDB的基本用法和技巧。 21.2節講解了L

原创 linux 下的gcc應用,編譯和調試方法

原網址:https://blog.csdn.net/dawn_cx/article/details/6993623此文主要簡單的介紹了gcc編譯鏈接的過程的簡單描述和調試方法的簡單描述,寫的很不錯。gcc通常用來編譯.c結尾的c文件,g+

原创 linux驅動程序設計10 中斷與時鐘

本章主要講解Linux設備驅動編程中的中斷與定時器處理。由於中斷服務程序的執行並不存在於進程 上下文中,所以要求中斷服務程序的時間要儘量短。因此,Linux在中斷處理中引入了頂半部和底半部分 離的機制。另外,內核對時鐘的處理也採用中斷方式

原创 linux驅動程序設計7 Linux設備驅動中的併發控制

在Linux設備驅動中必須解決的一個問題是多個進程對共享資源的併發訪問,併發的訪問會導致競態,即使是經驗豐富的驅動工程師也會常常設計出包含併發問題bug的驅動程序。Linux提供了多種解決競態問題的方式,這些方式適合不同的應用場景。7.1

原创 linux驅動程序設計8 Linux設備驅動中的阻塞與非阻塞I/O

本章導讀阻塞和非阻塞I/O是設備訪問的兩種不同模式,驅動程序可以靈活地支持這兩種用戶空間對設備的訪問方式。8.1節講述了阻塞和非阻塞I/O的區別,並講解了實現阻塞I/O的等待隊列機制,以及在globalfifo設備驅動中增加對阻塞I/O支