基于Linux NFS的Web數碼相框設計基于Linux NFS的Web數碼相框設計
2.2 網絡接口設計
網絡接口設計采用目前常見的DM9000芯片。該芯片是一款快速以太網控制處理器,合成了MlAC、PHY、MMU,自適應10/100M網絡,非常適合作為嵌入式系統(tǒng)的網絡接口芯片。在本設計中,S3C2440與DM9000之間采用地址線和數據線復用的方式。同時DM9000的AEN端接S3C2440的nGCS4,這樣DM9000的地址線IO為Ox20000000,數據IO為0x20000004。此外Linux2.6內核支持DM9000的驅動,這樣給開發(fā)帶來很大的方便。網絡接口設計如圖3所示。
3 軟件設計
3.1 嵌入式操作系統(tǒng)
目前常見的嵌入式操作系統(tǒng)包括:WinCE、VxWorks、uC/OS-II和Linux。其中uC/OS-II操作系統(tǒng)雖然可以免費獲得,但功能過于簡單,實用性較差,后續(xù)開發(fā)工作量很大。而前兩種操作系統(tǒng)雖然功能較強,但不屬于開源免費的操作系統(tǒng),不適用于低成本的消費類電子產品。
Linux內核是基于GNU通用公共許可,也就是GPL。它的源代碼完全開放,也很容易移植到嵌入式系統(tǒng)中,Linux2.6的內核對ARM系列的嵌入式系統(tǒng)已經有了很好的支持。同時有大量的開源軟件包可供使用,方便了后期開發(fā)。
3.2 網絡文件系統(tǒng)(NFS)
網絡文件系統(tǒng)(NFS)是一種將遠程主機上的分區(qū)(目錄)經網絡掛載到本地系統(tǒng)的一種機制,通過對網絡文件系統(tǒng)的支持,用戶可以在本地系統(tǒng)上像操作本地分區(qū)一樣來對遠程主機的共享分區(qū)(目錄)進行操作。對于Linux系統(tǒng)來說NFS包括兩方面:一是Linux服務器端的NFS服務器支持;二是嵌入式目標系統(tǒng)的NFS客戶端的支持。因此,在本設計中配置了一臺Linux的PC機來提供NFS服務,同時它也作為多媒體網絡的媒體庫。嵌入式目標系統(tǒng)是Web數碼相框,本設計在其嵌入式Linux系統(tǒng)上移植了NFS客戶端。借助NFS客戶端Web數碼相框能隨時讀取媒體庫中共享出來的多媒體文件。
3.3 NFS的簡單配置
為了使Web數碼相框能夠正確地從Linux服務器上取得多媒體資料,要列NFS的服務器端和客戶端作簡要的配置。
對于服務器端,為/ect/export文件添加如下內容:
/home/media 192.168.0.*(ro,sync,no_root_squash)
添加的內容表示:允許ip地址范圍在192.168.0.*的客戶端以只讀的權限來訪問/home/media目錄。
然后執(zhí)行如下命令,啟動NFS服務:
#service portmap start
#service nfs start
對于客戶端(Web數碼相框),在Linux Shell下,執(zhí)行如下命令來進行NFS共享目錄的掛載:
#mkdir/mnt/NFS
#mount-tnfs 192.168.0.20:/home/media/mnt/NFS-onolock
客戶端對本地/mnt/NFS目錄里的多媒體文件進行讀取并顯示,相當于讀取了網絡服務器的/home/media目錄的文件,完成了網絡媒體庫的共享。
4 結束語
以上內容敘述了基于ARM構架的嵌入式多媒體終端,同時具備了Web數碼相框的基本功能。本設計的創(chuàng)新之處在于把Linux系統(tǒng)強大的網絡功能和S3C2440高效的多媒體處理能力結合起來,構建了高性能、低功耗、低成本的網絡多媒體終端??梢灶A見在不久的將來,以Web數碼相框為代表的網絡多媒體終端會走進千家萬戶。
評論