最近剛開始接觸嵌入式linux,每次學新東西的時候,總會不由自主的跟以前學過的東西進行對照比較,或者說學新東西的時候會有一種似曾相識的感覺。
下面說說學習嵌入式linux的時候我在想什麼。
1.嵌入式linux顯然就是電腦+單片機的合體。從系統結構上來說,之前的儀器,單片機上裝一個程序,電腦裝一個軟件,然後通過USB轉串口來通信。而嵌入式linux直接把系統裝在了板子裡。從程序結構上來說,之前,開發程序需要分上位機和下位機兩套程序,中間還得寫一套通信協議。而嵌入式linux通過應用程序層和設備驅動層的結合,兩者都是系統的一部分。
2.驅動和通信協議。之前一直不理解驅動到底是什麼,什麼網卡驅動啊,usb驅動啊。現在如果讓我來理解,那麼驅動就是之前單片機裡面通信的那部分程序。
驅動=通信協議+其執行代碼。
在單片機中,需要通過USB轉串口線中傳來的指令來獲取上位機具體是要操作哪個部件(設備)。這個過程,在嵌入式linux中實現起來非常方便,只要注冊了設備,便可以通過應用程序來調用驅動,執行操作了。