基于Linux网络文件系统(NFS)和S3C2440的Web

来源:
导读 大家好,我是本期栏目编辑小友,现在为大家讲解基于Linux网络文件系统(NFS)和S3C2440的Web问题。 随着数码相机和互联网的普及,越来越多

大家好,我是本期栏目编辑小友,现在为大家讲解基于Linux网络文件系统(NFS)和S3C2440的Web问题。

随着数码相机和互联网的普及,越来越多的家庭拥有了自己的媒体库。媒体库不仅包含自己拍摄的图像文件,还包含从网络下载的图像数据。但是显示图像数据的手段比较单一,主要是通过PC来实现。因此,未来构建以媒体库为中心的家庭多媒体网络,在各种家庭网络媒体终端上展示多媒体素材,将成为必然趋势。媒体包括Web数字相框、网络数字电视等。

Web数码相框是为了设计一款家用嵌入式网络媒体终端而提出的,但市场上常见的数码相框网络扩展性较差,因此提出这种设计方案是为了弥补这一不足,提高网络可扩展性。在此设计基础上,构建了网络数字电视等其他多功能终端实体。

1技术方案。

为了显示JPEG图像文件,Web相框需要大量的解码处理,对实时性要求很高,因此选择了低功耗、高性能的32位处理器ARM。

基于ARM920T架构的S3C2440嵌入式微处理器具有以下特点:l6/32bitARM920T内核,最高工作频率为400MHz,计算能力为440MIPS,可处理多媒体文件。因此,硬件部分采用了基于S3C2440的具有Web功能的嵌入式系统。

部分软件选用最新的Linux2.6操作系统,开源免费,可以大大降低产品的开发成本。Linux2.6操作系统遵守GPL开发原则,可以找到丰富的驱动源代码。系统还支持TCP/IP协议栈,可以有效降低开发难度,缩短开发周期。此外,与Linux2.4内核操作系统相比,Linux2.6内核具有更好的实时性和更丰富的功能,完全满足Web数码相框的设计要求。

2硬件设计。

2.1液晶界面设计。

S3C2440芯片集成了TFT LCD的驱动器(图1),因此本文采用256k色240320 TFT真彩色LCD,因此LCD接口的设计相对简单(图2)。液晶接口使用41英寸插座,包含大部分控制信号(行场扫描、时钟和使能等)。)和完整的RGB数据信号(RGB输出为8: 8: 8)。同时设计了跳线,支持不同的LCD工作电压。

2.2网络接口设计。

网络接口设计采用目前通用的DM9000芯片。该芯片是一款快速以太网控制处理器,结合了MlAC、PHY和MMU,适应10/100M网络,非常适合作为嵌入式系统的网络接口芯片。在这种设计中,地址线和数据线在S3C2440和DM9000之间多路复用。同时,DM9000的AEN端接S3C2440的nGCS4,使得DM9000的地址线IO为0x 20000000,数据IO为0x20000004。另外,Linux2.6内核支持DM9000驱动,给开发带来了极大的便利。网络接口设计如图3所示。

3软件设计。

3.1嵌入式操作系统。

目前常见的嵌入式操作系统包括WinCE、VxWorks、uC/OS-II和Linux。其中,uC/OS-II操作系统可以免费获得,但功能过于简单,实用性较差,后续开发工作非常繁重。前两种操作系统虽然功能强大,但都不是开源免费的操作系统,不适合低成本消费类电子产品。

Linux内核基于GNU通用公共许可证,即GPL。它的源代码是完全开放的,很容易移植到嵌入式系统中。Linux2.6内核已经支持ARM系列的嵌入式系统。同时有大量开源软件包可用,方便后期开发。

3.2网络文件系统(NFS)

网络文件系统(NFS)是一种通过网络将远程主机上的分区(目录)装载到本地系统的机制。通过支持网络文件系统,用户可以像操作本地分区一样,在本地系统上操作远程主机的共享分区(目录)。对于Linux系统,NFS包括两个方面:一是NFS服务器在Linux服务器端的支持;第二,嵌入式目标系统的NFS客户端支持。因此,在本设计中,配置了一台Linux PC来提供NFS服务,同时也作为多媒体网络的媒体库。嵌入式系统为网络数码相框,该设计在嵌入式Linux系统上移植了NFS客户端。借助NFS客户端Web数字相框,可以随时读取共享在媒体库的多媒体文件。

3.3的简单配置。

为了正确地从Linux服务器获取多媒体数据,需要对NFS的服务器和客户端进行简单的配置。

在服务器端,将以下内容添加到/ect/导出文件中:

/home/media 192.168.0。*(ro,同步,无根挤压)

添加的内容表明ip地址范围为192.168.0的客户端。*被允许以只读权限访问/home/media目录。

然后执行以下命令启动NFS服务:

#服务端口映射开始

nfs服务启动

对于客户端(网络数码相框),在Linux Shell下,执行以下命令装载NFS共享目录:

#mkdir/mnt/NFS

