一种实现ISO9660文件系统的方法、系统、设备及存储介质与流程

文档序号:26559489发布日期:2021-09-08 01:15阅读:508来源:国知局
一种实现ISO9660文件系统的方法、系统、设备及存储介质与流程
一种实现iso9660文件系统的方法、系统、设备及存储介质
技术领域
1.本发明涉及计算机技术领域,尤其涉及一种实现iso9660文件系统的方法、系统、设备及存储介质。


背景技术:

2.uefi(unified extensible firmware interface,统一的可扩展固件接口)是在efi的基础上发展出来的,efi是intel为pc固件的体系结构,uefi是由efi1.10发展来的,具有开发效率高、可拓展性强、稳定性强等特点。uefi默认情况下仅支持fat系统,所以与操作系统启动相关的文件都必须放在启动设备的fat分区当中,否则uefi就无法获取到系统的启动文件,无法加载操作系统。当系统的启动文件在光盘中的时候,uefi无法直接读取系统的启动文件。
3.iso9660是由国际标准化组织iso于1985年颁布的通用光盘文件系统,目前它是得到最广泛支持的光盘文件系统,能被所有的cd

rom和操作系统识别,它定义了存储在光盘中稳健的逻辑格式以及组织目录结构,从而使光盘文件中文件数据的存放位置、目录、索引结构的组织有了统一的规范。


技术实现要素:

