<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于網(wǎng)絡(luò )加載的嵌入式BootLoader的設計與實(shí)現

基于網(wǎng)絡(luò )加載的嵌入式BootLoader的設計與實(shí)現

作者: 時(shí)間:2013-01-15 來(lái)源:網(wǎng)絡(luò ) 收藏

其中subnet是目標機與主機共同的子網(wǎng),netmask是它們的子網(wǎng)掩碼。Hardware ethernet是目標機的硬件地址,可以通過(guò)fixed-address給目標分配一個(gè)固定的IP地址,當目標機啟動(dòng)時(shí),就會(huì )自己獲得這個(gè)IP地址。Option host-name是目標機的機器名。當主機與目標機直接連接時(shí),option routers指向主機的地址,當它們不是直接連接,而是通過(guò)路由時(shí),option routers的值為真正的routers地址值,同理optionsubnet-mask為option routers的子網(wǎng)掩碼。Filename為目標機從TFTP服務(wù)端下載的文件名,next-server為提供TFTP服務(wù)的位置。
最后請檢查/var/state/dhcp/dhcpd.leases文件是否存在,當一切準備好后,就可以運行DHCP服務(wù)了:
#/etc/init.d/dhcpd start
2)建立服務(wù)器端的TFTP服務(wù)
該服務(wù)在基于下載應用程序時(shí)使用,它類(lèi)似于FTP服務(wù),但它不需要向服務(wù)器提供用戶(hù)名與密碼,且其下載速度比FTP要快。其配置過(guò)程如下:
在確信TFTP協(xié)議已經(jīng)被正確安裝后,
①修改文件/etc/xinetd.conf,打開(kāi)tftp的支持;
②修改文件/etc/xinetd.d/tftp,例如:
e.JPG
參數server_args為tftp服務(wù)指定的目錄,其余參數理解比較容易。
設置完畢后,請重新啟xinetd,運行tap服務(wù)。
3)建立服務(wù)器端的NFS服務(wù)
目標平臺在Linux運行初始化時(shí),需要借助該服務(wù)來(lái)掛載根文件系統。其配置過(guò)程如下:
在確定NFS已經(jīng)正確安裝后,請修改文件/etc/exports,例如:
/home/karim/ctrl—rooffs 192.168.172.10 (rw,no_root_squash)
其中目錄/home/karim/ctrl-rooffs可以修改為服務(wù)器端的根文件系統存放的目錄。192.168.172.10為服務(wù)器端的IP地址。
修改完成后只需要重新啟動(dòng)NFS服務(wù)即可,NFS服務(wù)提供網(wǎng)絡(luò )文件系統功能,便于應用程序的管理與使用。
1. 3 客戶(hù)端嵌入式的設計
在基于網(wǎng)絡(luò )加載的系統中,應用程序文件一般被存放在網(wǎng)絡(luò )服務(wù)器。系統啟動(dòng)后,BootLoader需要先驅動(dòng)網(wǎng)絡(luò )適配器,并通過(guò)UDP/IP協(xié)議棧(BOOTP/DHCP、TFTP協(xié)議等),將映像文件下載到目標機端的SDRAM運行,當嵌入式linux操作系統初始化時(shí),它借助NFS協(xié)議將根文件系統掛載到服務(wù)器端。
在該方案中,BootLoader程序的主要工作步驟如下:
1)基本硬件的初始化:包括屏蔽所有的中斷、初始化所有的硬件、設置/裝載系統setup值、設置CPU的時(shí)鐘和頻率、RAM的初始化等;
2)讀取網(wǎng)絡(luò )參數配置文件:
該配置文件主要存放系統使用網(wǎng)絡(luò )過(guò)程中需要的一些參數,包括MAC地址、tftp服務(wù)器的IP地址、Kernel文件名、應用程序文件名等。
3)初始化PCI接口,并驅動(dòng)網(wǎng)卡;
4)通過(guò)DHCP協(xié)議獲取目標平臺的IP地址;
目標平臺先廣播發(fā)送ARP包,當DHCP服務(wù)器接收到該ARP包后,就會(huì )根據ARP包中的硬件地址從地址表中分配一個(gè)有效的IP地址,并發(fā)送應答報文給目標平臺。
5)通過(guò)tftp協(xié)議下載kernel代碼至內存SDRAM;
6)運行Linux內核和系統應用程序。


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>