版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第六講嵌入式linux介紹與系統(tǒng)創(chuàng)建,電信學院崔寅鳴 Email: ,本講主要內容,嵌入式Linux開發(fā)綜述 嵌入式Linux入門 Linux命令 telnet(課后練習) 嵌入式Linux系統(tǒng)的構建 Bootloader Kernel RootDisk(Root File system),Why eLinux?,免費和代碼公開 支持多種硬件平臺 可裁剪 使用成本低 強大的網絡功能 支持GUI開發(fā) 豐富的開發(fā)技術資源,How eLinux?,開發(fā)環(huán)境: Linux主機 + eLinux開發(fā)板,二者通過串口或網絡連接,怎么搭建開發(fā)環(huán)境?,主機 安裝Linux操作系統(tǒng)(本系統(tǒng)采用虛擬機Redhat
2、9.0) 在Linux下安裝交叉編譯工具鏈 開發(fā)板 建立eLinux操作系統(tǒng)(主機是Windows或Linux均可),主機與開發(fā)板連接,主機常用串口登錄開發(fā)板的eLinux系統(tǒng) Windows系統(tǒng)下用超級終端(HyperTerm) Linux系統(tǒng)下用minicom 主機與開發(fā)板通常組成局域網(TCP/IP),以方便傳遞文件及調試,如何學習?,Linux的基本學習 嵌入式Linux(eLinux)的構建 主機Redhat9.0系統(tǒng)及交叉編譯環(huán)境的建立 Makefile及簡單應用程序 設備驅動程序開發(fā),Linux學習資源,Redhat Linux 9 從入門與精通,Michael Jang著,邱仲
3、潘等譯,電子工業(yè)出版社 Alessandro Rubini,魏永明等譯,linux設備驅動程序,第二版,中國電力出版社,2002 Linux編程寶典,John Goerzen著,魏永明等譯,電子工業(yè)出版社 嵌入式Linux硬件、軟件與接口,Craig Hollabaugh著,陳雷、鐘書毅等譯,電子工業(yè)出版社,Linux命令簡介,Linux指令特征,區(qū)分大小寫 以“;”為分隔符,一條指令可以執(zhí)行多個命令 所有指令具有可執(zhí)行權限 rwx-read,write,executable(讀、寫及執(zhí)行權限),Shell,Shell為用戶提供指令操作使用環(huán)境,類似于DOS中的C 系統(tǒng)提供的shell種類在e
4、tc/shells中。通常有以下一些shell: BashRedhat Linux 默認,是Bourne Again Shell 簡稱 Korn、C、Z 可以用ksh、csh、zsh打開這三個shell 當是bash時,shell環(huán)境配置 /etc/profile /root/.bash_profile,指令歷史,方向鍵 History,可以用!來回叫命令 例# history # # !rp重復執(zhí)行rp開頭命令,命令鍵快捷操作Tab鍵,如果命令很長,輸入前幾個字符后,按Tab可以自動完成該命令;如果有多個命令符合,可再次按Tab得到命令清單,常用命令,常用命令 ls顯示文件列表 cd目錄轉換
5、 pwd顯示當前路徑 mkdir 創(chuàng)建目錄 rmdir刪除目錄 cp 拷貝 tar壓縮解壓縮 自助 man command command - help,ls,列出目錄和文件。有一系列參數(shù) -a,-r,-F,-i,-l,-t,-u 例 # ls -l 列出當前目錄所有文件,包括權限,擁有者,組擁有者,長度,修改時間,文件名 #ls a 列出文件,包括以.開始的文件,pwd,顯示當前目錄的絕對路徑。 例: # pwd /etc/httpd/conf,cd,改變路徑,例: cd .上移一層路徑 cd ./.上移兩層 cd /etc/rc.d絕對路徑移動 cd 移動到用戶自己的主目錄 (一般用戶在/
6、home/user下,超級用戶root的主目錄在/root),touch,生成空文件,例 # touch /root/1.c,cp,復制,cp file1 file2 例: #cp file* dir1將多個文件復制到一個目錄,mv,移動文件。 例 #mv file1 file2更改文件名 #mv file*dir1移動多個文件到一個目錄 #mv f file1 file2覆蓋,不提示 #mv i file1 file2覆蓋,提示,rm,刪除文件或目錄。 例: #rm file1 #rm dir1 #rm -r *.tmp刪除操作包括子目錄 #rm -f file強制刪除不提示信息 #rm r
7、f file,ln,鏈接文件。 硬鏈接,ln file1 file2,相當于cp p file1 file2,兩個文件一致,保持相同inode號,如果刪除file1,file2仍保留原文件所有信息 軟鏈接,ln s file1 file2,如果刪除file1,則file2指向空文件。訪問file2如同訪問file1,mkdir,生成目錄。 例: # mkdir p dir1/dir2在當前路徑下生成dir2目錄,如果dir1不存在,-p也讓linux生成該目錄 # mkdir m 755 /usr/dir3生成dir3目錄,755權限指定擁有者rwx,組中其他成員和別人r-x,rmdir,刪除
8、目錄 例: # rmdir dir1/dir2 要求是空目錄 如果想刪除目錄及目錄內所有文件,可 #rm r,tar,壓縮解壓命令。 主要參數(shù)簡介: c生成文件時必須使用 r增加文件到tar文件 v詳細查看內容 z將tar和gzip同時使用 f使用文件,必用 x提取文件 j gz2,tar,例: # tar cvf 壓縮文件.tar 壓縮對象文件及目錄壓縮捆綁 # tar tvf 壓縮文件.tar查看內容 # tar xvf 壓縮文件.tar解開tar文件 # tar cvfz 壓縮文件.tar.gz 壓縮對象同時使用tar和gzip # tar xvfz 壓縮文件.tar.gz,su,改變用
9、戶為系統(tǒng)管理員(root),需輸入系統(tǒng)管理員密碼 例: # su 輸入密碼 相應地,如果要退出該用戶,用exit,file,瀏覽每個文件類型。Linux沒有文件擴展名,可執(zhí)行文件不一定以.exe結尾,文檔也不一定以.doc結尾。 例: # file * # cron ASCII text gdmdirectory pgsasdempty loot.logASCII English text,cat,接合命令,將文件文本發(fā)送到標準輸出。 例 #cat file1,head與tail,顯示文件前(后)指定行數(shù)信息。 例: # Head 400b a.txt 顯示前400字節(jié) # tail 4k a
10、.txt顯示后4KB字節(jié) # head n15 a.txt顯示前15行 # tail 3m a.txt顯示后3M字節(jié),more,以頁為單位顯示文件內容,按空格翻頁。 例: # more readme.txt,chmod,改變文件的權限。 例: # chmod 754 file1 754的二進制編碼為111,101,100分別對應于擁有者的rwx,組中其他用戶的rwx和其他用戶的rwx 上述命令將文件file1的權限設置為擁有者具有rwx,組中其他用戶具有r-x,別的用戶具有r權限。,find,查找文件 例: # find /etc name filename 從指定目錄/etc及其子目錄中查找
11、filename 通配符:*,?,mount與umount,掛接設備,如硬盤、光驅、USB等。 例: # mount o ro /dev/cdrom /mnt/cdrom #umount /mnt/cdrom 可在/etc/fstab文件中設置哪些設備需要在啟動時進行mount,這個文件通常稱為文件系統(tǒng)表。,命令行編輯vi,用vi編輯文件: #vihello.c (如果沒有,將創(chuàng)建,否則打開) 最簡單的vi指令命令: i在當前位置插入文字,進入編輯狀態(tài) a在當前位置后附加文字,進入編輯狀態(tài) 按esc鍵退出編輯狀態(tài) 輸入 :wq保存退出 :q! 不保存強制退出,grep,搜索文件。 例: # g
12、rep michael /etc/passwd 在文件passwd中查找michael字符 常與其他命令組合,見下頁,命令組合,例: #ls l | grep keyword #find / -name *.a | grep michael,重定向和管道,改變輸入輸出。每個程序有三個文件句柄:標準輸入、標準輸出和標準錯誤。 例: # ls l /dev/foo listing 將刪除listing文件中原有內容,替之以新的輸出,如果想保留原有內容,并將新內容添加到末尾,可以用 # ls l /dev/foo listing,文件系統(tǒng)目錄,/bin 引導啟動所需的命令或普通用戶可能用的命令 /s
13、bin 類似/bin,一些特定的可執(zhí)行程序 /etc 系統(tǒng)的配置文件,/etc/rc.d目錄包含系統(tǒng)啟動腳本 /home Linux是一個多用戶環(huán)境,每個用戶將分配一個制定的目錄,供特定用戶訪問,文件系統(tǒng)目錄,/root Root用戶目錄 /lib 系統(tǒng)程序運行所需要的共享庫 /lib/module 核心可加載模塊,特別是那些恢復損壞系統(tǒng)時引導所需的(例如網絡和文件系統(tǒng)驅動)。 /dev 系統(tǒng)設備文件目錄,文件系統(tǒng)目錄,/tmp 臨時文件 /mnt 文件系統(tǒng)或設備的安裝點 /proc Proc目錄的內容是一個實時的駐留的文件系統(tǒng),描述當前系統(tǒng)運行的狀態(tài)以及過程 /lost+found 當系統(tǒng)非
14、法關機或崩潰時,在下一次啟動時,F(xiàn)sck將會檢查系統(tǒng)恢復損壞的文件碎片?;謴筒僮鞯慕Y果將會放在這個目錄中,常見縮寫,man:Manualpwd:Printworkingdirectorysu:Swithusercd:Changedirectoryls:List filesps:ProcessStatusmkdir:Makedirectoryrmdir:Removedirectorymkfs:Makefilesystemfsck:Filesystemcheckcat:Concatenate,常見縮寫,uname:Unixnamedf:Diskfreedu:Diskusagelsmod:Listm
15、odulesmv:Move filerm:Remove filecp:Copyfileln:Link filesfg:Foregroundbg:Backgroundchown:Changeowner,常見縮寫,chgrp:Changegroupchmod:Changemodeumount:Unmounttar:Tapearchiveldd:Listdynamicdependenciesinsmod:Installmodulermmod:Removemodulelsmod:Listmodule,常見縮寫,.a(擴展名a):Archive,static library.so(擴展名so):Shar
16、edobject,dynamically linked library.o(擴展名o):Object file,complied result of C/C+ source fileRPM:Red hatpackagemanagerdpkg:Debianpackage managerapt:Advancedpackagetool(Debian或基于Debian的發(fā)行版中提供),課后練習(必做),遠程登錄實驗室提供的linux服務器: 在Windows命令提示符下輸入: c:telnet ,用戶名emb,密碼embedded(注意沒有顯示,要盲打) 練習前述各命令,注意
17、一定要練習vi指令 有條件同學可以自建Linux操作系統(tǒng),可以用虛擬機 服務器有vmware6.5的安裝程序和Redhat9.0的ISO鏡像文件,課后練習,Cygwin下載與使用 是一個windows平臺運行的unix模擬環(huán)境,是cygnus solutions公司開發(fā)的自由軟件 下載 cygnus首先把gcc,gdb,gas等開發(fā)工具進行了改進,使他們能夠生成并解釋win32的目標文件;然后基于 win32 api寫了一個unix系統(tǒng)庫的模擬層。這樣,只要把這些工具的源代碼和這個共享庫連接到一起,就可以使用unix主機上的交叉編譯器來生成可以在 windows平臺上運行的工具集,嵌入式Lin
18、ux系統(tǒng)的創(chuàng)建,嵌入式Linux系統(tǒng)構成,eLinux可以動態(tài)加載模塊,便于移植和裁剪 固化于flash中 通常都由三部分構成 Bootloader Kernel rootfs,嵌入式Linux系統(tǒng)構成,BootLoader,Linux Kernel,文件系統(tǒng),應用程序,底層,頂層,關于從flash啟動,NOR flash具有與SDRAM同樣的數(shù)據(jù)線和地址線接口,具有連續(xù)地址空間,可以執(zhí)行程序,常用作代碼存儲(本系統(tǒng)) NAND flash八位接口,數(shù)據(jù)、地址和控制復用,接口復雜;不具有連續(xù)地址空間;常用作數(shù)據(jù)存儲器件 部分公司的ARM芯片,如SAMSUNG,有片內ESRAM,通過啟動時拷貝代
19、碼到ESRAM,可以支持NAND flash啟動,bootloader,開發(fā)板是一個專用計算機,上電啟動后,如果沒有軟件,狀態(tài)由MPU缺省配置決定 可以使用JTAG接口 SDRAM,串口等通常需要由軟件來初始化 如果要加載一個操作系統(tǒng),需要有引導程序,引導系統(tǒng)內核加載到RAM中運行 Bootloader是一個啟動加載程序,完成 系統(tǒng)部分硬件初始化 可以用來燒寫程序到flash 可以用來引導eLinux系統(tǒng)啟動,燒寫bootloader的方式,Bootloader需要先燒寫到flash上 通過串口燒寫 Windows或Linux下,都有類似的通過串口訪問flash的小程序 通過JTAG接口燒寫
20、Windows或Linux都支持。 本課程支持方式: Windows下Jflashmm程序 Linux下Jflashmm程序 Windows下flash writer程序(采用這種),Banyan-UE仿真器,仿真器的安裝 Banyan-UE-1.8.9.exe 解壓FlashWrite-v0.4.7到安裝目錄 仿真器使用 執(zhí)行DaemonU.exe,識別處理器(見下圖),Daemon圖,Banyan仿真器,執(zhí)行flashwrite-v0.4.7.exe,識別flash器件型號,Device ID 燒寫bootloader到地址0 x00,是PAX270處理器上電起始執(zhí)行地址 燒寫過程:erase,program,verify,Flashwrite,Bootloader啟動界面,通過串口終端程序訪問eLinux系統(tǒng) Windows下HyperTrm(超級終端) Linux下MiniCom 配置baud Rate:115200;Data Bits:8;Parity:無;Stop
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 招錄緊缺專業(yè)公務員486人模擬試卷附參考答案詳解(能力提升)
- 一建民航專業(yè)試題及答案解析(2025版)
- 2025年安全員A證考試預測試題【模擬題】附答案詳解
- 盾構施工關鍵技術及風險控制方案
- 2025年系統(tǒng)規(guī)劃與管理師職業(yè)資格考試重點內容試卷及答案解析
- 安全員A證考試綜合提升試卷(鞏固)附答案詳解
- 2025年物流配送管理師專業(yè)資格考試試題及答案解析
- 2025年行政職業(yè)能力測試考試題庫解析答案
- 澳門特別行政區(qū)中學教師職稱評定流程試題及答案
- 信息處理員三級(高級)歷年參考題庫含答案解析(5套試題)
- 《機械密封知識》課件
- 2023-2024學年浙江省杭州外國語學校七年級(上)期末英語試卷
- 同聲傳譯智慧樹知到期末考試答案章節(jié)答案2024年大連外國語大學
- 2023年-2025年國企改革深化提升方案
- 開封大學單招職業(yè)技能測試參考試題庫(含答案)
- 既有建筑幕墻安全性鑒定技術規(guī)程(征求意見稿)
- 施工總平面布置圖范本
- 嬰幼兒輔食添加及食譜制作
- 安全生產標準化對企業(yè)的影響安全生產
- SH/T 0362-1996抗氨汽輪機油
- GB/T 17213.4-2015工業(yè)過程控制閥第4部分:檢驗和例行試驗
評論
0/150
提交評論