霍尼韦尔51402083-400
霍尼韦尔51402083-400
霍尼韦尔51402083-400
-------------------------------------------------------------------------------------------------------------------
3.1.2嵌入式Linux的移植
由于嵌入式设备没有足够的内存和存储资源来完成编译过程,通常的方法是在主机上完成针对目标机的代码编译。这样的工具就是交叉编译工具,交叉编译工具集有专门的网站可以下载,并下载针对不同ARM处理器的Linux内核移植补丁。本系统采用Linux2.4.21的内核,采用的交叉编译工具集合为cross2.95.3。
嵌入式Linux是在标准的Linux基础上,经过适当的简化、裁剪,加入一些特定的功能,形成一个精巧、高效、满足特定应用需求的专用(定制)操作系统。它具有用户可裁剪、可配置的特点。NAS系统最重要的是存储,通过对Linux的裁剪,去掉许多通用的功能,使其成为一个专用于存储、精简、高
效的操作系统。
CirrusLogic公司已为内核写好了针对EP9315微处理器的补丁,加上这个补丁的内核就是一个能运行在基于EP9315微处理器系统上的版本,接下来就可以在此基础上进行内核的配置与编译。通过不断的配置、编译,产生合适的嵌入式Linux内核,使之在功能和大小之间取得优化的结果,以满足本系统的需要。
3.2Linux设备驱动程序开发
嵌入式系统的差异性决定了系统开发者不但需要进行特定硬件的设计,同时需要编写相关的设备驱动程序,它是内核用于完成对物理设备的控制操作的功能模块。除了CPU、内存以及其他很少的几个部分之外,所有的设备控制操作都必须由被控设备相关的代码,也就是驱动程序来完成[5]。
在Linux中,将各种设备大致分为3种基本类型:字符设备、块设备及网络设备。其中,字符设备是指采用字符流方式访问的设备,如字符终端、串口。对应的字符设备驱动的接口是标准的文件系统调用接口。
块设备是采用数据块方式访问的设备,如IDE硬盘等。由于块设备通常都提供文件系统支持,因此常用的设备访问方式是通过文件来进行的。字符设备和块设备在Linux中都被看成是一种特殊的文件,称为“设备文件”。由于每个设备都至少由文件系统中的一个文件来代表,这样的设备文件在系统中就唯一确定了对应的设备。网络设备是采用数据包传输方式访问的设备。与前两者不同,Linux采用的方法是给它们分配一个唯一的名字(比如eth0);同时,内核和网络设备驱动间的通信采用了一套与数据包传输相关的函数,如最常见的套接字(socket)接口。网络设备通过ifconfig系统调用来创建和配置。
其他的还有一些驱动程序不属于以上3类,比如USB等总线驱动。它们一般是作为内核提供的公共服务,和其他驱动联合起来使用。
3.3文件共享协议
由于NAS服务器采用Linux操作系统,客户机PC一般都是Windows系统,而Windows和Linux平台之间的文件格式是完全不同的,因此Linux不能对Windows用户直接提供基本服务。本系统通过应用SMB协议实现这种功能[6]。Samba是一套使用SMB(ServerMessageBlock)协议的应用程序,通过支持这个协议,Samba允许Linux服务器与WindowsPC机之间进行通信。本系统采用的Samba的版本为samba3.0.20b。
在开发过程中,需要在Linux服务器上进行所有的软件开发。本系统通过建立网络文件系统(NetworkFileSystem,NFS),把Linux服务器上的特定分区共享到目标系统上,实现在目标系统上操作Linux服务器和在线对程序进行调试和修改。
3.4NAS系统应用程序设计
NAS设备本身一般没有显示器、键盘、鼠标等这些与交互的外设,那么通过什么途径使系统管理员完成对这样一个“黑箱”的配置和管理呢?NAS系统应用程序的设计主要就是要实现对“黑箱”的配置和管理。基于Web(Webbased)的管理是目前在NAS系统管理中用得最多、最方便的方式之一。本系统实现的功能如下:
①硬盘管理。系统可挂载IDE、USB硬盘,支持VFAT/EXT2/EXT3文件系统,每个分区能有独立的文件系统。
②用户和组管理。支持用户和组的增加、修改、删除。一个用户可以是几个不同组的成员。
③网络配置。局域网中如果有DHCP服务器就无需设置IP地址,否则,通过超级终端,在串口控制命令行设置IP、DNS等。
④系统时间设置。系统时间可以手动设置,也可以通过NTP服务自动同步。
⑤网络共享管理。包括共享名设置、属性、共享路径、有效用户设置,是否可写操作等。
本项目基于EP9315实现了一个基本的NAS系统,加以完善就可以作为中小型用户的存储系统方案。通过本项目,便于开发者对ARM9微处理器和嵌入式开发作更深入的实践研究,推广了ARM微处理器更广泛的应用。
P0913YL
P0913YN
P0913YP
P0913YR
P0913YS
P0913YU
P0913YV
P0913YX
P0913ZB
P0913ZD
P0913ZE
P0913ZG
P0913ZR
P0913ZS
P0913ZT
P0913ZV
P0913ZW
P0913ZX
P0913ZY
P0913ZZ
P0914AK
P0914AN
P0914AR
P0914AU
P0914AX
P0914BA
P0914BF
P0914BQ
P0914BT
P0914BU
P0914BX
P0914CB
P0914CC
P0914CD
P0914CE
P0914EH
P0914EM
P0914FP
P0914FQ
P0914FU
P0914FY
P0914GB
P0914GC
P0914GE
P0914GF
P0914GY
P0914HB
P0914HE
P0914HH
P0914HL
P0914HM
P0914HN
P0914HP
P0914HQ
P0914HR
P0914HS
P0914HT
P0914HU
P0914HV
P0914HW
P0914HX
P0914HY
P0914HZ
P0914JD
P0914JE
P0914JF
P0914KP
P0914KQ
P0914KR
P0914KX
P0914LB
P0914LK
P0914LL
P0914LM
P0914LN
P0914LV
P0914LY
P0914LZ
P0914MA
P0914MB
P0914MC
P0914MD
P0914NA
P0914NB
P0914NT
P0914NU
P0914NV
P0914PD
P0914PE
P0914PF
P0914PG
P0914PH
P0914PS
P0914QB
P0914QC
P0914QG
P0914QK
P0914QN
P0914QR
P0914QU
P0914QX
P0914RA
P0914RD
P0914RG
P0914RK
P0914RN
P0914RR
P0914RU
P0914RX
P0914RY
P0914SA
P0914SD
P0914SG
P0914SK
P0914SN
P0914SQ
P0914ST
P0914SV
P0914SY
P0914TB
P0914TD
P0914TG
P0914TK
P0914TN
P0914TR
P0914TY
P0914TZ
P0914UA
P0914UH
P0914UJ
P0914UK
P0914UL
P0914VB
P0914VC
P0914VD
P0914VV
P0914WG
P0914WH
P0914WK
P0914WM
P0914WP
P0914WV
P0914XA
P0914XB
P0914XG
P0914XL
P0914XN
P0914XQ
P0914XS
P0914YM
P0914YZ
P0914ZM
P0914ZX
P0915CC
P0915CD
P0915CJ
P0915CM
P0915CQ
P0915DX
P0915FB
P0915FC
P0915FU
P0915FV
P0915FW
P0915FX
P0915GC
P0915GF
P0915GJ
P0915HD
P0915HE
P0915HM
P0915HQ
P0915HR
P0915HS
P0915HT
P0915HU
P0915HV
P0915HW
P0915HX
P0915HY
P0915JD
P0915JF
P0915JH
P0915JK
P0915JM
P0915JP
P0915JS
P0915JU
P0915JW
P0915JY
P0915KA
P0915KC
P0915KE
P0915KG
P0915KJ
P0915KL
P0915KN
P0915KQ
P0915KS
P0915KU
P0915KW
P0915KY
P0915LA
P0915LC
P0915LE
P0915LG
P0915LJ
P0915LL
P0915LN
P0915LQ
P0915LS
P0915LU
P0915LW
P0915LY
P0915MA
P0915MC
P0915ME
P0915MG
P0915MJ
P0915ML
P0915MN
P0915MQ
P0915MS
P0915MU
P0915MW
P0915MY
P0915NA
P0915NC
P0915NE
P0915NG
P0915NJ
P0915NL
P0915NN
P0915NQ
P0915NS
P0915NU
P0915NW
P0915NY
P0915PA
P0915PC
P0915PE
P0915PG
P0915PJ
P0915PL
P0915PN
P0915QF
P0915QK
P0915QL
P0915RH
P0915RJ
P0915RK
P0915RM
P0915RN
P0915RP
P0915RQ
P0915SA
P0915SB
P0915SC
P0915SD
P0915SF
P0915SG
P0915SH
P0915SJ
P0915SK
P0915SL
P0915SM
P0915SN
P0915SQ
P0915SR
P0915TA
P0915TX
P0915TY
P0915TZ
P0915UA
P0915UB
P0915UE
P0915UF
P0915VE
P0915VF
P0915VG
P0915VH
P0915VK
P0915VL
P0915VR
P0915VY
P0915WA
P0915WD
P0915WG
P0915WH
P0915WK
P0915WN
P0915WR
P0915XQ
P0915XR
P0915XS
P0915XW
P0915XX
P0915XY
P0915YC
P0915ZA
P0915ZC
P0915ZD
P0915ZF
P0915ZT
P0916AA
P0916AB
P0916AC
P0916AD
P0916AE
P0916AF
P0916AG
P0916AH
P0916AJ
P0916AK
P0916AL
P0916AM
P0916AN
P0916AP
P0916AQ
P0916AR
P0916AS
P0916AT
P0916AW
P0916AX
P0916BA
P0916BT
P0916BU
P0916BV
P0916BW
P0916BX
P0916CA
P0916CB
P0916CC
P0916CP
P0916CQ
P0916DA
P0916DB
P0916DC
P0916DD
P0916DE
P0916DF
P0916DG
P0916DH
P0916DJ
P0916DU
P0916DV
P0916DW
P0916DX
P0916DY
P0916DZ
P0916EA
P0916EB
P0916EC
P0916EN
P0916EP
P0916EQ
P0916ER
P0916ES
P0916ET
P0916EU
P0916EV
P0916EW
P0916FG
P0916FH
P0916FJ
P0916FK
P0916FL
P0916FM
P0916FN
P0916FP
P0916FQ
P0916GE
P0916GF
P0916GG
P0916GH
P0916GJ
P0916GU
P0916GV
P0916GW
P0916GX
P0916GY
P0916GZ
P0916JM
P0916JN
P0916JP
P0916JQ
P0916JR
P0916JS
P0916JT
P0916JV
P0916JW
P0916JX