新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式uClinux應(yīng)用程序的NFS開發(fā)

嵌入式uClinux應(yīng)用程序的NFS開發(fā)

作者: 時間:2011-05-20 來源:網(wǎng)絡(luò) 收藏

  3 基于

  3.1在主機上編譯程序,并生成在目標(biāo)機上運行的程序

  在主機/home/pub下編輯hi.c,其內(nèi)容:

  #include

  main(){printf(“hi! Good!n”);}

  交叉編譯hi.c,#arm-elf-gcc –Wall –Wl,-elf2flt –o hi hi.c生成flt格式的可執(zhí)行文件hi。修改hi的權(quán)限#chmod 711 hi。該文件可以直接下載到目標(biāo)機上運行,這里利用看其執(zhí)行情況。

  3.2目標(biāo)機利用掛載主機并進(jìn)行調(diào)試

  用串口線將主機的COM1和目標(biāo)機的COM0連接起來,同時接上網(wǎng)線。在主機上打開minicom(設(shè)置參數(shù):57600 8N1,無流控)用于同目標(biāo)機通訊。目標(biāo)機上電或者復(fù)位,開始啟動,顯示信息成功后進(jìn)入sh。

  在目標(biāo)機上建立/var/nfs用于掛載主機上的目錄(這里采用的是romfs只讀文件系統(tǒng),/var使用的是RAM disk驅(qū)動的ext2文件系統(tǒng)。所以僅/var可以用于讀寫,其它目錄只可以讀)# mkdir /var/nfs

  啟動目標(biāo)機上portmap服務(wù) # portmap

  掛載主機上的共享目錄#mount -t nfs 192.168.111.1:/home/pub /var/nfs

  #ls /var/nfs可以看到主機上/home/pub的文件。此時,可以運行該目錄下的可執(zhí)行程序hi,#./hi(注意要加“./”)出現(xiàn)hi! Good!。程序正常運行,將其編譯到內(nèi)核里。將hi拷貝到源碼包的/romfs/bin下編譯,生成的image.rom可以下載到 flash。在板子上的/bin下就有hi程序了,并且可以直接執(zhí)行hi。

  卸載使用umount # umount /var/nfs。如果讓目標(biāo)機啟動時自動運行portmap服務(wù),可以修改rc文件(源碼中),在最后加入/bin/portmap,mkdir /var/nfs。

  4 小結(jié)

  使用NFS模式,關(guān)鍵在于對主機和目標(biāo)機的配置。如果配置不當(dāng),就會mount失敗。以下是值得注意的地方:

  mount成功,可是運行程序. /hi時報告錯誤:Permission denied.即主機拒絕操作。需要修改主機上程序的權(quán)限chmod 777 /home/pub/hi。然后在目標(biāo)機端運行./hi即可。

  主機上設(shè)置時候一定要關(guān)閉防火墻,不然目標(biāo)機mount的時候沒有響應(yīng)。

  目標(biāo)機上一定要先開啟portmap服務(wù)。

  主機和板子的IP在同一個網(wǎng)段。

  如果要運行大的,在Mount的時候最好加上:

  -o rsize=1024,wsize=1024,timeo=15的參數(shù),否則多半會得到server not responsing的提示信息。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