本发明专利技术所提供的是一种保护文件系统互斥访问与复位的实现方法,其中,在文件系统中增加一文件代理进程,通过向所述文件代理进程发送同步调用信息实现对文件系统进行操作;通过互斥保护模块和复位保护模块进行互斥访问和复位操作。本发明专利技术方法由于在现有的文件系统模型中增加了一文件代理进程,这样就大大减低了文件系统的故障率,从而大大提高了文件系统的稳定性,方便了用户的操作。
【技术实现步骤摘要】
本专利技术涉及保护文件系统的
,尤其涉及到一种保护文件系统互 斥访问与复位的方法。
技术介绍
目前在嵌入式系统开发过程中,经常出现保存在Flash (Flash: —种可 快速擦写的信息储存介质)中的版本文件丟失或者被破坏的现象,这类故 障大多由硬件Flash的稳定性和软件层保护性代码不完整造成的,这样就给 用户带来了很大的不便,并且容易给客户带来巨大的经济损失。目前科学技术飞速发展,Flash的应用越来越广泛,大大提高了用户开 发系统的效率,但是在访问与复位时Flash容易发生丢失文件等现象,大大 减低了其实用性,给用户带来了麻烦。总之,在现有技术条件下,Flash经常出现丢失文件或者文件被破坏等 故障导致数据丟失,同时也给用户带来了经济损失。因此需要提供一种新 的文件系统,以减少Flash的故障,保护用户的利益。
技术实现思路
本专利技术要解决的技术问题是提供一种保护文件系统互斥访问与复位的 实现方法,建立新的文件系统模型,以降低文件系统的故障率,实现对文 件系统互斥访问与复位的保护。为解决上述技术问题,本专利技术的技术方案包括,其包括以下步骤4A、 在文件系统中增加一文件代理进程,通过向所述文件代理进程发送 同步调用信息实现对文件系统进行操作;B、 通过互斥保护模块和复位保护模块进行互斥访问和复位操作。 所述的实现方法,其中,所述步骤A中,所述文件代理进程在执行对文件系统的操作时,执行以下步骤Al、查询全局标志,若返回值为是,则正常执行所述文件系统的操作; 否则停止对所述文件系统的操作。所述的实现方法,其中,所述步骤B中的复位保护模块执行操作包括 所述文件系统中活动的文件描述符的搜索和关闭,与所述文件系统复位相 关信息的获取与解析,以及所述文件系统复位保护是否已启动的查询。所述的实现方法,其中,所述步骤B中的复位操作还包括以下步骤Bl、设置一看门狗程序,并喂狗;B2、设置所述全局标志,阻止所述文件代理进程对所述文件系统的操作;B3、设置所述看门狗程序的倒计时计数器,确保单板预定时间后能正 常复位。所述的实现方法,其中,所述步骤B还包括B4、查询所述文件系统中所有活动的文件描述符,保存与所述文件描 述符相对应的文件信息到黑匣子中,供单板下一次上电后的业务层查询;B5、关闭所述文件系统所有活动的文件描述符,完成文件系统的复位 保护。所述的实现方法,其中,所述文件系统的复位操作占用高端内存空间在 读写后使用内存刷新函数保证数据在复位前后的一致。所述的实现方法,其中,所述步骤B中的互斥访问为由所述文件代 理进程控制使上层软件对文件系统的各操作之间串行化。本专利技术所提供的,由于在现有的文件系统;漠型中增加了 一文件代理进程,用于对Flash的互斥访问和 复位操作进行保护,这样就大大减低了文件系统的故障率,从而大大提高 了文件系统的稳定性,方便了用户的操作。附图说明图1为本专利技术的互斥访问文件系统时文件代理进程处理流程图; 图2为本专利技术的文件系统复位保护流程图。具体实施例方式以下结合附图,将对本专利技术的各较佳实施例进行较为详细的说明。 本专利技术要的提供是,建立新的文件系统模型,以降低文件系统的故障率,实现对文件系统互斥访问与复位的保护。本专利技术的方法在软件方面通过对Flash的互斥访问和复位操作进行保 护,能够在单板复位前检查对所述文件系统的操作是否结水,若对所述文 件系统的操作尚未结束则等待其结束,或者关闭文件,并上报异常。本发 明的方法对文件互斥访问方面进行保护,避免由于所述文件系统不可重入 导致的一系列问题。本专利技术的方法中引入一个文件代理进程为Agentjproc,所述文件代理进 程启动后,所有进程对Flash文件的操作就变成了给所述文件代理进程发同 步调用消息来进行如图1所示,这就在应用层保证了文件操作的串行性, 实现了 open、 write、 read、 seek、 close、 rename等六个文件才乘作函数的互 斥。本专利技术的方法还通过互斥保护模块和复位保护模块进行互斥访问和复 位操作,从而大大提高了 Flash文件的稳定性与安全性。按照本专利技术的方法 在有文件系统的模块上注册所述文件代理进程即可实现上述功能。本专利技术的方法中所述文件代理进程执行所述文件系统操作前先调用6BTS函数(BspTellFsAccessability :基站收发信才几)查询全局标志 g_ulBspFsAccessableFlag,检测所述文件系统是否可用,如果得到返回值等 于OK才正常执行所述文件系统操作,否则不对所述文件系统进行任何操 作。如图1所示,本专利技术中引入文件代理进程,使上层软件对文件系统的 read、 write、 create等操作之间串行化,使"文件原子操作"之间实现互斥。 当其他程序访问所述文件系统时,给所述文件代理进程加电并发送同步调 用信息,所述文件代理进程调用BTS函数对所述文件系统进行检测,若检 测到所述文件系统可用,则正常执行所述文件系统操作;若;f企测到所述文 件系统有错误,则停止对文件系统的访问。本专利技术方法中还有一所述复位保护模块,所述复位保护才莫块用于在软件 调用复位函数主动复位单板时,通过搜索本地文件系统的文件描述符fd, 找到所述复位函数执行时仍然处于打开状态的所述fd,保存这些所述fd对 应的文件信息并尝试关闭这些所述fd对应的文件,实现单板复位时的文件 系统保护。所述复位保护才莫块包括所述文件系统中活动所述fd的搜索和关 闭、与所述文件系统复位相关信息的获取与解析以及所述文件系统复位保 护是否已启动的查询等三部分。如图2所示,本专利技术方法中所述复位保护模块由一个在所述复位函数开 始处执行的固定流程实现,包括信息保存、文件保护,所述固定流程包括 以下步骤Bl、设置一看门狗程序,并喂狗;B2、设置所述全局标志,阻止所述文件代理进程对所述文件系统的操作;B3、设置所述看门狗程序的倒计时计数器,确保单板预定时间后能正 常复位。B4、查询所述文件系统中所有活动的文件描述符,保存与所述文件描述符相对应的文件信息到黑匣子中,供单板下一次上电后的业务层查询;B5、关闭所述文件系统所有活动的文件描述符,完成文件系统的复位 保护。所述文件系统的所述复位保护模块运行时约占用高端内存的前lk空间。 这段内存不保证是内存一致的,所以对所述文件系统读写后需要使用内存 刷新的函数保证数据在复位前后的一致性。本专利技术方法在3G系统中的应用,在3G系统中CCM单板(Communication Control Module:通信控制模块)上带有Flash芯片用于存放主控板与受控 板的版本文件,RSP层(Running Support Part: OSS运行支持部分)调用所 述复位函数主动复位单板时,通过搜索本地文件系统所述fd的方式,找到B 所述复位函数执行时仍处于打开状态的所述fd,保存这些所述fd对应的文 件信息并尝试关闭这些所述fd对应的文件,实现单板复位时的文件系统保 护。采用本专利技术方法,有效实现对所述文件系统的互斥才喿作与复位保护,尽 可能避免由于对所述文件系统的不当操作所带来的不良影响,这样就大大 减低了文件系统的故障率,从而大大提高了文件系统的稳定性,方便了用 户的操作。应当理解的是,上述针对较佳实施例的描本文档来自技高网...
【技术保护点】
一种保护文件系统互斥访问与复位的实现方法,其包括以下步骤: A、在文件系统中增加一文件代理进程,通过向所述文件代理进程发送同步调用信息实现对文件系统进行操作; B、通过互斥保护模块和复位保护模块进行互斥访问和复位操作。
【技术特征摘要】
【专利技术属性】
技术研发人员:贾亚勤,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。