當前位置:首頁 » 操作系統 » 嵌入式linux程序開發應用

嵌入式linux程序開發應用

發布時間: 2022-09-20 16:56:34

『壹』 嵌入式linux應用開發需要了解什麼

我來幫助樓主解答下,我做嵌入式近十年了。

1:請問搞應用開發的需不需要深入了解Linux系統?
搞嵌入式的應用開發主要是對linux的一些C函數了解下就可以了,相對來說比較簡單,所以如果定位在只是會高應用開發,確實不需要深入,但是如果你要把嵌入式學好,做好,那深入了解linux系統是必須的。

2:還有對硬體需要掌握到什麼程度?
如果是應用開發人員,基本上對硬體沒有什麼要求,稍微懂得某個硬體是干什麼的就可以。如果是底層的驅動開發人員和系統開發人員,那就需要掌握一些硬體的基本原理,比如如果配置這個硬體讓他工作起來,而如果是做硬體的,那就需要對硬體精通了。

3:有些人說搞嵌入式開發最主要的是用c語言,也有人說用C++或java
確實主要是C語言,C++和JAVA並不多,不過C++可以用來編寫QT界面,JAVA可以寫android的應用程序。

4:請問嵌入式Linux系統下到底支持哪些開發語言?支不支持C#呢?
一般就是主要是C語言,不支持C#.

5:學Linux嵌入式開發是不是以後都要在Linux系統下用開發語言編寫程序啊?
不需要,很多公司都在XP下用source insight寫程序,然後在XP通過SSH連接到linux伺服器編譯

6:多給樓主補充個好問題,關於如何學習嵌入式?
首先C語言,這個是毋庸置疑的,不管是做嵌入式軟體還是硬體開發的人員,對C語言的掌握這個是必需的,特別是對於以後致力於嵌入式軟體開發的人,現在絕大部分都是用C語言,你說不掌握它可以嗎?至於如何學習C語言,我想這些基礎的知識每個人都有自己的方法,關鍵要去學習,看書也好,網上找些視頻看也好。很多人會問,C語言要學到怎麼樣,我覺得這沒有標準的答案。我想至少你在明白了一些基礎的概念後,就該寫代碼了,動手才是最重要的,當你動手了,遇到問題了,再反過來學習,反過來查查課本,那時的收獲就不是你死看書能得到的。
其次,應該對操作系統有所了解,這對你對硬體和軟體的理解,絕對有很大的幫助。應該把系統的管理理解一下,比如進程、線程,系統如何來分配資源的,系統如何來管理硬體的,當然,不是看書就能把這些理解透,如果不是一時能理解,沒關系,多看看,結合以後的項目經驗,會有更好的理解的。
還有應該學習嵌入式系統,如linux或者wince下的編程,這些對以後做應用的編程很有幫助,當然,如果做手機的話,那可以學習MTK、塞班、Android等操作系統,Android是以後發展的趨勢,現在很熱門,Android也是基於linux系統封裝的,所以建議先學習下linux。
還有,應該學習下單片機或者ARM或者MIPS,很多人說我沒有單片機的經驗,直接學ARM可以嗎?我覺得那完全沒有問題的,當然如果你學習過單片機,那最好不過了,以後學習ARM就更簡單了。
最後如果你把以上的知識都有所了解後,就該去閱讀閱讀一些優秀的代碼,比如結合arm晶元手冊學習去學習下UBOOT的源代碼,了解下最小的系統開發,那對你整個嵌入式開發的非常有幫助的,可以的話,還可以學習下linux的源代碼,當然如果你直接閱讀2.6的代碼,我想你會很痛苦的,可以先看看linux 代碼早期的版本,比如0.12 的代碼等等,麻雀雖小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
至於上面說的知識如何學習呢?每個人都應該去找自己最好的方法,所謂的最好的方法就是最適合自己的方法。很多人看不進書,那就去看看視頻吧。視頻也應該要選擇,不是隨便看看,應該要有所選擇,有所挑選。我也是這樣一路走過來的,不過我這人比較懶,我看不進書,一看書我就想睡覺,所以這幾年我都是看視頻過來的,現在也算學有所成,但也不敢說是高手吧。
我在網上看到,有人把自己學習嵌入式的視頻總結出來,嵌入式系列實踐和視頻教程,大家可以看看網址http://www.ic120.com/embedvideo1.htm 我仔細看了覺得很不錯,我本來也想整理下,可是奈何我自己的電腦硬碟空間才40G,沒有辦法,時間也是不夠,心有餘而力不足,我不是在幫他做廣告,雖然要花錢,我覺得算不錯,至少自己不用去整理和花大量的時間去找資源,當然如果網上有的下,你網速和硬碟都夠的話,我建議大家自己網上下也好。想想我自己該開始學的時候,那時視頻資源少之又少,我買書和買視頻至少花了幾千塊,但是我覺得那很值,至少我現在賺回來了很多知識。

