CN117311766A - 一种嵌入式linux操作系统及其组件更新管理方法 - Google Patents
一种嵌入式linux操作系统及其组件更新管理方法 Download PDFInfo
- Publication number
- CN117311766A CN117311766A CN202311477085.8A CN202311477085A CN117311766A CN 117311766 A CN117311766 A CN 117311766A CN 202311477085 A CN202311477085 A CN 202311477085A CN 117311766 A CN117311766 A CN 117311766A
- Authority
- CN
- China
- Prior art keywords
- component
- operating system
- management
- version
- design
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 136
- 238000013461 design Methods 0.000 claims abstract description 93
- 238000004519 manufacturing process Methods 0.000 claims abstract description 18
- 230000005540 biological transmission Effects 0.000 claims abstract description 11
- 238000012795 verification Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000002159 abnormal effect Effects 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 6
- 230000008439 repair process Effects 0.000 claims description 6
- 230000005856 abnormality Effects 0.000 claims description 5
- 238000004140 cleaning Methods 0.000 claims description 5
- 230000006837 decompression Effects 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 3
- 238000013439 planning Methods 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 abstract description 10
- 230000010354 integration Effects 0.000 abstract description 6
- 238000005242 forging Methods 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 24
- 230000008859 change Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- UGODCLHJOJPPHP-AZGWGOJFSA-J tetralithium;[(2r,3s,4r,5r)-5-(6-aminopurin-9-yl)-4-hydroxy-2-[[oxido(sulfonatooxy)phosphoryl]oxymethyl]oxolan-3-yl] phosphate;hydrate Chemical compound [Li+].[Li+].[Li+].[Li+].O.C1=NC=2C(N)=NC=NC=2N1[C@@H]1O[C@H](COP([O-])(=O)OS([O-])(=O)=O)[C@@H](OP([O-])([O-])=O)[C@H]1O UGODCLHJOJPPHP-AZGWGOJFSA-J 0.000 description 3
- 238000013070 change management Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及嵌入式技术领域,具体涉及一种嵌入式linux操作系统及其组件更新管理方法,通过系统组件模块化设计和系统组件版本信息管理方法设计,完成对操作系统组件集成环境的宏观及微观版本管理,有效支撑组件差异化版本管理的操作系统设计工作,实现操作系统组件能观能控的设计维护要求,为操作系统集成环境、功能、性能的度量和评估提供理论支撑和技术保障。同时,借助系统组件微观版本信息,有效识别及避免传输过程中出现的文件损坏等情况对操作系统功能的影响,通过系统组件管理及补丁制作方法、系统组件更新补丁安全升级设计,有效防护来自仿制、伪造的系统组件补丁给操作系统更新升级带来的安全风险,提高操作系统的稳定性和可靠性。
Description
技术领域
本发明涉及嵌入式技术领域,尤其涉及一种嵌入式linux操作系统及其组件更新管理方法。
背景技术
随着信息技术的快速发展,基于linux操作系统的嵌入式产品已经广泛应用于现代工业和生活的各个领域。嵌入式linux操作系统往往由成千上万的组件集合而成,组件可以是若干二进制程序文件、脚本文件、配置文件、其他文件等任意可具象化的文件实体或文件集合。在操作系统设计、开发、运维阶段,不可避免地经常会遇到组件变更、新增的风险和需求,大量系统组件的更新管理一直是操作系统设计维护中的重点和难点。常见的操作系统升级方案可以分为增量升级和全量升级两种模式。
全量升级模式提倡实现操作系统组件的完全替换,常用于百兆级组件大小以下操作系统组件的更新管理方案设计。但全量升级模式对本地USB、以太网等高速链路传输介质的依赖较高,在诸如采用蓝牙、4G等远程链路传输介质的嵌入式产品中,较大升级包组件往往意味着更大的文件传输等待时长、更复杂的文件传输风险控制、更低的一次升级成功率,不适用于百兆级以上组件大小的操作系统更新管理方案设计。
增量升级模式则通过补丁升级的方式进行系统功能、组件的变更或新增。增量升级模式可以灵活控制升级补丁包大小,实现升级包组件的小型化,适应不同量级组件大小的操作系统升级方案设计。但随着补丁数量的增长及补丁选用的差异,该模式不可避免地存在操作系统组件版本差异化风险预期,支撑组件差异化版本管理是当前操作系统设计的重要挑战和必要工作。在嵌入式linux系统环境下,有大大小小的bin工具文件、lib库文件、app应用文件和service服务文件等,部分组件可获取版本信息暨可实现自版本管理,但仍存在大量组件无法完成自版本管理,如配置文件。采用补丁升级的方式,如果只是一味地进行组件替换或新增,而不详细关注组件版本变更管理,终将导致操作系统环境、功能、性能无法进行有效的度量和评估,损坏操作系统能观能控的设计维护要求。
鉴于上述现有技术存在的缺陷,本发明的目的在于提供一种嵌入式linux操作系统及其组件更新管理方法。
发明内容
本发明的目的在于提供一种嵌入式linux操作系统及其组件更新管理方法,解决了现有的采用增量升级模式的嵌入式linux操作系统设计维护工作中,无可避免地存在大量无法实现自版本管理的系统组件,通过补丁升级进行多次组件替换或新增后,难以详细追溯组件版本变更情况,从而导致操作系统的环境、功能、性能无法进行有效的度量和评估,进而损坏操作系统集成环境能观能控的设计维护要求的技术问题。
为实现上述目的,本发明提供了一种嵌入式linux操作系统,包括:
系统组件模块规划设计,将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干个组件集合;
系统组件版本信息管理方法设计,包括可信的系统组件版本信息来源设计、系统组件宏观版本管理设计和系统组件微观版本管理设计;
系统组件管理及补丁制作方法设计,包括操作系统组件管理预定目录结构设计和系统组件更新补丁制作方法设计;
系统组件更新补丁安全升级设计,在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程。
其中,所述可信的组件版本信息来源设计,区别于人为定义组件版本信息的方式,使用版本控制系统工具进行组件版本的赋予。
其中,所述系统组件宏观版本管理设计,以所述组件模块为版本管理单元,通过简单的所述组件模块的单元版本信息,概要地反映嵌入式linux操作系统集成的组件环境。
其中,所述系统组件微观版本管理设计,以单一文件实体为组件版本管理单元,实现组件版本信息集中式、精细化、多备份的版本管理。
其中,所述操作系统组件管理预定目录结构设计,应支撑对操作系统所有组件的更新管理需求的覆盖。
其中,所述系统组件更新补丁制作方法设计,支持组件微观版本信息比对及差异组件识别提取,并进行补丁防伪及安全性设计。
其中,所述补丁升级流程包括以下步骤:
步骤1:通过解密解压缩操作对目标补丁进行密码鉴权,密码正确则解压成功并执行步骤2,密码错误则解压失败并结束当次升级流程。
步骤2:通过升级软件设计,根据组件更新补丁及待更新系统中的系统组件微观版本信息,按所述的预定目录结构逐一进行组件版本信息比对,涉及更新或新增的系统组件执行步骤3,相同版本的组件执行步骤4。
步骤3:涉及版本更新或新增的系统组件,进行待更新的目标组件校验计算,校验失败则认为目标组件损坏,记录异常信息,跳过该组件更新操作,校验成功则执行步骤5。
步骤4:相同版本的组件,进行一次操作系统中集成的目标组件校验信息计算及比对工作,校验成功表示该目标组件在以往使用过程中没有遭到损坏,跳过该次组件更新操作;校验失败则认为操作系统中集成的原目标系统组件已遭到不可预知的损坏,允许执行步骤5,尝试进行操作系统组件修复。
步骤5:执行组件更新操作,将最新组件存放至相应的操作系统既定路径,进行更新后的组件校验计算及比对,校验成功则将对应组件的最新版本信息更新至操作系统集成的微观版本信息中,校验失败则再次执行一次步骤5,即时修复组件更新操作相关传输及存储过程中偶发的数据误码等异常情况导致的组件更新异常。
步骤6:完成补丁包含的所有系统组件遍历后,清理升级过程中的中间文件,保存相关版本信息及升级日志,结束当次补丁升级流程,实现目标操作系统更新管理需求。
本发明还提供了一种嵌入式linux操作系统组件更新管理方法,包括以下步骤:
将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干组件集合;
对所述系统组件进行版本信息管理,包括可信的系统组件版本信息来源管理、系统组件宏观版本管理和系统组件微观版本管理;
对所述系统组件进行组件管理预定目录结构设计以及补丁制作方法设计;
在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程;
在进行补丁安全升级管理工作后,进行系统组件版本信息管理工作,之后进行系统组件校验信息管理工作,再进行系统组件更新结果管理工作,最后进行系统组件更新记录管理工作。
本发明的一种嵌入式linux操作系统及其组件更新管理方法,通过所述系统组件模块化设计和所述系统组件版本信息管理方法设计,完成对操作系统组件集成环境的宏观版本管理及微观版本管理,有效支撑组件差异化版本管理的操作系统设计工作、实现操作系统组件能观能控的设计维护要求,为操作系统集成环境、功能、性能的度量和评估提供理论支撑和技术保障。更进一步地,在系统更新安全设计方面,借助系统组件微观版本信息,可以有效识别及避免传输过程中出现的文件损坏等情况对操作系统功能的影响;通过所述系统组件管理及补丁制作方法和所述系统组件更新补丁安全升级设计,有效防护来自仿制、伪造的系统组件补丁给操作系统更新升级带来的安全风险,提高操作系统的稳定性和可靠性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本发明第一实施例的一种嵌入式linux操作系统组件模块规划。
图2是本发明第一实施例的一种嵌入式linux操作系统组件宏观版本信息。
图3是本发明第一实施例的一种嵌入式linux操作系统组件微观版本信息。
图4是本发明第一实施例的一种嵌入式linux操作系统组件管理预定目录结构。
图5是本发明第一实施例的一种嵌入式linux操作系统补丁升级流程。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
第一实施例:
请参阅图1至图5,其中图1是本发明第一实施例的一种嵌入式linux操作系统组件模块规划,图2是本发明第一实施例的一种嵌入式linux操作系统组件宏观版本信息,图3是本发明第一实施例的一种嵌入式linux操作系统组件微观版本信息,图4是本发明第一实施例的一种嵌入式linux操作系统组件管理预定目录结构,图5是本发明第一实施例的一种嵌入式linux操作系统补丁升级流程,本发明提供一种嵌入式linux操作系统,包括:
系统组件模块规划设计,将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干个组件集合;
系统组件版本信息管理方法设计,包括可信的系统组件版本信息来源设计、系统组件宏观版本管理设计和系统组件微观版本管理设计;
系统组件管理及补丁制作方法设计,包括操作系统组件管理预定目录结构设计和系统组件更新补丁制作方法设计;
系统组件更新补丁安全升级设计,在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程。
在本实施方式中,根据模块化及分类管理的思想,所述系统组件模块规划设计,从组件作用域及其生命周期出发,将操作系统组件分类设计为所述启动引导组件模块、所述内核组件模块、所述根文件系统组件模块和所述用户扩展组件模块,每个组件模块包含若干组件集合,所述启动引导组件模块包含引导linux内核所需的所有组件,如芯片初始化、uboot程序、开机画面小程序等;所述内核组件模块包含内核启动阶段所需的所有组件,如kernel内核程序、设备树文件等;所述根文件系统组件模块包含支撑操作系统功能需求的所有组件,如系统环境配置文件、lib库文件、service系统服务文件等;所述用户扩展组件模块包含实现用户应用需求的所有组件,如app应用程序文件、配置文件等,通过所述系统组件模块化设计和所述系统组件版本信息管理方法设计,完成对操作系统组件集成环境的宏观版本管理及微观版本管理,有效支撑组件差异化版本管理的操作系统设计工作、实现操作系统组件能观能控的设计维护需求,为操作系统集成环境、功能、性能的度量和评估提供理论支撑和技术保障。更进一步地,在系统更新安全设计方面,借助系统组件微观版本信息,可以有效识别及避免传输过程中出现的文件损坏等情况对操作系统功能的影响;通过所述系统组件管理及补丁制作方法和所述系统组件更新补丁安全升级设计,有效防护来自仿制、伪造的系统组件补丁给操作系统更新升级带来的安全风险,提高操作系统的稳定性和可靠性。
其中,所述可信的组件版本信息来源设计,区别于人为定义组件版本信息的方式,使用版本控制系统工具进行组件版本的赋予,所述版本控制系统工具包括集中式版本控制系统(SVN)、分布式版本控制系统(G IT)等,所述可信的组件版本信息来源设计,将其区别于人为定义组件版本信息的方式,使用诸如集中式版本控制系统(SVN)、分布式版本控制系统(GIT)等版本控制系统工具进行组件版本赋予,根据产品或项目需求,使用版本控制系统工具创建操作系统组件管理路径,依赖版本控制系统工具强大的日志管理、版本追溯功能,任何组件新增、更新、删除等操作及其对应版本信息都可以从版本控制系统中获取。实现任意有版本变更管理需求的组件,只需将其收录进操作系统组件管理路径,无论其是否具备自版本表示及管理能力,版本控制系统将为该组件自动生成一个唯一、可信的版本信息,解决人为定义组件版本信息方式中常见的版本信息来源不稳定、版本信息缺失、版本追溯困难等问题。
其次,所述系统组件宏观版本管理设计,以所述组件模块为版本管理单元,通过简单的所述组件模块的单元版本信息,概要地反映嵌入式linux操作系统集成的组件环境,所述系统组件宏观版本管理设计,以所述的组件模块为版本管理单元,如启动引导组件模块版本单元、内核组件模块版本单元、根文件系统组件模块版本单元、用户扩展组件模块版本单元,通过几个简单的组件模块单元版本信息,概要地反映嵌入式linux操作系统集成的组件环境,更进一步地,运用软件技术,建立组件模块版本单元信息与模块中包含的相关组件版本之间的关联关系,实现任一组件版本信息发生变更时,其所属的组件模块单元版本信息自动进行关联更新,实现对操作系统版本信息能观测、能控制的宏观版本管理需求。
一种嵌入式linux操作系统组件宏观版本信息,包括以下版本信息:
version1:表示系统平台信息。
version2:表示启动引导组件模块版本信息。
version3:表示内核组件模块版本信息。
version4:表示根文件系统组件模块版本信息。
version5:表示用户扩展组件模块版本信息。
再次,所述系统组件微观版本管理设计,以单一文件实体为组件版本管理单元,实现组件版本信息集中式、精细化、多备份的版本管理,所述的组件版本信息集中式版本管理,运用软件技术,结合版本控制系统工具,在目标嵌入式linux操作系统软件发布阶段,对目标操作系统涉及变更、新增的组件进行版本赋予,并将所有组件的版本信息集中存储至组件版本信息记录文件,实现操作系统所有组件版本信息的集中管理,所述的组件版本信息精细化版本管理,设计所述的组件版本信息应包含文件名、版本号、作者、日期时间、校验码等关键信息,所述的关键信息应能从所述的可信组件版本信息来源中直接获取、或者通过可信组件版本信息来源运算获取,以实现对加入版本控制系统的任一系统组件、任一版本的精确定位,支撑精细化的组件版本追溯及调测分析。所述的组件版本信息多备份版本管理,设计对所述的组件版本信息记录文件进行多重备份,将组件版本信息记录文件存储至主用存储路径及备份存储路径,主用存储路径中的组件版本信息异常情况下,可以通过备份存储路径进行数据恢复;主用存储路径及备份存储路径通过硬件分区隔离,增强重要文件存储的可靠性和安全性。
一种嵌入式linux操作系统组件微观版本信息,包含以下主要信息段:
name:表示组件名称。
version:表示svn服务器中记录的组件最新版本信息。
author:表示svn服务器中记录的最近一次更新组件的作者。
date:表示svn服务器中记录的最近一次更新组件的时间。
md5:表示组件MD5校验码信息。
同时,所述操作系统组件管理预定目录结构设计,应尽可能支撑对操作系统所有组件的更新管理需求的覆盖,设计预定目录包含BOOT、KERNEL、ROOTFS、APPS目录,ROOTFS目录下包含bin、lib、etc、service、ko、hal、shell、other等子目录,所述的预定目录应支持通过版本控制系统管理,BOOT目录用以存放及处理涉及更新或新增的启动相关程序;KERNEL目录用以存放及处理涉及更新或新增的内核相关程序;ROOTFS目录用以存放及处理涉及更新或新增的根文件系统相关程序,其中,bin目录用以存放及处理涉及更新或新增的系统工具软件;lib目录用以存放及处理涉及更新或新增的库文件;etc目录用以存放及处理涉及更新或新增的环境配置文件;service目录用以存放及处理涉及更新或新增的系统服务文件;ko目录用以存放及处理涉及更新或新增的内核驱动模块;hal目录用以存放及处理涉及更新或新增的硬件抽象层动态库文件;shell目录用以存放及处理涉及更新或新增的应用脚本程序;other目录用以存放及处理涉及更新或新增的其他扩展文件,适应操作系统设计维护中不可预见的扩展性需求;APPS目录用以存放及处理涉及更新或新增的应用程序文件,以实现用户应用功能需求。
一种嵌入式linux操作系统组件更新管理预定目录结构,包含以下主要预定目录:
APPS:存放及处理涉及更新或新增的应用程序文件。
BOOT:存放及处理涉及更新或新增的启动相关程序。
KERNEL:存放及处理涉及更新或新增的内核相关程序。
ROOTFS:存放及处理涉及更新或新增的根文件系统相关程序。
bin:存放及处理涉及更新或新增的系统工具软件。
lib:存放及处理涉及更新或新增的库文件。
etc:存放及处理涉及更新或新增的环境配置文件。
hal:存放及处理涉及更新或新增的硬件抽象层动态库文件。
ko:存放及处理涉及更新或新增的内核驱动模块。
service:存放及处理涉及更新或新增的系统服务文件。
shell:存放及处理涉及更新或新增的应用脚本程序。
other:存放及处理涉及更新或新增的其他扩展文件。
另外,所述系统组件更新补丁制作方法设计,基于所述系统组件微观版本管理设计、所述的操作系统组件管理预定目录结构设计实现,通过软件设计,比对分析版本控制系统中最新系统组件信息和待升级操作系统中的组件微观版本信息;识别出存在版本差异的系统组件并将其存放至补丁制作目录,更新相应组件微观版本信息记录;最后进行补丁防伪及安全性设计,运用软件技术,打包、加密、压缩生成系统组件更新补丁,实现对系统组件更新补丁密码属性赋能,以备补丁升级过程进行密码鉴权验证,有效防范仿制及伪造的系统补丁对操作系统更新带来的安全风险。
最后,所述系统组件更新补丁制作方法设计,支持组件微观版本信息比对及差异组件识别提取,并进行补丁防伪及安全性设计,所述系统组件更新补丁安全升级设计,在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程,首先,进行补丁安全管理工作,通过解密解压缩操作对目标补丁完成密码鉴权,实现更新补丁防伪验证。其次,进行组件版本信息管理工作,根据组件更新补丁及待更新系统中的系统组件微观版本信息,按所述的预定目录结构逐一进行组件版本信息比对。再次,进行系统组件校验信息管理工作,根据版本信息比对情况,涉及新增或版本更新的组件,执行组件更新操作并检验更新结果;相同版本的组件进行本地组件校验信息比对,发现异常的系统组件尝试使用更新补丁中包含的有效组件进行组件修复,校验正常的系统组件原则上无需对其进行任何操作。然后,进行系统组件更新结果管理工作,执行更新后的组件校验计算及比对,校验成功则将对应组件的最新版本信息更新至微观版本信息中,校验失败重复执行多次组件更新操作,多次更新操作后仍不成功时记录异常信息至系统组件更新升级日志并反馈。最后,进行系统组件更新记录管理工作,完成补丁包含的所有系统组件遍历后,清理升级过程中的中间文件,保存相关版本信息及升级日志,以备用户查阅、分析及历史追溯。
所述补丁升级流程包括以下步骤:步骤1:通过解密解压缩操作对目标补丁进行密码鉴权,密码正确则解压成功并执行步骤2,密码错误则解压失败并结束当次升级流程;步骤2:通过升级软件设计,根据组件更新补丁及待更新系统中的系统组件微观版本信息,按所述的预定目录结构逐一进行组件版本信息比对,涉及更新或新增的系统组件执行步骤3,相同版本的组件执行步骤4;步骤3:涉及版本更新或新增的系统组件,进行待更新的目标组件校验计算,校验失败则认为目标组件损坏,记录异常信息,跳过该组件更新操作,校验成功则执行步骤5;步骤4:相同版本的组件,进行一次操作系统中集成的目标组件校验信息计算及比对工作,校验成功表示该目标组件在以往使用过程中没有遭到损坏,跳过该次组件更新操作;校验失败则认为操作系统中集成的原目标系统组件已遭到不可预知的损坏,允许执行步骤5,尝试进行操作系统组件修复;步骤5:执行组件更新操作,将最新组件存放至相应的操作系统既定路径,进行更新后的组件校验计算及比对,校验成功则将对应组件的最新版本信息更新至操作系统集成的微观版本信息中,校验失败则再次执行一次步骤5,即时修复组件更新操作相关传输及存储过程中偶发的数据误码等异常情况导致的组件更新异常;步骤6:完成补丁包含的所有系统组件遍历后,清理升级过程中的中间文件,保存相关版本信息及升级日志,结束当次补丁升级流程,实现目标操作系统更新管理需求。
使用本实施例的一种嵌入式linux操作系统时,通过所述系统组件模块化设计和所述系统组件版本信息管理方法设计,完成对操作系统组件集成环境的宏观版本管理及微观版本管理,有效支撑组件差异化版本管理的操作系统设计工作、实现操作系统组件能观能控的设计维护要求,为操作系统集成环境、功能、性能的度量和评估提供理论支撑和技术保障。更进一步地,在系统更新安全设计方面,借助系统组件微观版本信息,可以有效识别及避免传输过程中出现的文件损坏等情况对操作系统功能的影响;通过所述系统组件管理及补丁制作方法和所述系统组件更新补丁安全升级设计,有效防护来自仿制、伪造的系统组件补丁给操作系统更新升级带来的安全风险,提高操作系统的稳定性和可靠性。
第二实施例:
在第一实施例的基础上,本发明还提供一种嵌入式linux操作系统组件更新管理方法,包括以下步骤:
S101、将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干组件集合;
S102、对所述系统组件进行版本信息管理,包括可信的系统组件版本信息来源管理、系统组件宏观版本管理和系统组件微观版本管理;
S103、对所述系统组件进行更新管理预定目录结构设计以及补丁制作方法设计;
S104、在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程;
S105、在进行补丁安全管理工作后进行组件版本信息管理工作,之后进行系统组件校验信息管理工作,再进行系统组件更新结果管理工作,最后进行系统组件更新记录管理工作。
使用本实施例的一种嵌入式linux操作系统时,先将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干组件集合,其次,对所述系统组件进行版本信息管理,包括可信的系统组件版本信息来源管理、系统组件宏观版本管理和系统组件微观版本管理,再次,对所述系统组件进行更新管理预定目录结构设计以及补丁制作方法设计,最后,在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程,在补丁升级流程启动后,首先,进行补丁安全管理工作,通过解密解压缩操作对目标补丁完成密码鉴权,实现更新补丁防伪验证。其次,进行组件版本信息管理工作,根据组件更新补丁及待更新系统中的系统组件微观版本信息,按所述的预定目录结构逐一进行组件版本信息比对。再次,进行系统组件校验信息管理工作,根据版本信息比对情况,涉及新增或版本更新的组件,执行组件更新操作并检验更新结果;相同版本的组件进行校验信息比对,发现异常的系统组件尝试使用补丁中包含的有效组件进行组件修复,校验正常的系统组件原则上无需对其进行任何操作。然后,进行系统组件更新结果管理工作,执行更新后的组件校验计算及比对,校验成功则将对应组件的最新版本信息更新至微观版本信息中,校验失败重复执行多次组件更新操作,多次更新操作后仍不成功时记录异常信息至系统组件更新升级日志并反馈。最后,进行系统组件更新记录管理工作,完成补丁包含的所有系统组件遍历后,清理升级过程中的中间文件,保存相关版本信息及升级日志,以备用户查阅、分析及历史追溯,完成嵌入式linux操作系统组件的更新管理。
以上所揭露的仅为本申请一种或多种较佳实施例而已,不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于本申请所涵盖的范围。
Claims (8)
1.一种嵌入式linux操作系统,其特征在于,包括:
系统组件模块规划设计,将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干个组件集合;
系统组件版本信息管理方法设计,包括可信的系统组件版本信息来源设计、系统组件宏观版本管理设计和系统组件微观版本管理设计;
系统组件管理及补丁制作方法设计,包括操作系统组件管理预定目录结构设计和系统组件更新补丁制作方法设计;
系统组件更新补丁安全升级设计,在用户触发补丁升级检测并发现目标操作系统组件更新补丁后,启动补丁升级流程。
2.如权利要求1所述的嵌入式linux操作系统,其特征在于,
所述可信的组件版本信息来源设计,区别于人为定义组件版本信息的方式,使用版本控制系统工具进行组件版本的赋予。
3.如权利要求1所述的嵌入式linux操作系统,其特征在于,
所述系统组件宏观版本管理设计,以所述组件模块为版本管理单元,通过简单的所述组件模块的单元版本信息,概要地反映嵌入式linux操作系统集成的组件环境。
4.如权利要求1所述的嵌入式linux操作系统,其特征在于,
所述系统组件微观版本管理设计,以单一文件实体为组件版本管理单元,实现组件版本信息集中式、精细化、多备份的版本管理。
5.如权利要求1所述的嵌入式linux操作系统,其特征在于,
所述操作系统组件管理预定目录结构设计,应支撑对操作系统所有组件的更新管理需求的覆盖。
6.如权利要求1所述的嵌入式linux操作系统,其特征在于,
所述系统组件更新补丁制作方法设计,支持组件微观版本信息比对及差异组件识别提取,并进行补丁防伪及安全性设计。
7.如权利要求1所述的嵌入式linux操作系统,其特征在于,
所述补丁升级流程包括以下步骤:
步骤1:通过解密解压缩操作对目标补丁进行密码鉴权,密码正确则解压成功并执行步骤2,密码错误则解压失败并结束当次升级流程。
步骤2:通过升级软件设计,根据组件更新补丁及待更新系统中的系统组件微观版本信息,按所述的预定目录结构逐一进行组件版本信息比对,涉及更新或新增的系统组件执行步骤3,相同版本的组件执行步骤4。
步骤3:涉及版本更新或新增的系统组件,进行待更新的目标组件校验计算,校验失败则认为目标组件损坏,记录异常信息,跳过该组件更新操作,校验成功则执行步骤5。
步骤4:相同版本的组件,进行一次操作系统中集成的目标组件校验信息计算及比对工作,校验成功表示该目标组件在以往使用过程中没有遭到损坏,跳过该次组件更新操作;校验失败则认为操作系统中集成的原目标系统组件已遭到不可预知的损坏,允许执行步骤5,尝试进行操作系统组件修复。
步骤5:执行组件更新操作,将最新组件存放至相应的操作系统既定路径,进行更新后的组件校验计算及比对,校验成功则将对应组件的最新版本信息更新至操作系统集成的微观版本信息中,校验失败则再次执行一次步骤5,即时修复组件更新操作相关传输及存储过程中偶发的数据误码等异常情况导致的组件更新异常。
步骤6:完成补丁包含的所有系统组件遍历后,清理升级过程中的中间文件,保存相关版本信息及升级日志,结束当次补丁升级流程,实现目标操作系统更新管理需求。
8.一种嵌入式linux操作系统组件更新管理方法,应用于权利要求1至权利要求7中任一项所述的嵌入式linux操作系统,其特征在于,
将操作系统的组件分类设计为启动引导组件模块、内核组件模块、根文件系统组件模块和用户扩展组件模块,其中,每个组件模块包含若干组件集合;
对所述系统组件进行版本信息管理,包括可信的系统组件版本信息来源管理、系统组件宏观版本管理和系统组件微观版本管理;
对所述系统组件进行更新管理预定目录结构设计以及补丁制作方法设计;
发现目标操作系统组件更新补丁后,启动补丁升级流程;
在进行补丁安全升级管理工作后,进行组件版本信息管理工作,之后进行系统组件校验信息管理工作,再进行系统组件更新结果管理工作,最后进行系统组件更新记录管理工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311477085.8A CN117311766A (zh) | 2023-11-08 | 2023-11-08 | 一种嵌入式linux操作系统及其组件更新管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311477085.8A CN117311766A (zh) | 2023-11-08 | 2023-11-08 | 一种嵌入式linux操作系统及其组件更新管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117311766A true CN117311766A (zh) | 2023-12-29 |
Family
ID=89286656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311477085.8A Pending CN117311766A (zh) | 2023-11-08 | 2023-11-08 | 一种嵌入式linux操作系统及其组件更新管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117311766A (zh) |
-
2023
- 2023-11-08 CN CN202311477085.8A patent/CN117311766A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7089552B2 (en) | System and method for verifying installed software | |
EP2210183B1 (en) | Managing updates to create a virtual machine facsimile | |
CN110321254B (zh) | 软件版本回滚方法、装置、服务器及存储介质 | |
US8365164B1 (en) | Portable software applications | |
US7516367B1 (en) | Automated, distributed problem determination and upgrade planning tool | |
KR100513551B1 (ko) | 주문 제작 컴퓨터시스템을 위한 소프트웨어 설치 및 테스트방법및 시스템 | |
US6161218A (en) | Software patch architecture | |
US6990600B2 (en) | Method for checking a computer system configuration | |
US7870547B2 (en) | Method and apparatus for managing patchable software systems | |
US8677348B1 (en) | Method and apparatus for determining least risk install order of software patches | |
US20030051235A1 (en) | Method and apparatus for verifying and analyzing computer software installation | |
CN107992325B (zh) | 一种通过特征码检验比对文件信息的方法 | |
CN111666081A (zh) | 基于Git的项目版本发布方法、装置、设备及介质 | |
KR19990023214A (ko) | 주문 제작 컴퓨터시스템을 위한 소프트웨어 설치 및 테스트를 촉진하는 데이타베이스 | |
CN111400102B (zh) | 应用程序的变更监控方法、装置、设备及存储介质 | |
US6615406B1 (en) | Apparatus for use in the manufacture of a computer system | |
CN115185550A (zh) | 服务部署方法、装置、计算机设备及存储介质 | |
CN114661423A (zh) | 集群配置检测方法、装置、计算机设备及存储介质 | |
US20230061121A1 (en) | Methods concerning ongoing treatment for cancer | |
CN117311766A (zh) | 一种嵌入式linux操作系统及其组件更新管理方法 | |
US20150033213A1 (en) | Compiling method, storage medium and compiling apparatus | |
CN115543429A (zh) | 项目环境的搭建方法、电子设备及计算机可读存储介质 | |
US20030014744A1 (en) | Method of checking at least one software application installed on a data processing sytstem | |
AU3583999A (en) | A method of installing software on and/or testing a computer system | |
CN101004692A (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 |