#mount-tnfs 192.168.0.20:/home/media/mnt/NFS-onolock

  客户端对本地/mnt/NFS目录里的多媒体文件进行读取并显示,相当于读取了网络服务器的/home/media目录的文件,完成了网络媒体库的共享。

  4 结束语

  以上内容叙述了基于ARM构架的嵌入式多媒体终端,同时具备了Web数码相框的基本功能。本设计的创新之处在于把Linux系统强大的网络功能和S3C2440高效的多媒体处理能力结合起来,构建了高性能、低功耗、低成本的网络多媒体终端。可以预见在不久的将来,以Web数码相框为代表的网络多媒体终端会走进千家万户。

  随着数码相机和互联网的普及,越来越多的家庭拥有自己的媒体库。媒体库中既包含有自己拍摄的影像文件,也有从网络上下载的影像资料。然而展示影像资料的手段单一,主要通过PC来实现。因此未来构建以媒体库为中心的家庭多媒体网络,把多媒体资料在各式各样的家庭网络媒体终端上展示出来,将成为一种必然的趋势。媒体终端包括Web数码相框、网络数字电视等。

  Web数码相框的提出正是为了设计一种家庭嵌入式网络媒体终端,但目前市场上常见的数码相框的网络可扩展性差,本设计方案的提出正是为了能够弥补这方面的不足,提高网络可扩展性。并在本设计方案的基础上构建网络数字电视等其他多功能终端实体。

  1 技术方案

  Web数码相框要具有JPEG图像文件显示功能,需要进行大量解码处理,且实时性要求高,因此选用低功耗、高性能的32位处理器ARM。

基于ARM920T体系结构的S3C2440嵌入式微处理器具有如下特点:l6/32bitARM920T内核,最高工作频率400MHz,运算能力为440MIPS,能够胜任多媒体文件的处理任务。所以,硬件部分采用在S3C2440基础上构建的一个具有Web功能的嵌入式系统。

  软件部分选择最新的Linux2.6操作系统,该操作系统属于开源免费的,可大大降低产品的开发成本。Linux2.6操作系统遵守GPL开发原则,可找到丰富的驱动程序源码,该系统还支持TCP/IP协议栈,可以有效降低开发难度,缩短开发周期。另外Linux2.6内核相比Linux2.4内核操作系统的实时性更好,功能也更加丰富,完全满足Web数码相框的设计要求。

  2 硬件设计

  2.1 LCD接口设计

  S3C2440芯片集成了TFT LCD的驱动器(图1),因此本文采用了256k色240×320的TFT真彩LCD,所以LCD接口的设计就相对简单(图2)。LCD接口用一个41Pin插座,包含了常见LCD所用的大部分控制信号(行场扫描、时钟和使能等),和完整的RGB数据信号(RGB输出为8:8:8)。同时还有一个跳线的设计方便支持不同的LCD工作电压。

  

  

  2.2 网络接口设计

  网络接口设计采用目前常见的DM9000芯片。该芯片是一款快速以太网控制处理器,合成了MlAC、PHY、MMU,自适应10/100M网络,非常适合作为嵌入式系统的网络接口芯片。在本设计中,S3C2440与DM9000之间采用地址线和数据线复用的方式。同时DM9000的AEN端接S3C2440的nGCS4,这样DM9000的地址线IO为Ox20000000,数据IO为0x20000004。此外Linux2.6内核支持DM9000的驱动,这样给开发带来很大的方便。网络接口设计如图3所示。

  

  3 软件设计

  3.1 嵌入式操作系统

  目前常见的嵌入式操作系统包括:WinCE、VxWorks、uC/OS-II和Linux。其中uC/OS-II操作系统虽然可以免费获得,但功能过于简单,实用性较差,后续开发工作量很大。而前两种操作系统虽然功能较强,但不属于开源免费的操作系统,不适用于低成本的消费类电子产品。

  Linux内核是基于GNU通用公共许可,也就是GPL。它的源代码完全开放,也很容易移植到嵌入式系统中,Linux2.6的内核对ARM系列的嵌入式系统已经有了很好的支持。同时有大量的开源软件包可供使用,方便了后期开发。

  3.2 网络文件系统(NFS)

  网络文件系统(NFS)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作。对于Linux系统来说NFS包括两方面:一是Linux服务器端的NFS服务器支持;二是嵌入式目标系统的NFS客户端的支持。因此,在本设计中配置了一台Linux的PC机来提供NFS服务,同时它也作为多媒体网络的媒体库。嵌入式目标系统是Web数码相框,本设计在其嵌入式Linux系统上移植了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目录。

  然后执行如下命令,启动NFS服务:

  #service portmap start

  #service nfs start

  对于客户端(Web数码相框),在Linux Shell下,执行如下命令来进行NFS共享目录的挂载:

  #mkdir/mnt/NFS

  #mount-tnfs 192.168.0.20:/home/media/mnt/NFS-onolock

  客户端对本地/mnt/NFS目录里的多媒体文件进行读取并显示,相当于读取了网络服务器的/home/media目录的文件,完成了网络媒体库的共享。

  4 结束语

  以上内容叙述了基于ARM构架的嵌入式多媒体终端,同时具备了Web数码相框的基本功能。本设计的创新之处在于把Linux系统强大的网络功能和S3C2440高效的多媒体处理能力结合起来,构建了高性能、低功耗、低成本的网络多媒体终端。可以预见在不久的将来,以Web数码相框为代表的网络多媒体终端会走进千家万户。

技术专区 Alexa语音服务软件扩展STM32Cube 结合DNN API驱动未来神经网络应用的解决方案 针对于高端移动通信和汽车市场的四集群设计 一款基于帧捕捉的开源图形调试器应用设计 即将成为标准配置的最新安全技术:后视摄像系统

标签:

版权声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢您的支持与理解。