最後,希望這篇文章對熱愛嵌入式,想致力於嵌入式開發的朋友有所幫助。送給大家一句簡單而又樸素的話,堅持就是勝利,貴在堅持,也可以看看如何堅持嵌入式學習!

轉自嵌入式學習網!

『貳』 如何使用eclipse進行嵌入式Linux的開發

1、安裝jdk
jdk(java development kit)即java開發包,其中包含了運行eclipse所需要的jre. ubuntu預設安裝的gnu版本的jre運行效率不高,所以需要安裝sun公司的jre. 首先從sun的網站上下載安裝包jdk-6u7-linux-i586.bin,然後如下進行安裝:
# mkdir -p /opt/java # ./jdk-6u7-linux-i586.bin // 執行自解壓文件,生成目錄 # mv jdk1.6.0_07 /opt/java // 把目錄移到/opt/java下 # cd /opt/java # ln -s jdk1.6.0_07 jdk # mv /etc/alternatives/java /etc/alternatives/java.gnu # ln -s /opt/java/jdk/bin/java /etc/alternatives/java # export JAVA_HOME=/opt/java/jdk // 設置環境變數
2、安裝eclipse和cdt
從eclipse網站上下載安裝包eclipse-SDK-3.4-linux-gtk.tar.gz 和cdt-master-5.0.0.zip
# cd /opt # tar zxvf eclipse-SDK-3.4-linux-gtk.tar.gz // 解壓生成eclipse目錄 # export PATH=/opt/eclipse:$PATH # mkdir -p /opt/cdt # cd /opt/cdt # unzip cdt-master-5.0.0.zip # cp -r plugins/* /opt/eclipse/plugins/ # cp -r features/* /opt/eclipse/features/
二、創建c/c++工程
假設已經在linux上安裝好了arm交叉工具鏈,下面介紹如何創建、交叉編譯和調試c/c++工程,進入eclipse安裝路徑後,運行eclipse。

創建c 工程

使用預設的Linux GCC工具鏈

進入c/c++ 界面

添加源代碼文件1

添加源代碼文件2
編輯代碼
設置工程屬性,指定交叉工具鏈1
設置工程屬性,指定交叉工具鏈2
設置工程屬性,指定交叉工具鏈3
編譯工程
已生成arm平台可執行代碼
配置調試選項
設置Debugger和 GDB debugger選項
設置連接類型為TCP,目標板的ip地址和調試埠號。埠號任意指定,通常大於1024(避免和系統所用埠號沖突)
在開發板上運行程序,格式如上圖所示:gdbserver是交叉調試輔助程序;192.168.0.150是主機的ip地址;1234是調試埠號,和eclipse調試選項里設定的埠號要一致
點擊Debug,進入調試界面
執行到斷點
eclipse的調試界面和操作和在windows下開發類似。
所需開發工具及環境
虛擬機Linux:Fedora 9
交叉編譯工具:arm-linux-gcc-3.4.1.tar.bz2
集成開發工具:Eclipse(Linux安裝包中自帶的,安裝Linux時選中安裝)
安裝ARM交叉編譯器
1. 安裝。其實很簡單,就是將下載的arm-linux-gcc-3.4.1.tar.bz2解壓到Linux根目錄即可(因為解壓後已經包含了/usr/local目錄,所以要解壓到根目錄),如下命令:

tar -jxvf arm-linux-gcc-3.4.1.tar.bz2 -C /
解壓後的目錄/usr/local/arm/3.4.1/
2. 設置環境變數。就是把交叉編譯器的路徑設置到系統環境變數裡面去。

echo $PATH
查看現有的環境變數
如果只想臨時添加交叉編譯器的環境變數(註:臨時添加的系統重啟或注銷後又沒有了),只需在命令行輸入如下命令:

export PATH=$PATH:/usr/local/arm/3.4.1/bin
如果想這個環境變數永久的添加到系統的環境變數中,則你只需把這個命令添加到/root/.bashrc文件的最後一行即可(這個文件是隱藏文件,你要在文件瀏覽器中單擊查看菜單,勾選顯示隱藏文件才能看到)
3. 測試建立的交叉編譯環境。新建一個c程序,文件名:test.c, 如下:

