首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心理工论文电子通信
   AT24C512中数据的文件系统化管理      ★★★ 【字体: 】  
AT24C512中数据的文件系统化管理
收集整理:佚名    来源:本站整理  时间:2009-01-10 22:31:51   点击数:[]    

。把这些记录项对应的页面连接起来就构成了一个文件的完整数据。

另外,如果记录项的内容为0EEEEH,表示其对应的数据页未分配。

(3)目录区

目录区用来存储文件的主要信息。根据这些信息可以知道文件名、文件生成的日期以及文件的数据在数据区中的存储首地址。文件目录项的结构如下:

①文件名。文件名由4字节双BCD码构成,在生成该文件时由键盘输入数字(硬件上键盘只提供了数字键)作为文件名,并由程序自动把它们转换成双BCD码。在需要显示时,再把它们分解成8字节单BCD码供显示。

②文件生成日期。占用4字节,按照双BCD码的格式存储,如20H、04H,03H、20H则表示2004年3月20日。日期可由键盘输入或通过时钟芯片获取。

③文件首地址。指示在给该文件分配空间进,分配给它的第一个数据页的序号,即它对应的链表的第一个记录项的编号。

目录区共占用24页。由于每个文件信息只占用10字节,则在此文件系统中,最多可存储153(24×64/10)个文件。目录区、页面分配区和数据区的逻辑关系如图3所示。

以图3为例,说明该文件系统如何获取文件数据:

①在目录区中根据文件名找到包含该文件名的目录项,从而获取该文件的属性及其首地址。如文件“00000103”的日期为2003年11月24日,其首地址为0005H。

②根据文件的首地址,在页面分配区中找到该记录项0005H。在该记录项中存储的值为0007H,可知该文件的下一记录项为0007H。

③同理,可得到文件的后续记录项为0008H、0009H、000BH,直到从000BH记录项中读到0FFFFH。此时表示这是最后一项,不需再继续找后继项了。

④至此,可知文件“00000103”的数据分为5部分存储在数据区中,分别存储在0005H、0007H、0008H、0009H、000BH页中。只要按序到数据中读取这些中的数据,并连接起来,就形成了该文件的全部数据。

⑤同理,文件“00000001”在数据区中使用了0002H和0003H两页,文件“00015671”只使用了数据区第000AH页。

3 系统程序设计

按照上述的文件系统结构,系统可通过目录区和页面分配区对AT24C512的全部数据实时文件化管理。在管理过程中,最主要的操作是添加文件和删除文件。

(1)添加文件

添加文件的主要工作是为新文件寻找存储空间,其寻找步骤如下:

①在目录区中寻找空位置。若目录区已经存满(最多存153个文件),则向用户报告并中止程序;否则,记录该位置(记为MyFile)。

②计算文件数据需占用的页面数,记为My Page。

③在页面分配区中寻找并统计标志为空的记录项,其内容为0EEEEH。若其数目小于MyPage,则向用户报告,并中止程序。

④在MyFileA位置填写文件名和日期,并把找到的第一个空记录项的序号填入,作为该文件的首地址。

⑤依次在找到的空记录项内填入下一空记录项的序号,最后一个空记录项填入0FFFFH。

⑥从文件首地址开始,按照文件链表依次把数据写入数据区相应的页。

(2)删除文件

删除文件的主要工作是回收该文件所占用的空间,以便将来分配给其它文件。

①在目录区中寻找到该文件,提取出其首地址,记录First。随后,把该文件所占用的目录区的首字节清为0FFH,表示该目录项空闲。

②在页面分配区中找到First记录项,撮出其内容,记为Next。随后,把First记录项的内容改写为0EEEEH。

③First=Next,重复②,直至Next=0FFFFH。

图3

    由添加文件可以看出,在搜索空间时,只对目录区和页面分配区操作,因此,删除文件时,只需要释放目录和页面分配区即可,而不需要修改数据区。这大大提高了删除的效率。

(3)系统格式化

系统格式化的目的是把AT24C512按照前面所述的格式进行初始化,以正确反映目前的使用状况。格式化的主要工作包括:

①把目录区全部写为0FFH,以清空目录区中所有数据;

②把页面分配区的所有记录项写为0EEEEH,标志它们全部未使用。

注:文件系统程序源代码见网站:www.dpj.com.com。

4 性能比较

在大多数系统中,AT24C512中的数据存储都是要用顺序存储法:每次存储数据时都是按照先后顺序依次写入数据空间。本文所述方法与顺序存储法相比,具有下列优点:

①存储时操作简单。在顺序存储中,寻找空闲空间需要逐次读出已经存储的数据,直到找到空闲空间为止,数据操作量大。本文所述方法只需要读取目录区和页面分配区即可,搜索空闲空间的效率高。

②删除数据简单。在顺序存储中,为了定位到需要删除的数据,必须逐次读出存储的数据,直到找到需要删除物数据,再把该空闲改写为未用状态。本文所述方法只需要修改目录区和页面分配区即可,不仅定位数据快,而且修改的工作量很小。

③实现了数据空间的回收。顺序存储法中,在删除的某次数据后,该数据所占用的空间可能无法回收使用。因为回收的空间会形成碎片:该空间前后都存储有数据,但该空间的长度无法满足一个更大长度的数据。本文所述方法利用链表分配存储空间,允许一个文件的数据非连续在座,回收的空间可以自由使用。

④通过读取目录区,用户可以大致知道该文件中存储的是什么数据,而顺序存储法却无法提供这些信息。

5 结论

为了实现实时测控系统数据的高效管理,按照PC机文件系统的思想,对测控系统中的AT24C512设计了一个简单的文件系统,包括系统格式化、添加文件、删除文件等功能,在大数据量的测控系统中得到了成功应用。该文件系统稍加修改就可应用于不同容量的存储芯片,具有广泛的应用价值。



上一页  [1] [2] 


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:基于GPS的时标系统实现方法探究

  • 下一篇文章:基于MC9S12微控制器的发动机高能直接点火控制
  • 返回上一页】【打 印】【关闭窗口
    中查找“AT24C512中数据的文件系统化管理”更多相关内容 5VAR论文频道
    中查找“AT24C512中数据的文件系统化管理”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››嵌入式系统的通信规约管理平台设计...
  • ››一种基于七号信令的局间话单采集系...
  • ››对于变频器的制动技术分析
  • ››电子文件管理元数据宏观结构多维分...
  • ››浅论卫星电视接收机的常见故障的检...
  • ››信息时代网络用户信息检索焦虑的心...
  • ››论GIS在高校房产管理中的实际应用
  • ››关于电力通信发展战略的思考 金李莎...
  • ››2G、3G切换精细化优化分析思路探讨...
  • ››光纤自动化生产的需求与时机
  • ››AT24C512中数据的文件系统化管理
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .