一种基于分区操作系统架构的文件管理系统和方法
文献发布时间:2023-06-19 10:02:03
技术领域
本发明属于计算机系统软件技术领域,具体涉及一种基于分区操作系统架构的文件管理系统和方法。
背景技术
分区文件系统应确保分区数据的隔离及共享数据的访问。而且在设计时应该确保分区文件操作并行,文件读写并行。传统的文件系统仅能确保写互斥或者多分区读操作,关于写操作的同时进行读操作是不被允许的。分区操作系统(POS)涉及多分区并行操作,如何解决文件系统的数据隔离与共享,并确保多分区文件数据的并行访问(单分区写、多分区读)是亟需解决的问题。
发明内容
本发明提供一种基于分区操作系统架构的文件管理系统和方法,解决面向分区操作系统的文件系统面临的文件安全并行访问问题。
本发明一方面提供一种基于分区操作系统架构的文件管理系统,所述分区操作系统架构包括:核心操作系统和至少一个应用分区;其中,
各应用分区包括:用户应用和分区操作系统,所述用户应用运行在所述分区操作系统上;
各所述分区操作系统中均包括文件系统,文件系统管理至少一个逻辑盘;
第一应用分区的文件系统挂载有第二应用分区的逻辑盘,对所述第二应用分区的至少一个逻辑盘只具有读权限;
所述第一应用分区和所述第二应用分区为至少一个应用分区中的应用分区,所述第一应用分区对所述第二应用分区具有读数据需求。
可选的,所述第一应用分区的文件系统在接收到对挂载的第二应用分区的逻辑盘的访问请求时,向核心操作系统确定所述挂载的第二应用分区的逻辑盘是否存在更新;
若不存在,则根据所述访问请求,从所述挂载的第二应用分区的逻辑盘的读缓冲区中进行读操作;
若存在,则根据所述访问请求,从所述挂载的第二应用分区的逻辑盘所对应的物理设备区域中进行读操作。
可选的,所述文件系统在接收到写请求时,所述文件系统根据所述写请求,在写缓冲区中完成写操作;
所述写缓冲区的更新为异地更新。
可选的,所述第一应用分区和所述第二应用分区具有相同的文件系统。
可选的,所述用户应用通过ARINC653 PART2标准的文件系统分区安全访问接口(P2接口)向文件系统发送请求。
本发明另一方面提供一种基于分区操作系统架构的文件管理方法,应用于如上述一方面中任一项所述的文件管理系统;所述方法包括:
所述文件系统在接收到访问请求时,根据所述访问请求携带的待访问逻辑盘以及请求操作,确定是否存在权限;
若存在,则执行;若不存在,则拒绝执行。
可选的,在所述第一应用分区的文件系统接收到对挂载的第二应用分区的逻辑盘的访问请求时;在所述访问请求携带的请求操作为读操作时,确定存在权限;在所述访问请求携带的请求操作为写操作时,确定不存在权限。
可选的,所述文件管理方法还包括:
所述第一应用分区的文件系统在接收到对挂载的第二应用分区的逻辑盘的访问请求时,向核心操作系统确定所述挂载的第二应用分区的逻辑盘是否存在更新;
若不存在,则根据所述访问请求,从所述挂载的第二应用分区的逻辑盘的读缓冲区中进行读操作;
若存在,则根据所述访问请求,从所述挂载的第二应用分区的逻辑盘所对应的物理设备区域中进行读操作。
可选的,所述文件管理方法还包括:
所述文件系统在接收到写请求时,所述文件系统根据所述写请求,在写缓冲区中完成写操作;其中,所述写缓冲区的更新为异地更新。
可选的,所述第一应用分区和所述第二应用分区具有相同的文件系统。
本发明提供一种基于分区操作系统架构的文件管理系统和方法,分区操作系统架构包括:核心操作系统和至少一个应用分区;其中,各应用分区包括:用户应用和分区操作系统,用户应用运行在分区操作系统上;各分区操作系统中均包括文件系统,文件系统管理至少一个逻辑盘;第一应用分区的文件系统挂载有第二应用分区的逻辑盘,对第二应用分区的至少一个逻辑盘只具有读权限;第一应用分区和第二应用分区为至少一个应用分区中的应用分区,第一应用分区对第二应用分区具有读数据需求。可解决分区文件系统面临的文件安全并行访问问题。
附图说明
图1分区文件系统结构示意图;
图2分区并行读写操作示意图;
图3分区文件操作执行流程示意图。
具体实施方式
为进一步明确本发明的实施方式,结合附图对具体实施方式进行进一步举例说明。
下面结合附图,对本发明提供的一种基于分区操作系统架构的文件管理系统和方法进行解释说明。
参照图1-3,本发明提供一种基于分区操作系统架构的文件管理系统和方法,包括以下步骤:
S1、文件系统放在应用分区,每个应用分区维护一个文件系统,确保分区数据的隔离。
其中,每个应用分区有一个分区操作系统(POS),为分区提供操作系统服务,各应用分区分别设置一个自己的文件系统可以实现分区数据的隔离安全,每个应用分区一个独立的文件系统,文件系统将设备划分为多个逻辑盘进行管理,每个应用分区分配自身所属的至少一个逻辑盘,在多个逻辑盘中,可以配置至少一个有共享需求的逻辑盘,有共享需求的逻辑盘可以允许其他分区读。在设备数据无共享需求时,各自处理自身针对所属逻辑盘的分区文件请求。有共享需求时,则执行针对共享需求的逻辑盘的文件请求。
可以理解的是,读取当前分区的有共享需求的逻辑盘的分区的文件系统,需要与当前分区的文件系统一致。
S2、共享分区间通过状态传递确保数据的一致性。
根据S1构建的文件系统架构,在分区间有共享数据请求时,允许只能对别的分区中共享数据请求所涉及的逻辑盘具备读权限(也即对共享数据请求未涉及的逻辑盘不具备读权限,而且,对所有的逻辑盘均不具备写权限,文件系统将存储设备划分为多个逻辑盘进行独立管理)。
在共享别的分区的逻辑盘时,需要共享的分区首先应挂载相同的文件系统,应将待共享的逻辑盘在本分区挂载为只读模式。
各分区具备自身独立的文件系统缓冲,会引起分区共享数据的不一致性,为了确保各分区读取数据的一致性,分区间以写状态通知的形式进行分区通信。
S3、文件系统将读写管理分离,读写缓冲分离,确保读写操作的并行。
为了保证读写的并行访问,文件系统应该保证执行读写操作时,文件系统的分支管理是相对隔离的,是彼此不受影响的,写操作的失败不会影响读操作,写操作的同时支持读操作。为此文件系统从逻辑层采用读管理和写管理分别对读写分支进行管理。将读写管理,读写缓冲分离,确保写操作的同时可以执行读操作,以此确保读写操作的并行。
S4、应用分区通过P2接口执行安全文件操作。
P2接口是一套满足ARINC653 PART2标准的文件系统分区安全访问接口,分区间通过P2接口执行文件操作,在分区内根据访问权限执行分区间的安全访问检查,未通过权限检查直接返错,通过权限检查的则通过本分区文件系统执行文件操作。
S5、分区文件操作执行流程。
独占设备,分区执行读写操作请求时,各分区首先对逻辑盘的访问权限进行判断,不具备权限的直接返回,具备权限的直接由本分区文件系统进行数据管理。
共享设备,分区在执行读写操作请求时,各分区首先对逻辑盘的访问权限进行判断,不具备权限的直接返回,具备权限的分区在读共享别的分区逻辑盘时,会查询所属卷的写状态,若写状态改变,则直接从设备中读取共享数据,若写状态未改变,则从本分区的缓冲中读取共享数据。
文件系统读写并行流程:分区间有共享数据请求时,有一个进程执行写操作,其他进程执行读操作,此时在执行写操作时提供对写缓冲的访问,执行读操作时提供对读缓冲的访问。在执行写操作时,写事务日志,并将更新内容写到新分配的物理块中,在原子操作结束,提交事务状态后,将写缓冲根节点的指针赋值给读管理树根节点指针,即更新读管理树。两棵树缓冲独立,确保读写操作的并行。
使用本发明所述的一种针对分区操作系统的文件系统安全访问架构的具体工作步骤:
步骤1、文件系统放在各应用分区,每个分区有自己相对独立的文件系统;
步骤2、共享分区间通过状态传递确保共享数据的一致性;
步骤3、文件系统通过读写管理分离,读写缓冲分离确保读写操作的并行。
步骤4、应用分区通过满足ARINC653 PART2标准的P2安全访问接口执行文件操作。
步骤5、根据分区文件操作执行流程执行文件操作。
- 一种基于分区操作系统架构的文件管理系统和方法
- 一种基于分区操作系统的虚拟化权限控制通信方法