4.本发明提出了一种实现iso9660文件系统的方法、系统、设备及存储介质,解决了基于uefi固件无法直接读取存储在光盘中的启动文件的问题。
5.基于上述目的,本发明一方面提供了一种实现iso9660文件系统的方法,具体包括如下步骤:
6.基于uefi固件获取iso9660文件系统的驱动,并根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口;
7.通过所述接口遍历所述iso9660文件系统中的存储设备;
8.判断遍历到的所述存储设备的文件系统是否为iso9660文件系统;
9.响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议;
10.根据所述通信协议,生成所述iso9660文件系统的访问接口函数;
11.通过所述访问接口函数,获取所述iso9660文件系统的操作接口函数以实现所述iso9660文件系统。
12.在一些实施方式中,根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口,包括:
13.运行所述iso9660文件系统的驱动的入口函数;
14.将efi驱动绑定协议类型的通信协议安装到所述入口函数以生成所述iso9660文件系统的驱动的接口。
15.在一些实施方式中,判断遍历到的所述存储设备的文件系统是否为iso9660文件
系统,包括:
16.判断遍历到的所述存储设备是否有diskio protocol;
17.若有,则判断遍历到的所述存储设备中的文件系统是否为iso9660文件系统。
18.在一些实施方式中,判断遍历到的所述存储设备是否有diskio protocol,包括:
19.获取support函数;
20.使用所述support函数,判断遍历到的所述存储设备是否有diskio protocol。
21.在一些实施方式中,判断遍历到的所述存储设备的文件系统是否为iso9660文件系统,包括:
22.获取start函数;
23.使用所述start函数,判断遍历到的所述存储设备的文件系统是否为iso9660文件系统。
24.在一些实施方式中,响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议,包括:
25.响应于遍历到的所述文件系统为所述iso9660文件系统,初始化所述iso9660文件系统的驱动的全局变量,并给start函数安装efi简单文件系统协议类型的通信协议。
26.本发明另一方面,还提供了一种实现iso9660文件系统的系统,包括:
27.第一生成模块,配置为基于uefi固件获取iso9660文件系统的驱动,并根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口;
28.遍历模块,配置为通过所述接口遍历所述iso9660文件系统中的存储设备;
29.判断模块,配置为判断遍历到的所述存储设备的文件系统是否为iso9660文件系统;
30.安装模块,配置为响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议;
31.第二生成模块,配置为根据所述通信协议,生成所述iso9660文件系统的访问接口函数;
32.实现模块,配置为通过所述访问接口函数,获取所述iso9660文件系统的操作接口函数以实现所述iso9660文件系统。
33.进一步的,第一生成模块,包括:
34.运行子模块,配置为运行所述iso9660文件系统的驱动的入口函数;
35.第一生成子模块,配置为在所述入口函数上,安装efi驱动绑定协议类型的通信协议以生成所述iso9660文件系统的驱动的接口。
36.本发明又一方面,还提供了一种计算机设备,包括:
37.存储器,存储有计算机可读指令;
38.处理器,执行所述计算机可读指令以实现如上方法的步骤。
39.本发明再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
40.本发明具有以下有益技术效果:通过基于uefi固件获取iso9660文件系统的操作接口函数,解决了uefi固件无法直接读取存储在光盘中的启动文件的问题,实现了基于uefi固件的iso9660文件系统的实现。
附图说明
41.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
42.图1为本发明提供的实现iso9660文件系统的方法的一实施例的框图;
43.图2为本发明提供的实现iso9660文件系统的系统的一实施例的示意图;
44.图3为本发明提供的计算机设备的一实施例的示意图;
45.图4为本发明提供的计算机可读存储介质的一实施例的示意图。
具体实施方式
46.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
47.需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
48.基于上述目的,本发明的第一个方面,提出了一种实现iso9660文件系统的方法的实施例。如图1所示,其包括如下步骤:
49.s1、基于uefi固件获取iso9660文件系统的驱动,并根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口;
50.s2、通过所述接口遍历所述iso9660文件系统中的存储设备;
51.s3、判断遍历到的所述存储设备的文件系统是否为iso9660文件系统;
52.s4、响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议;
53.s5、根据所述通信协议,生成所述iso9660文件系统的访问接口函数;
54.s6、通过所述访问接口函数,获取所述iso9660文件系统的操作接口函数以实现所述iso9660文件系统。
55.具体的,基于uefi固件获取iso9660文件系统的驱动,并根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口;通过所述接口遍历所述iso9660文件系统中的存储设备;判断遍历到的所述存储设备的文件系统是否为iso9660文件系统;响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议;根据所述通信协议,生成所述iso9660文件系统的访问接口函数;通过所述访问接口函数,获取所述iso9660文件系统的操作接口函数以实现所述iso9660文件系统。
56.在一些实施例中,根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口,包括:
57.运行所述iso9660文件系统的驱动的入口函数;
58.将efi驱动绑定协议类型的通信协议安装到所述入口函数以生成所述iso9660文件系统的驱动的接口。
59.在一些实施例中,判断遍历到的所述存储设备的文件系统是否为iso9660文件系
统,包括:
60.判断遍历到的所述存储设备是否有diskio protocol;
61.若有,则判断遍历到的所述存储设备中的文件系统为iso9660文件系统。
62.在一些实施例中,判断遍历到的所述存储设备是否有diskio protocol,包括:
63.获取support函数;
64.使用所述support函数,判断遍历到的所述存储设备是否有diskio protocol。
65.在一些实施例中,判断遍历到的所述存储设备的文件系统是否为iso9660文件系统,包括:
66.获取start函数;
67.使用所述start函数,判断遍历到的所述存储设备的文件系统是否为iso9660文件系统。
68.在一些实施例中,响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议,包括:
69.响应于遍历到的所述文件系统为所述iso9660文件系统,初始化所述iso9660文件系统的驱动的全局变量,并给start函数安装efi简单文件系统协议类型的通信协议。
70.基于同一发明构思,根据本发明的另一个方面,如图2所示,本发明的实施例还提供了一种实现iso9660文件系统的系统,包括:
71.第一生成模块110,配置为基于uefi固件获取iso9660文件系统的驱动,并根据所述iso9660文件系统的驱动生成所述iso9660文件系统的驱动的接口;
72.遍历模块120,配置为通过所述接口遍历所述iso9660文件系统中的存储设备;
73.判断模块130,配置为判断遍历到的所述存储设备的文件系统是否为iso9660文件系统;
74.安装模块140,配置为响应于遍历到的所述文件系统为所述iso9660文件系统,为所述iso9660文件系统安装通信协议;
75.第二生成模块150,配置为根据所述通信协议,生成所述iso9660文件系统的访问接口函数;
76.实现模块160,配置为通过所述访问接口函数,获取所述iso9660文件系统的操作接口函数以实现所述iso9660文件系统。
77.根据本发明的另一个方面的一些实施例中,第一生成模块,包括:
78.运行子模块,配置为运行所述iso9660文件系统的驱动的入口函数;
79.第一生成子模块,配置为在所述入口函数上,安装efi驱动绑定协议类型的通信协议以生成所述iso9660文件系统的驱动的接口。
80.基于同一发明构思,根据本发明的另一个方面,如图3所示,本发明的实施例还提供了一种计算机设备20,在该计算机设备20中包括一个处理器210以及一个存储器220,存储器220存储有可在处理器上运行的计算机程序221,处理器210执行程序时执行如上的任一种基于项目问题的构造打包方法的步骤。
81.基于同一发明构思,根据本发明的另一个方面,如图4所示,本发明的实施例还提供了一种计算机可读存储介质30,计算机可读存储介质30存储有被处理器执行时执行如上方法的计算机程序310。
82.最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(rom)或随机存储记忆体(ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
83.以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
84.应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
85.上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
86.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
87.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1