#include <stdio.h>int main(void){ printf("Hellow world!\n"); return 0;}
進行交叉編譯,如下:

arm-linux-gcc -o test test.c
將交叉編譯好的目標文件test下載到ARM開發板中並運行,如下:

./test
輸出結果為:
Hellow world!
用集成開發工具Eclipse來開發嵌入式應用程序
雙擊Eclipse圖標啟動Eclipse
設置Eclipse的工作空間,就是選個目錄,單擊OK
啟動後的主界面
開始新建一個應用程序工程
選擇新建一個C工程,單擊Next
給工程取個名字,這里我就叫test_app;然後選擇工程類型,我選擇了個Hellow world C工程模版,單擊Next
填寫作者、版權等信息,單擊Next
沒什麼選的,點擊Finish
單擊Yes
新建好的項目工程
展開左邊的源代碼目錄,雙擊打開主函數。這里只是輸出一句"Hello World!!!",你可以做一些其他復雜的應用
單擊Project菜單,去掉Build Automatically的勾選,因為勾選的話,每次修改一個地方工程都會自動進行編譯
打開工程的屬性對話框進行編譯選項的設置
我們的應用程序最終要到嵌入式arm上運行,這里就要把gcc改成arm-linux-gcc編譯器,當然前提是你要在你的開發主機上先安裝arm-linux-gcc
C連接器也要改成arm-linux-gcc
這里的Libraries是設置你的應用程序中用到的庫文件,比如應用程序中用到了線程類,則這里在上面添加pthread這個庫,下面就添加這個庫的路徑。如果應用程序沒用到任何庫文件就不用管了
選中左側的工程名,右鍵,在彈出的菜單中選擇Build Project編譯工程
編譯好後的工程,目標文件在Debug目錄下

『叄』 嵌入式開發需要掌握哪些知識

嵌入式系統是計算機軟體和硬體的綜合體,崗位包括:ESE(嵌入式軟體工程師);ADE(嵌入式應用開發工程師);FWE(嵌入式底層開發工程師);FEC(嵌入式固件開發工程師),你可以先下載全套嵌入式視頻課自學,看是否感興趣。

課程內容主要包括:

①C,Java核心編程:c語言核心編程,Java核心編程;

②Linux核心操作與演算法:Linux系統使用,Linux-c編程核心技術,精品數據結構,Linux-c編程精髓;

③核心操作與演算法:Linux系統編程,Linux網路編程核心技術,UI編程,Java核心編程,安卓核心技術;

④ARM+Linux底層開發:數字電路,ARM編程核心,Linux系統開發,嵌入式Linux驅動開發;

⑤大型項目實踐:每期安排各類型真實的項目,詳細可以點我下載資料。

互聯網行業目前還是最熱門的行業之一,學習IT技能之後足夠優秀是有機會進入騰訊、阿里、網易等互聯網大廠高薪就業的,發展前景非常好,普通人也可以學習。

想要系統學習,你可以考察對比一下開設有相關專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能力,能夠在校期間取得大專或本科學歷,中博軟體學院、南京課工場、南京北大青鳥等開設相關專業的學校都是不錯的,建議實地考察對比一下。

祝你學有所成,望採納。

『肆』 學習嵌入式Linux怎麼應用開發

提供一下幾種方案

一、還按照《嵌入死linux應用開發完全手冊》(韋東山)的內容來,但是嵌入式linux的開發環境自己搭建。當時我是按照《鳥哥的私房菜-基礎篇》和《鳥哥的私房菜-伺服器篇》兩篇,整出一套開發平台,CentOS5.3 + samba/vsftpd + gcc / linux-gcc 。 window平台上的工具sourceinsight、secureCRT。 注意:我使用了四個月學會linux操作。不知道你是否會先學這兩本書,再學習韋東山老師的嵌入式呢。學完之後看似學習了很多,出來外面之後,我又去在windows平台開發,而且現在用C#。囧。現在看什麼嵌入式系統都非常快,很容易理解架構,如何實現。可惜自己太年輕,沒有資本和人脈,不然可以實現很多有意思的東西。現在正在嘗試創業。

