用于数控车床的嵌入式Linux文件系统的设计与实现.pdf
《用于数控车床的嵌入式Linux文件系统的设计与实现.pdf》由会员分享,可在线阅读,更多相关《用于数控车床的嵌入式Linux文件系统的设计与实现.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 27 卷第 1 期2012 年 2 月北 京 信 息 科 技 大 学 学 报Journal of Beijing Information Science and Technology UniversityVol 27 No 1Feb 2012文 章 编 号:1674 6864(2012)01 0074 04用于数控车床的嵌入式 Linux 文件系统的设计与实现李建静(北京信息科技大学计算机学院,北京 100101)摘要:针对数控车床对系统功能、空间利用率、时间效率的需求,提出并实现了一种用于数控车床的嵌入式 Linux 文件系统。该系统以 Cramfs 为根文件系统,Yaffs 作为用户的
2、数据存储分区,用 Tmpfs 存储临时数据,采用 Initramfs 引导根文件系统。实验结果表明,系统的空间利用率高,启动时间快。关键词:嵌入式系统;linux;文件系统;数控车床中图分类号:TP 316.2文献标志码:ADesign and realization of embedded file system fornumerically controlled latheLI Jian-jing(School of Computer Science,Beijing Information Science and Technology University,Beijing 100101,C
3、hina)Abstract:Aiming at meeting requirements of numerically controlled lathe such as system function,space utilization and time efficiency,a file system of embedded Linux used for numerically controlledlathe is presented using Cramfs as root file system,Yaffs as user s data partition,Tmpfs as system
4、 stemporary data,and Initramfs as leading root file system The experiment shows that the size is smallerand boot is fasterKey words:embedded system;linux;file system;numerically controlled lathe收稿日期:2011-11-11基金项目:国家自然科学基金项目(60572088);北京市属市管高等学校人才强教计划资助项目(PHR201007131)作者简介:李建静(1984),女,山东德州人,硕士研究生,主要
5、从事嵌入式操作系统研究。0引言数控技术作为中国的高新技术之一,其水平高低直接制约着加工产业的加工效率。嵌入式数控车床控制系统的应用已成为大趋势,尤其基于嵌入式linux 的控制系统已广泛应用于工业控制领域。随着设备智能化需求的提高1,对数控车床控制系统的要求更高,如要求操作简单、断电续传、友好的操作界面等。这些增加了系统的复杂度,要求控制系统具有更好的性能。要提高控制系统的性能,一个组织良好、性能优良的文件系统起着非常重要的作用。因此实现控制系统的关键之一是设计与实现合适的文件系统,其中介质的选择、文件系统的搭建、内核与配置的文件的修改等因素都对其产生影响2 256。本文从系统的功能、系统空间
6、、时间效率的角度出发,在嵌入式linux 数 控 车 床 控 制 系 统 上 设 计 实 现 Cramfs、Initramfs、Tempfs、Yaffs 混合的文件系统方案,简称为 CITY(Cramfs、Initramfs、Tempfs、Yaffs)文件系统。1系统设计方案自顶向下的设计方法是将复杂问题逐步细化的方法,非常适合于系统的设计阶段2 256,本文设计的文件系统就是在分析控制系统的基础上,将系统逐步细化,对每个模块进行设计。1.1控制系统存储器的选择一个典型的控制系统包括 CPU、存储器和外设。其中存储器的种类将直接影响到控制系统的文件系统的性能和类型。由于数控车床控制器特殊的工作
7、环境,要求数控车床控制器必须具有抗震动、抗潮湿、抗震压的特点,而传统的硬盘与移动硬盘等存储器显然不满足这些要求。控制系统容易造成意外断电,这就要求系统存储器必须具有掉电保护功能。另外,为增加第 1 期李建静:用于数控车床的嵌入式 Linux 文件系统的设计与实现系统的灵活性需将程序系统直接固化在存储器中,常选用非易失性的 Flash 芯片作为主要的存储器,用于存放程序及主要数据。Flash 芯片一般分为Nor Flash 和 Nand Flash。Nor Flashshi 出现时间最早,具有可靠性高、随机读取速度快的优势,但是其擦除和编程速度较慢且尺寸较大;NAND Flash 是以页为单位进
8、行读写,1 页为 256 或 512 字节,具有快擦除和快编程的优势,但是随机读取速度慢。选择Nor Flash 存储应用软件代码和操作系统内核,选择Nand flash 存放数据。操作系统和操作系统内的应用程序必须被加载到内存中运行,因此内存是任何系统必不可少的存储器。图 1 所示为嵌入式数控车床控制系统存储器结构图。图 1嵌入式数控车床控制系统结构图 1 中,ARM920T 为控制系统的 CPU;SDRAM为外部扩展的 32M 内存,主要用于运行系统与程序;28F640J3A 为 NOR Flash,大小为为 8M,主要用于存放根文件系统、内核等;K9F1208 NAND 为NAND Fl
9、ash,大小为 64M,主要用于存放数据文件。1.2文件系统结构设计嵌入式 linux 数控车床控制系统中文件系统的结构遵循 FHS3 所定义的目录结构,它是基于树状结构的,本控制系统的目录结构见文献 4。按照各个目录内文件的读写权限和存在时间长短可以将其分为 3 大类型文件:临时文件、只读文件、读写并且掉电非易失型文件。1)临时文件内是系统运行过程中产生的临时数据,这些数据只是为程序的运行而临时产生,不需要掉电保护,包括/tmp。2)只读文件是一些具有只读特性的文件,不允许用户对其进行修改。如(/)根文件系统,/bin、/sbin 可执行程序,/lib 库文件。3)读写并且掉电非易失型文件,
10、是由于系统的运行和用户的操作不可以不断改变的文件,且这些文件 要 具 有 掉 电 保 护 功 能。如/var/etc、/usr 等目录。目前比较成熟的单一性文件系统虽然实现简单,并且可在某一特性上进行优化,却都只能被某一类型的文件充分利用,从而造成存储介质空间的浪费,并使系统的性能降低。由于 Linux 内核包含用于访问内存设备的 MTD(内存技术设备),MTD 支持在一块 Flash 上建立多个分区,不同分区使用不同的文件系统,同时也支持不同的 Flash 使用不同的文件系统。本控制系统的文件系统在 MTD 技术的支持下结合多种文件系统的优点采用混合文件系统方案。1.3混合文件系统组合方式选
11、择由于嵌入式控制系统工作环境恶劣,采用 Flash存放代码和数据,CPU 运算速度远低于通用计算机系统。这些有限的资源现状限制了通用文件系统(如 FAT、NTFS、EXT 等)的使用。根据图 1 可知,此控制系统采用的存储器为易失性存储器内存 SDRAM 和非易失性存储介质 NORFlash、NAND Flash,它们之上的文件系统的操作方式有很大的不同。如 NOR Flash 的读写单位是字节,而 NAND Flash 的读写单位是页,每页为 256 字节。常用 的 嵌 入 式 文 件 系 统 有 Initramfs、InitrdRAMDISK,Cramfs,Jffs2,Yaffs25 等。
12、1)RAM 上的文件系统包括 ramdisk 和 Tmpfs。ramdisk 就是在内存上划分出一块分区虚拟出一块磁盘分区,其体积无法改变,造成了内存空间的浪费。另外 linux 内核也支持 Initramfs 作为根文件系统6,Initramfs 就是 Tmpfs 文件系统的一个应用。其体积可以随内容多少改变其体积大小,提高了内存的空间利用率,同时采用 cpio 格式的压缩包,内核本身即可解压,可作为内核启动的根文件系统,可以加快系统启动的时间,同时其 switch root 命令可以快速地转化到真正的根文件系统下。本文的文件系统采用 Initramfs 作为启动时的根文件系统。2)NOR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 用于 数控车床 嵌入式 Linux 文件系统 设计 实现
限制150内