1.4 网络编程实验
实现典型的客户机/服务器程序。客户机、服务器模式要求每个应用程序应由两部分组成:一个部分负责启动通信,另一个部分负责对它进行应答。他们通常运行在不同的主机上,分别被称为客户机和服务器。服务器是指能在网络上可提供服务的任何程序。客户机是指用户为了得到某种服务所需要运行的应用程序。一个服务器接受网络上客户机的请求,完成服务后将结果返回给客户机。
2 嵌入式Linux硬件平台的搭建
2.1 linux 引导程序
嵌入式linux引导程序一般选用u-boot,全称Universal Boot Loader ,是遵循GPL条款的开放源码项目。首先设置拨码开关配置ARM11从SD卡中读取u-boot,再通过超级终端,将读取到的u-boot拷贝到ARM11板载的NAND Flash中,再设置启动方式配置ARM11从Flash中启动,至此,完成嵌入式linux在ARM11平台下引导程序的加载。
2.2 linux 内核
完成u-boot的加载后,内核文件可以直接通过超级终端从PC中传输到
2.3 嵌入式Linux 文件系统
嵌入式Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。常用的文件系统为yaffs2文件系统和cramfs文件系统。Yaffs是第一个专门为Nandflash存储器设计的嵌入式文件系统,适用于大容量的存储设备,并且是在GPL协议下发布的。Cramfs文件系统是专门为NorFlash设计的只读压缩的文件系统,采用实时解压缩方式,小巧且快速。
3 结束语
基于ARM11在Linux平台下网络通信程序的流程图总结如图2所示。
本文就目前对于嵌入式linux及其网络通信进行阐述,以嵌入式为知识背景,该设计主要由六个过程(NFS、交叉编译器、网络编程实验、linux引导程序、linux内核、嵌入式Linux文件系统)组成。其他嵌入式Linux应用程序的编写过程也与此类似。