二、尋找開發板,而不是書籍作為實驗的途徑。書籍只是輔助,輔助你實現某種功能。可以集中linux書籍、嵌入式開發書籍、單片機開發、編程語言。宋寶華的嵌入式書籍。開發板當時用的是飛凌的,由國嵌負責技術講解和培訓。講了不少有用的東西。現在網上的開發板多,可以淘,但是不用太貴,作用不大。找前衛的技術開發,中國看似不行。前衛老師都沒搞出什麼東西,我們在基本是0基礎的前提下,很難實現比較前衛的技術。打好基礎,看似是唯一的選擇。

三、單獨找台PC機,直接安裝ubuntu11,買本ubuntu相關的書,他會交你怎樣安裝使用工具的。其實和第一種解決方式是一樣的,書是別人在五(六)年前寫的,不符合摩爾定理。所以沒辦法,我們在嵌入式方面的教育還是欠缺啊,出的書都少,記那麼基本,還全是個人。沒有什麼教育機構。

希望以上對你有用。

『伍』 嵌入式LINUX應用程序開發和系統開發有什麼區別

驅別在一個主要是應用層軟體的開發,而系統式開發主要是驅動介面,內核配置交叉編譯,內核取點,busybox,等等方面。相對來說,系統式開發的要求比較高。外面嵌入式linux的書都比較多,基本上大同小異,OREILLY的書還可以的。

『陸』 嵌入式Linux應用程序開發是學什麼的要學什麼內容

就Linux應用層的開發來講,通用的知識包括:
a, c 語言;
b, 簡單數據結構和演算法;
c, Linux 環境下的編程介面;
d, C++ 及 UML;

除了這些,其他都是某一方面特定的了,
比方資料庫,GUI,音視頻,無線應用等等。

具體的內容說明,請參考杭州巨立安(JulianTec) 第一階段
的課程安排。

『柒』 嵌入式Linux應用程序開發標准教程的內容簡介

《嵌入式Linux應用程序開發標准教程(第2版)》主要分為3個部分,包括Linux基礎、搭建嵌入式Linux環境和嵌入式Linux的應用開發。Linux基礎部分從Linux基礎、基本操作命令講起,為Linux初學者能快速入門提供了保證。接著系統地講解了嵌入式Linux的環境搭建,以及嵌入式Linux的I/O與文件系統的開發、進程式控制制開發、進程間通信開發、網路應用開發、基於中斷的開發、設備驅動程序的開發以及嵌入式圖形界面的開發等,並且還安排了豐富的實驗內容與課後實踐,使讀者能夠邊學邊用,更快更好地掌握所學知識。
《嵌入式Linux應用程序開發標准教程(第2版)》可作為高等院校電子類、電氣類、控制類等專業高年級本科生、研究生學習嵌入式Linux的教材,也可供希望轉入嵌入式領域的科研和工程技術人員參考使用,還可作為嵌入式培訓班的教材和參考書。

『捌』 嵌入式LINUX應用程序開發和系統開發有什麼區別

區別在一個主要是應用層軟體的開發,而系統式開發主要是驅動介面,內核配置交叉編譯,內核取點,busybox,等等方面。相對來說,系統式開發的要求比較高。外面嵌入式linux的書都比較多,基本上大同小異,OREILLY的書還可以的。
希望能幫助你!!!!

『玖』 嵌入式 linux 開發主要是做什麼的

人工智慧 物聯網的產業落地,都脫不開嵌入式。現在企業最需要的更多的是創新型,復合型,應用型人才,搭載配套開發板學習嵌入式 linux 開發,可以為以後找到高薪工作鋪好路。
搭載配套開發板學習嵌入式 linux,出了可以學習arm、linux、Qt外,還可以學習stm32單片機、FreeRTOS、物聯網、人工智慧、網路 阿里 華為等各種雲接入,stm32mp157強大的硬體性能及豐富的配套模塊極大拓展Linux的應用場景,非常貼合企業當下開發需求。現在整個時代背景是多技術的融合發展時代,是AIoT的時代,相關技術的拓展會給職業發展帶來很多機遇。
技術學習最重要的就是實戰,買塊開發板開練很重要,FS-MP1A開發板,主控晶元是用的stm32mp157。可以學嵌入式Linux,也可以學stm32,還可以學物聯網,人工智慧,屬於體系化教學級開發板。

『拾』 如何學習嵌入式linux應用程序開發

理論加實踐,先將linux的一些基本操作搞清楚,然後自己從一些小程序開始唄,,,,網上有大量資料,不過貴在堅持 ,呵呵呵

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:336
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:944
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:742
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:372