CN115878204A - 一种操作系统的处理方法、装置、计算机设备和介质 - Google Patents
一种操作系统的处理方法、装置、计算机设备和介质 Download PDFInfo
- Publication number
- CN115878204A CN115878204A CN202310057980.8A CN202310057980A CN115878204A CN 115878204 A CN115878204 A CN 115878204A CN 202310057980 A CN202310057980 A CN 202310057980A CN 115878204 A CN115878204 A CN 115878204A
- Authority
- CN
- China
- Prior art keywords
- partition
- operating system
- target
- starting
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及一种操作系统的处理方法、装置、计算机设备和介质;其中,该方法包括:在终端设备的启动过程中,从非易失性存储介质中确定目标分区;基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区;从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统。本公开实施例能够对底层分区中操作系统的相关文件进行保护,且操作系统的相关文件是从底层分区中读取,因此在启动操作系统的过程中不会占用太多内存,避免增加硬件成本和操作系统启动失败的情况。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种操作系统的处理方法、装置、计算机设备和介质。
背景技术
操作系统作为计算机的基础软件,如果出现损坏或者受到攻击,会导致整个计算机无法使用。因此,操作系统的安全至关重要,需要对操作系统的文件进行保护。
现有技术中,在嵌入式领域,通常将操作系统的文件存储至非易失性存储介质中,在终端设备启动过程中,将非易失性存储介质中存储的操作系统的文件复制到内存中运行,从而启动操作系统。但是,随着软硬件技术的发展,操作系统内集成的内容越来越多,操作系统的文件的体积也越来越大,如果将操作系统的文件都复制到内存中运行,则需要提供较大的内存,增加了硬件成本。
发明内容
为了解决上述技术问题,本公开提供了一种操作系统的处理方法、装置、计算机设备和介质。
第一方面,本公开提供了一种操作系统的处理方法,包括:
在终端设备的启动过程中,从非易失性存储介质中确定目标分区;
基于所述目标分区和所述终端设备的内存,构建分层文件系统,其中,所述目标分区为所述分层文件系统的底层分区,所述内存为所述分层文件系统的上层分区;
从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统。
可选的,所述基于所述目标分区和所述终端设备的内存,构建分层文件系统,包括:
将所述目标分区的标识信息发送至初始主存磁盘Initrd;
基于所述目标分区的标识信息,通过所述Initrd,将所述标识信息对应的所述目标分区确定为所述底层分区,以及将所述内存确定为所述上层分区;
根据所述底层分区和所述上层分区,构建所述分层文件系统。
可选的,所述从非易失性存储介质中确定目标分区,包括:
通过引导程序Uboot获取所述非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数,其中,所述第一分区和所述第二分区均为所述非易失性存储介质中的分区;
当所述第一分区的启动次数小于预设阈值时,将所述第一分区确定为目标分区;
当所述第一分区的启动次数大于或等于预设阈值,且所述第二分区的启动次数小于预设阈值时,将所述第二分区确定为目标分区。
可选的,所述从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统之后,所述方法还包括:
确定所述操作系统是否启动成功;
当所述操作系统启动成功时,对所述目标分区的启动次数执行清零操作,并将清零后所述目标分区的启动次数存储至所述启动管理区中;
当所述操作系统启动失败时,更新所述目标分区的启动次数,并将更新后所述目标分区的启动次数存储至所述启动管理区中。
可选的,所述方法还包括:
当所述操作系统启动成功时,确定所述操作系统需要升级,从所述非易失性存储介质中确定备份分区;
在所述备份分区中对所述操作系统进行升级,并在所述操作系统升级成功后,将所述备份分区确定为目标分区。
可选的,所述方法还包括:
响应于修改所述相关文件中第一目标文件的操作,通过所述分层文件系统将所述第一目标文件复制至所述上层分区中,对所述上层分区中的所述第一目标文件进行修改,得到第二目标文件;
将所述第二目标文件存储至所述上层分区中。
可选的,所述操作系统为Linux操作系统。
第二方面,本公开提供了一种操作系统的处理装置,包括:
第一确定模块,用于在终端设备的启动过程中,从非易失性存储介质中确定目标分区;
构建模块,用于基于所述目标分区和所述终端设备的内存,构建分层文件系统,其中,所述目标分区为所述分层文件系统的底层分区,所述内存为所述分层文件系统的上层分区;
启动模块,用于从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统。
可选的,构建模块,具体用于:
将所述目标分区的标识信息发送至初始主存磁盘Initrd;
基于所述目标分区的标识信息,通过所述Initrd,将所述标识信息对应的所述目标分区确定为所述底层分区,以及将所述内存确定为所述上层分区;
根据所述底层分区和所述上层分区,构建所述分层文件系统。
可选的,第一确定模块,具体用于:
在终端设备的启动过程中,通过引导程序Uboot获取所述非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数,其中,所述第一分区和所述第二分区均为所述非易失性存储介质中的分区;
当所述第一分区的启动次数小于预设阈值时,将所述第一分区确定为目标分区;
当所述第一分区的启动次数大于或等于预设阈值,且所述第二分区的启动次数小于预设阈值时,将所述第二分区确定为目标分区。
可选的,上述装置还包括:
第二确定模块,具体用于:在从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统之后,确定所述操作系统是否启动成功;
清零模块,具体用于当所述操作系统启动成功时,对所述目标分区的启动次数执行清零操作,并将清零后所述目标分区的启动次数存储至所述启动管理区中;
更新模块,用于当所述操作系统启动失败时,更新所述目标分区的启动次数,并将更新后所述目标分区的启动次数存储至所述启动管理区中。
可选的,上述装置还包括:
第三确定模块,具体用于:当所述操作系统启动成功时,确定所述操作系统需要升级,从所述非易失性存储介质中确定备份分区;
升级模块,具体用于:在所述备份分区中对所述操作系统进行升级,并在所述操作系统升级成功后,将所述备份分区确定为目标分区。
可选的,上述装置还包括:
修改模块,具体用于:响应于修改所述相关文件中第一目标文件的操作,通过所述分层文件系统将所述第一目标文件复制至所述上层分区中,对所述上层分区中的所述第一目标文件进行修改,得到第二目标文件;
存储模块,具体用于:将所述第二目标文件存储至所述上层分区中。
可选的,所述操作系统为Linux操作系统。
第三方面,本公开还提供了一种计算机设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例中的任一种所述的操作系统的处理方法。
第四方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例中的任一种所述的操作系统的处理方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:在终端设备的启动过程中,从非易失性存储介质中确定目标分区;基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区;从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统,通过上述技术方案,能够对底层分区中操作系统的相关文件进行保护,且操作系统的相关文件是从底层分区中读取,因此在启动操作系统的过程中不会占用太多内存,避免增加硬件成本和操作系统启动失败的情况。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的一种操作系统的处理方法的流程示意图;
图2A是本公开实施例提供的另一种操作系统的处理方法的流程示意图;
图2B本公开实施例提供的一种非易失性存储介质中包含的区域的示意图;
图3是本公开实施例提供的一种操作系统的处理装置的结构示意图;
图4是本公开实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
图1是本公开实施例提供的一种操作系统的处理方法的流程示意图。本实施例可适用于对操作系统的启动过程进行说明的情况。本实施例方法主要应用于航天、交通或者工业等对可靠性要求较高的场景。本实施例方法可由操作系统的处理装置来执行,该装置可采用硬件/或软件的方式来实现,并可配置于计算机设备中;其中,计算机设备可以包括个人计算机、服务器或者网络设备等,可实现本申请任意实施例所述的操作系统的处理方法。如图1所示,该方法具体包括如下:
S110,在终端设备的启动过程中,从非易失性存储介质中确定目标分区。
其中,终端设备可以为安装有操作系统的终端设备。非易失性存储介质可以理解为具有断电数据不丢失功能的存储介质,例如硬盘、SD卡或者闪存Flash等,本实施例对此不做具体限定。目标分区是非易失性存储介质中的分区,能够确保目标分区中存储的文件在断电后不丢失。非易失性存储介质中可以划分至少一个数据分区,用来存储操作系统的相关文件。
具体的,在终端设备的启动过程中,例如断电后的启动或者重启等过程,为了启动操作系统,需要确定操作系统的相关文件的存储位置,即目标分区。当非易失性存储介质中划分了一个数据分区,用来存储操作系统的相关文件时,该数据分区即为目标分区;当非易失性存储介质中划分了至少两个数据分区,用来存储操作系统的相关文件时,目标分区可以为至少两个数据分区中的任意一个,目标分区的确定可以视具体情况而定,本实施例对此不做具体限定。
S120,基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区。
其中,内存是终端设备的重要部件,也称内存储器和主存储器,主要用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。优选的,分层文件系统可以为overlay文件系统。
具体的,在确定了目标分区之后,为了对目标分区中存储的文件进行保护,基于目标分区和终端设备的内存,通过操作系统具备的分层文件系统构建模块,能够构建分层文件系统。由于分层文件系统中底层分区中存储的文件仅供读取,因此,能够对目标分区中存储的文件进行保护。
S130,从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统。
其中,操作系统的相关文件可以理解为与启动操作系统相关的原始文件,即:在操作系统启动过程中,需要用到的原始文件。
具体的,底层分区中主要存储的是操作系统的相关文件,因此,在构建分层文件系统之后,基于分层文件系统的机制,在上层分区中没有文件的情况下,能够直接从分层文件系统的底层分区中读取操作系统的相关文件,通过运行这些相关文件,就能够启动操作系统,便于终端设备的正常使用。
在一些实施例中,可选的,所述操作系统为Linux操作系统。
具体的,由于Linux操作系统具备分层文件系统构建模块,因此在终端设备中安装的操作系统为Linux操作系统的情况下,有利于保证构建分层文件系统过程的顺利执行。
在本实施例中,在终端设备的启动过程中,从非易失性存储介质中确定目标分区;基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区;从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统,通过上述技术方案,能够对底层分区中操作系统的相关文件进行保护,且操作系统的相关文件是从底层分区中读取,因此在启动操作系统的过程中不会占用太多内存,避免增加硬件成本和操作系统启动失败的情况。
在一些实施例中,可选的,所述基于所述目标分区和所述终端设备的内存,构建分层文件系统,可以具体包括:
将所述目标分区的标识信息发送至初始主存磁盘Initrd;
基于所述目标分区的标识信息,通过所述Initrd,将所述标识信息对应的所述目标分区确定为所述底层分区,以及将所述内存确定为所述上层分区;
根据所述底层分区和所述上层分区,构建所述分层文件系统。
其中,目标分区的标识信息可以为编号信息、名称信息等,主要用于区别目标分区与其他分区,本实施例对此不做具体限定。Initrd可以理解为在系统引导过程中挂载的一个临时根文件系统,用来支持两阶段的引导过程,Initrd文件中包含了各种可执行程序和驱动程序。
具体的,在确定目标分区之后,将目标分区的标识信息发送至Initrd,Initrd接收到目标分区的标识信息之后,根据该标识信息能够确定目标分区,然后将该标识信息对应的目标分区确定为底层分区,以及将终端设备的内存确定为上层分区,根据底层分区和上层分区,就构建了分层文件系统。
本实施例中,通过上述过程,构建分层文件系统,简单快捷且高效。
在一些实施例中,可选的,上述方法还可以具体包括:
响应于修改所述相关文件中第一目标文件的操作,通过所述分层文件系统将所述第一目标文件复制至所述上层分区中,对所述上层分区中的所述第一目标文件进行修改,得到第二目标文件;
将所述第二目标文件存储至所述上层分区中。
其中,第一目标文件可以理解为相关文件中待修改的文件,第一目标文件可以由用户确定。
具体的,在操作系统的使用过程中,当用户想要修改相关文件中的第一目标文件时,触发修改操作,然后响应于用户触发的修改相关文件中第一目标文件的操作,通过分层文件系统将第一目标文件复制至上层分区中,对上层分区中的第一目标文件进行修改,得到第二目标文件。在得到第二目标文件之后,将第二目标文件存储至上层分区中。
本实施例中,通过上述方法对第一目标文件进行修改,内存中存储的为操作系统使用过程中产生的修改内容,在终端设备重启后,修改内容会被删除,不影响操作系统的启动,避免因为第一目标文件被修改导致操作系统启动失败的情况,同时,底层分区中存储的操作系统的相关文件保持不变,这样既能保护底层分区中操作系统的相关文件,又不会占用太多内存。
图2A是本公开实施例提供的另一种操作系统的处理方法的流程示意图。本实施例是在上述实施例的基础上进行优化。可选的,本实施例对从非易失性存储介质中确定目标分区的过程进行详细的解释说明。如图2A所示,该方法具体包括如下:
S210,在终端设备的启动过程中,通过Uboot获取非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数。
其中,引导程序(Uboot)可以理解为是用来启动操作系统内核的一段程序。第一分区和第二分区均为非易失性存储介质中的分区,且这两个分区中均存储有操作系统的相关文件。启动管理区可以理解为非易失性存储介质中划分的用于存储第一分区的启动次数和第二分区的启动次数的分区。优选的,第一分区的优先级可以高于第二分区,即:在第一分区满足条件的情况下,优先将第一分区确定为目标分区。第一分区的启动次数可以理解为从第一分区中读取操作系统的相关文件,尝试启动操作系统的次数。第二分区的启动次数可以理解为从第二分区中读取操作系统的相关文件,尝试启动操作系统的次数。
具体的,在终端设备的启动过程中,先启动Uboot,然后通过Uboot获取非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数。
S220,确定第一分区的启动次数是否小于预设阈值。
若是,执行S230;若否,执行S240。
其中,预设阈值可以为预先确定的数值,例如3,也可以视具体情况而定,本实施例对此不做具体限定。
在获取到第一分区的启动次数之后,比较第一分区的启动次数与预设阈值的大小,从而能够确定第一分区的启动次数是否小于预设阈值。
S230,将第一分区确定为目标分区。
当第一分区的启动次数小于预设阈值时,说明第一分区的启动次数还未达到上限值,此时将第一分区确定为目标分区,以便后续能够从第一分区中读取操作系统的相关文件。
S240,确定第二分区的启动次数小于预设阈值时,将第二分区确定为目标分区。
当第一分区的启动次数大于或等于预设阈值时,说明第一分区的启动次数已经达到上限值,确定第二分区的启动次数小于预设阈值时,将第二分区确定为目标分区,以便在基于第一分区,启动操作系统失败的情况下,能够从第二分区中读取操作系统的相关文件,从而启动操作系统。
S250,基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区。
具体的,若第一分区为目标分区,则第一分区为分层文件系统的底层分区;若第二分区为目标分区,则第二分区为分层文件系统的底层分区。
S260,从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统。
在本实施例中,在终端设备的启动过程中,通过Uboot获取非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数;确定第一分区的启动次数是否小于预设阈值,若第一分区的启动次数小于预设阈值,则将第一分区确定为目标分区;若第一分区的启动次数大于或等于预设阈值,则确定第二分区的启动次数小于预设阈值时,将第二分区确定为目标分区;基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区;从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统,上述技术方案中,通过在非易失性存储介质中划分两个分区,即:第一分区和第二分区,能够从而二者中确定一个分区为目标分区,并将目标分区作为底层分区,避免在第一分区或者第二分区出现问题时,导致操作系统启动失败,保证了操作系统的正常使用,同时,还能够对底层分区中操作系统的相关文件进行保护,且操作系统的相关文件是从底层分区中读取,因此在启动操作系统的过程中不会占用太多内存,避免增加硬件成本。
在一些实施例中,可选的,在所述从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统之后,上述方法还可以具体包括:
确定所述操作系统是否启动成功;
当所述操作系统启动成功时,对所述目标分区的启动次数执行清零操作,并将清零后所述目标分区的启动次数存储至所述启动管理区中;
当所述操作系统启动失败时,更新所述目标分区的启动次数,并将更新后所述目标分区的启动次数存储至所述启动管理区中。
具体的,在启动操作系统之后,确定该操作系统是否启动成功。如果操作系统启动成功,则对目标分区的启动次数执行清零操作,并将清零后目标分区的启动次数存储至启动管理区中;如果操作系统启动失败则,更新目标分区的启动次数,即:将目标分区的原始启动次数加1,得到更新后的目标分区的启动次数,并将更新后目标分区的启动次数存储至所述启动管理区中。
本实施例中,在操作系统启动失败时,对目标分区的启动次数执行加1操作,能够统计基于目标分区启动操作系统的启动失败次数,便于后续在启动失败次数大于或等于预设阈值时,切换目标分区,保证操作系统的顺利启动;在操作系统启动成功时,对目标分区的启动次数执行清零操作,便于后续确定目标分区。
在一些实施例中,可选的,上述方法还可以具体包括:
当所述操作系统启动成功时,确定所述操作系统需要升级,从所述非易失性存储介质中确定备份分区;
在所述备份分区中对所述操作系统进行升级,并在所述操作系统升级成功后,将所述备份分区确定为目标分区。
其中,备份分区可以理解为在非易失性存储介质中划分了至少两个数据分区,用来存储操作系统的相关文件时,在将其中一个数据分区确定为目标分区的情况下,从其余的数据分区中确定的一个数据分区。
具体的,在操作系统启动成功时,如果确定操作系统需要升级,则需要对操作系统执行升级操作,此时从非易失性存储介质中确定备份分区,其中备份分区和目标分区为不同的分区。然后在备份分区中对操作系统进行升级,并在操作系统升级成功后,将备份分区确定为目标分区。
本实施例中,通过在备份分区中对操作系统进行升级,即使出现升级中断或者某一分区被破坏,依然还有目标分区可以使用。当操作系统升级成功后,将备份分区确定为目标分区,便于下次基于升级后的目标分区启动操作系统;当操作系统升级失败后,仍有原来的目标分区可供使用,充分保证了操作系统的稳定性和正常启动。
示例性的,图2B本公开实施例提供的一种非易失性存储介质中包含的区域的示意图。如图2B所示,非易失性存储介质中包括启动管理区、Initrd区、第一分区以及第二分区。其中,启动管理区用于存储第一分区的启动次数和第二分区的启动次数;Initrd区用来存储各种可执行程序和驱动程序;第一分区以及第二分区中均存储有操作系统的相关文件。
需要说明的是:图2B中包含的分区仅用于示例性说明,不用于对其限定,非易失性存储介质中还可以包括其它分区。
图3是本公开实施例提供的一种操作系统的处理装置的结构示意图;该装置配置于计算机设备中,可实现本申请任意实施例所述的操作系统的处理方法。该装置具体包括如下:
第一确定模块310,用于在终端设备的启动过程中,从非易失性存储介质中确定目标分区;
构建模块320,用于基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区;
启动模块330,用于从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统。
在本实施例中,可选的,构建模块320,具体用于:
将目标分区的标识信息发送至初始主存磁盘Initrd;
基于目标分区的标识信息,通过Initrd,将标识信息对应的目标分区确定为底层分区,以及将内存确定为上层分区;
根据底层分区和上层分区,构建分层文件系统。
在本实施例中,可选的,第一确定模块310,具体用于:
在终端设备的启动过程中,通过引导程序Uboot获取非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数,其中,第一分区和第二分区均为非易失性存储介质中的分区;
当第一分区的启动次数小于预设阈值时,将第一分区确定为目标分区;
当第一分区的启动次数大于或等于预设阈值,且第二分区的启动次数小于预设阈值时,将第二分区确定为目标分区。
在本实施例中,可选的,上述装置还包括:
第二确定模块,具体用于:在从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统之后,确定操作系统是否启动成功;
清零模块,具体用于当操作系统启动成功时,对目标分区的启动次数执行清零操作,并将清零后目标分区的启动次数存储至启动管理区中;
更新模块,用于当操作系统启动失败时,更新目标分区的启动次数,并将更新后目标分区的启动次数存储至启动管理区中。
在本实施例中,可选的,上述装置还包括:
第三确定模块,具体用于:当操作系统启动成功时,确定操作系统需要升级,从非易失性存储介质中确定备份分区;
升级模块,具体用于:在备份分区中对操作系统进行升级,并在操作系统升级成功后,将备份分区确定为目标分区。
在本实施例中,可选的,上述装置还包括:
修改模块,具体用于:响应于修改相关文件中第一目标文件的操作,通过分层文件系统将第一目标文件复制至上层分区中,对上层分区中的第一目标文件进行修改,得到第二目标文件;
存储模块,具体用于:将第二目标文件存储至上层分区中。
在本实施例中,可选的,操作系统为Linux操作系统。
通过本公开实施例提供的操作系统的处理装置,在终端设备的启动过程中,从非易失性存储介质中确定目标分区;基于目标分区和终端设备的内存,构建分层文件系统,其中,目标分区为分层文件系统的底层分区,内存为分层文件系统的上层分区;从分层文件系统的底层分区中读取操作系统的相关文件,通过运行相关文件,启动操作系统,通过上述技术方案,能够对底层分区中操作系统的相关文件进行保护,且操作系统的相关文件是从底层分区中读取,因此在启动操作系统的过程中不会占用太多内存,避免增加硬件成本和操作系统启动失败的情况。
本公开实施例所提供的操作系统的处理装置可执行本公开任意实施例所提供的操作系统的处理方法,具备执行方法相应的功能模块和有益效果。
图4是本公开实施例提供的一种计算机设备的结构示意图。如图4所示,该计算机设备包括处理器410和存储装置420;计算机设备中处理器410的数量可以是一个或多个,图4中以一个处理器410为例;计算机设备中的处理器410和存储装置420可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储装置420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本公开实施例中的操作系统的处理方法对应的程序指令/模块。处理器410通过运行存储在存储装置420中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现本公开实施例所提供的操作系统的处理方法。
存储装置420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本实施例提供的一种计算机设备可用于执行上述任意实施例提供的操作系统的处理方法,具备相应的功能和有益效果。
本公开实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于实现本公开实施例所提供的操作系统的处理方法。
当然,本公开实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本公开任意实施例所提供的操作系统的处理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本公开可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(RandomAccess Memory, RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述的方法。
值得注意的是,上述操作系统的处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种操作系统的处理方法,其特征在于,所述方法包括:
在终端设备的启动过程中,从非易失性存储介质中确定目标分区;
基于所述目标分区和所述终端设备的内存,构建分层文件系统,其中,所述目标分区为所述分层文件系统的底层分区,所述内存为所述分层文件系统的上层分区;
从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标分区和所述终端设备的内存,构建分层文件系统,包括:
将所述目标分区的标识信息发送至初始主存磁盘Initrd;
基于所述目标分区的标识信息,通过所述Initrd,将所述标识信息对应的所述目标分区确定为所述底层分区,以及将所述内存确定为所述上层分区;
根据所述底层分区和所述上层分区,构建所述分层文件系统。
3.根据权利要求1所述的方法,其特征在于,所述从非易失性存储介质中确定目标分区,包括:
通过引导程序Uboot获取所述非易失性存储介质中启动管理区中存储的第一分区的启动次数和第二分区的启动次数,其中,所述第一分区和所述第二分区均为所述非易失性存储介质中的分区;
当所述第一分区的启动次数小于预设阈值时,将所述第一分区确定为目标分区;
当所述第一分区的启动次数大于或等于预设阈值,且所述第二分区的启动次数小于预设阈值时,将所述第二分区确定为目标分区。
4.根据权利要求3所述的方法,其特征在于,所述从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统之后,所述方法还包括:
确定所述操作系统是否启动成功;
当所述操作系统启动成功时,对所述目标分区的启动次数执行清零操作,并将清零后所述目标分区的启动次数存储至所述启动管理区中;
当所述操作系统启动失败时,更新所述目标分区的启动次数,并将更新后所述目标分区的启动次数存储至所述启动管理区中。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述操作系统启动成功时,确定所述操作系统需要升级,从所述非易失性存储介质中确定备份分区;
在所述备份分区中对所述操作系统进行升级,并在所述操作系统升级成功后,将所述备份分区确定为目标分区。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于修改所述相关文件中第一目标文件的操作,通过所述分层文件系统将所述第一目标文件复制至所述上层分区中,对所述上层分区中的所述第一目标文件进行修改,得到第二目标文件;
将所述第二目标文件存储至所述上层分区中。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述操作系统为Linux操作系统。
8.一种操作系统的处理装置,其特征在于,所述装置包括:
第一确定模块,用于在终端设备的启动过程中,从非易失性存储介质中确定目标分区;
构建模块,用于基于所述目标分区和所述终端设备的内存,构建分层文件系统,其中,所述目标分区为所述分层文件系统的底层分区,所述内存为所述分层文件系统的上层分区;
启动模块,用于从所述分层文件系统的底层分区中读取操作系统的相关文件,通过运行所述相关文件,启动所述操作系统。
9.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310057980.8A CN115878204B (zh) | 2023-01-20 | 2023-01-20 | 一种操作系统的处理方法、装置、计算机设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310057980.8A CN115878204B (zh) | 2023-01-20 | 2023-01-20 | 一种操作系统的处理方法、装置、计算机设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115878204A true CN115878204A (zh) | 2023-03-31 |
CN115878204B CN115878204B (zh) | 2023-07-04 |
Family
ID=85758705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310057980.8A Active CN115878204B (zh) | 2023-01-20 | 2023-01-20 | 一种操作系统的处理方法、装置、计算机设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115878204B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080120613A1 (en) * | 2006-11-21 | 2008-05-22 | Dandekar Shree A | Method and Apparatus to Customize and Configure Multiple Operating Systems on a Server |
US20140040205A1 (en) * | 2012-05-20 | 2014-02-06 | Storsimple, Inc. | System and Methods for Implementing a Server-Based Hierarchical Mass Storage System |
CN110018859A (zh) * | 2019-04-15 | 2019-07-16 | 珠海全志科技股份有限公司 | 设备启动方法、装置、计算机设备和存储介质 |
CN110795155A (zh) * | 2019-10-23 | 2020-02-14 | 杭州迪普科技股份有限公司 | 系统启动方法及装置、电子设备、存储介质 |
CN111796882A (zh) * | 2020-07-21 | 2020-10-20 | 北京联想软件有限公司 | 电子设备系统处理方法、装置及电子设备 |
CN112988464A (zh) * | 2021-03-23 | 2021-06-18 | 武汉深之度科技有限公司 | 一种断电保护方法及计算设备 |
CN113254198A (zh) * | 2021-04-30 | 2021-08-13 | 南开大学 | 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法 |
CN113568787A (zh) * | 2021-09-23 | 2021-10-29 | 统信软件技术有限公司 | 一种掉电保护方法、计算设备及存储介质 |
CN115576903A (zh) * | 2022-11-16 | 2023-01-06 | 统信软件技术有限公司 | 一种文件系统构建方法、计算设备及存储介质 |
-
2023
- 2023-01-20 CN CN202310057980.8A patent/CN115878204B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080120613A1 (en) * | 2006-11-21 | 2008-05-22 | Dandekar Shree A | Method and Apparatus to Customize and Configure Multiple Operating Systems on a Server |
US20140040205A1 (en) * | 2012-05-20 | 2014-02-06 | Storsimple, Inc. | System and Methods for Implementing a Server-Based Hierarchical Mass Storage System |
CN110018859A (zh) * | 2019-04-15 | 2019-07-16 | 珠海全志科技股份有限公司 | 设备启动方法、装置、计算机设备和存储介质 |
CN110795155A (zh) * | 2019-10-23 | 2020-02-14 | 杭州迪普科技股份有限公司 | 系统启动方法及装置、电子设备、存储介质 |
CN111796882A (zh) * | 2020-07-21 | 2020-10-20 | 北京联想软件有限公司 | 电子设备系统处理方法、装置及电子设备 |
CN112988464A (zh) * | 2021-03-23 | 2021-06-18 | 武汉深之度科技有限公司 | 一种断电保护方法及计算设备 |
CN113254198A (zh) * | 2021-04-30 | 2021-08-13 | 南开大学 | 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法 |
CN113568787A (zh) * | 2021-09-23 | 2021-10-29 | 统信软件技术有限公司 | 一种掉电保护方法、计算设备及存储介质 |
CN115576903A (zh) * | 2022-11-16 | 2023-01-06 | 统信软件技术有限公司 | 一种文件系统构建方法、计算设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
SHENGAN ZHENG等: "Ziggurat: A Tiered File System for Non-Volatile Main Memories and Disks" * |
VIVEK SESHADRI等: "Page Overlays: An Enhanced Virtual Memory Framework to Enable Fine-grained Memory Management", 《ISCA》 * |
黄晓波等: "分层文件系统在嵌入式 Linux 中的实现 ∗" * |
Also Published As
Publication number | Publication date |
---|---|
CN115878204B (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7765409B2 (en) | Modular BIOS update mechanism | |
JP3593241B2 (ja) | 計算機の再起動方法 | |
JP5276438B2 (ja) | オペレーティングシステムおよびその他のソフトウェアのインストールを制限するハッカー対策プロテクト | |
CN109408122B (zh) | 一种设备启动方法、电子设备和计算机存储介质 | |
CN112631625B (zh) | 嵌入式设备的系统升级方法、装置及嵌入式设备 | |
US9235426B2 (en) | Multicore processor system, computer product, and notification method for updating operating system | |
CN110874237A (zh) | 软件升级方法、装置、终端以及可读存储介质 | |
WO2019144621A1 (zh) | 一种获取uefi os启动项的方法、装置及服务器 | |
CN113434182A (zh) | 固态硬盘固件升级立即生效的实现方法、装置及计算机设备 | |
CN113032183A (zh) | 系统管理方法、装置、计算机设备和存储介质 | |
CN116880877A (zh) | 虚拟机增强工具升级方法、装置、计算机设备和存储介质 | |
CN115878204B (zh) | 一种操作系统的处理方法、装置、计算机设备和介质 | |
CN110851183B (zh) | 在多处理器体系结构中快速启动处理器的方法 | |
TWI518594B (zh) | 計算機系統與計算機系統啓動方法 | |
CN110286953B (zh) | 嵌入式系统的启动方法、装置、嵌入式设备及存储介质 | |
CN107247642B (zh) | 用于系统开机时确定可执行映像文件的方法及装置 | |
CN113190244A (zh) | 无线模组升级的方法、装置、计算机设备和存储介质 | |
US9081727B2 (en) | Method, apparatus and computer program for loading files during a boot-up process | |
JP7491765B2 (ja) | ファームウェア更新システムおよびファームウェア更新方法 | |
JP7375643B2 (ja) | 車載情報処理装置、制御方法及びコンピュータプログラム | |
CN117932625A (zh) | 一种嵌入式设备的升级方法、装置、电子设备及存储介质 | |
CN117762456A (zh) | 一种片上系统及片上系统启动固件的升级方法 | |
CN115981694A (zh) | 终端设备的ota升级方法及装置、可读存储介质、终端设备 | |
JP2003256219A (ja) | 組込み機器におけるプログラム実行方法 | |
CN117111992A (zh) | 摩托车仪表系统升级装置、方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |