CN116610446A - 一种边缘计算平台 - Google Patents
一种边缘计算平台 Download PDFInfo
- Publication number
- CN116610446A CN116610446A CN202310511119.4A CN202310511119A CN116610446A CN 116610446 A CN116610446 A CN 116610446A CN 202310511119 A CN202310511119 A CN 202310511119A CN 116610446 A CN116610446 A CN 116610446A
- Authority
- CN
- China
- Prior art keywords
- memory
- partition
- operating system
- data
- files
- 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
- 230000015654 memory Effects 0.000 claims abstract description 462
- 238000005192 partition Methods 0.000 claims description 299
- 238000000034 method Methods 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 16
- 238000000638 solvent extraction Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000000875 corresponding effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 101100226364 Arabidopsis thaliana EXT1 gene Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000754 repressing effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/502—Proximity
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供一种边缘计算平台,该平台包括:第一存储器、第二存储器,其中,第一存储器、第二存储器中配置有相同的操作系统,其中,第一存储器支持操作系统稳定运行,第二存储器支持操作系统更新,且边缘计算平台被配置为:在需要稳定运行时,从第一存储器启动和运行操作系统;在需要更新方便时,从第二存储器启动和运行操作系统;其中,配置在第一存储器、第二存储器中的操作系统是预先裁剪好的、在功能上满足边缘计算平台以及用户需求、在容量上满足第一存储器和第二存储器中的最小存储容量的操作系统。本发明的边缘计算平台可以根据不同的需求从边缘计算平台中的不同的存储器中启动和运行操作系统。
Description
技术领域
本发明涉及信息技术领域,具体来说,涉及嵌入式计算平台,更具体地说,涉及一种边缘计算平台。
背景技术
嵌入式计算平台在汽车、工业自动化、医疗设备以及机器人等领域被应用广泛,而嵌入式计算平台包括边缘计算平台,该平台是用于控制和执行特定任务的计算机系统,其主要由系统硬件部分和系统软件部分组成,其中,在系统软件部分包括操作系统、驱动程序、应用程序以及中间件等。然而,由于边缘计算平台的体积小,存储器的存储容量小等特点,使得现有的操作系统需要重新设计或定制裁剪后才能满足于边缘计算平台的功能和性能要求。进一步地,将经裁剪后的操作系统选择合适的存储器存储并部署在边缘计算平台中以及操作系统的启动和更新方式等对于边缘计算平台的功能和性能都至关重要。而裁剪操作系统和将其部署在边缘计算平台中时所面临的主要挑战有:(1)边缘计算平台中的存储器的存储容量小,因此要求裁剪后的操作系统所占边缘计算平台的存储容量应不大于百兆字节;(2)选择边缘计算平台中存储器时应考虑以下两方面:一方面是操作系统在边缘计算平台的存储器中是否稳定运行,避免因改动操作系统而造成无法启动操作系统等情况;另一方面是在存储器中的操作系统的文件和数据以及启动操作系统后用户编辑的文件和数据等内容更新是否方便。
现有技术下也有一些边缘计算平台的部署设计,一般采用单个存储器作为存储介质存储和部署边缘计算平台,例如:NOR Flash存储器或eMMC存储器。
下面简单介绍一下NOR Flash存储器和eMMC存储器,以便于更好的理解现有技术边缘计算平台存在的缺陷。
NOR Flash存储器的特点是非易失性存储、输入输出(IO)口比较少、成本低、体积小、存储容量小,读速度快,写速度慢,不易产生坏块。该存储器根据数据传输的位数可以分为并行和串行,并行的数据传输位数为每次传输多个bit位的数据,而串行的数据传输位数每次传输一个bit位的数据。因此,Nor Flash存储器中并行数据传输位数比串行数据传输位数具有更快的传输速度。同时也因为NOR Flash存储器的存储容量小,写速度慢等特点,导致其不太适用于存储大量的文件和数据等。即如果选择在NOR Flash存储器中启动运行操作系统,就对操作系统的格式、功能、体积等有严格的限制。例如,限制1:NORFlash存储器的存储容量一般小于128MB,未经定制化裁剪的操作系统一般需要1GB以上的存储空间,导致操作系统在存储器的占用空间过大,因此留给用户使用的空间就相应减少,从而无法很好的适用在边缘计算平台中;限制2:为适配嵌入式边缘计算平台的存储空间,将操作系统进行裁剪后会导致操作系统的大部分功能缺失,从而降低了用户在调试部署操作系统过程中的易用性及兼容性;限制3:对操作系统的文件和数据进行更新时往往需要借用烧写工具进行操作。但是由于NOR Flash存储器不易产生坏块,因此适用于需要长期贮存的文件和数据的应用场景来满足文件和数据的可靠性以及操作系统的安全稳定运行。eMMC存储器的特点是写速度快,存储容量大(eMMC存储器的存储容量一般小于16GB),单位容量价格低,适用于大容量数据存储,但较易产生坏块,需ECC校验,因此不适用于需要长期贮存的文件和数据的应用场景来满足文件和数据的可靠性以及保障操作系统安全稳定运行。但是从存储容量大与读写速度快两方面分析,eMMC存储器更适用于存储非定制的操作系统,例如基于EXT4文件系统制作嵌入式Linux操作系统,也更适用于操作系统的文件和数据以及边缘计算平台的eMMC存储器中启动和运行操作系统后用户编辑的文件和数据的更新。
现有技术采用上述两类存储器单独部署在边缘计算平台中形成两类边缘计算平台,一类是采用NORFlash存储器存储Linux操作系统并将其部署到边缘计算平台中,在该类边缘计算平台中,由于NORFlash存储器具有读速度快,不易产生坏块等优点,利用其存储操作系统使得操作系统可以在边缘计算平台中安全稳定运行;但是由于NORFlash存储器也具有存储容量小,写速度慢等缺点,利用其存储操作系统会导致用户对操作系统的文件和数据以及启动操作系统后用户编辑的文件和数据等内容更新很不方便,从而降低了用户在边缘计算平台中调试和部署操作系统过程中的易用性及兼容性;另一类方案是采用eMMC存储器存储操作系统并将其部署到边缘计算平台中,在该方案中的边缘计算平台中,由于eMMC存储器具有写速度快,存储容量大等优点,利用其存储操作系统使得用户对操作系统的文件和数据以及启动操作系统后用户编辑的文件和数据等内容更新更方便,从而提高了用户在边缘计算平台中调试和部署操作系统过程中的易用性及兼容性,但是由于eMMC存储器易产生坏块等缺点,利用其存储操作系统会导致其不适用于用户需要在边缘计算平台中的操作系统安全稳定运行的应用场景。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种边缘计算平台。
本发明的目的是通过以下技术方案实现的:
根据本发明的第一方面,提供一种边缘计算平台,所述平台包括:第一存储器、第二存储器,其中,所述第一存储器、第二存储器中配置有相同的操作系统,其中,所述第一存储器支持所述操作系统稳定运行,所述第二存储器支持所述操作系统更新,且所述边缘计算平台被配置为:
在需要稳定运行时,从第一存储器启动和运行所述操作系统;
在需要更新方便时,从第二存储器启动和运行所述操作系统;
其中,配置在所述第一存储器、第二存储器中的所述操作系统是预先裁剪好的、在功能上满足边缘计算平台以及用户需求、在容量上满足所述第一存储器和第二存储器中的最小存储容量的所述操作系统。
在本发明的一些实施例中,所述第一存储器为NORFlash,所述第二存储器为eMMC,所述操作系统为Linux操作系统。
在本发明的一些实施例中,所述第一存储器包括:引导加载程序分区、第一内核分区、第二根文件系统分区以及第一用户分区;所述引导加载程序分区用于存储所述操作系统的引导加载程序;所述第一内核分区用于存储所述操作系统的内核、设备树的文件和数据;所述第二根文件系统分区用于存储所述操作系统的根文件系统的文件和数据;所述第一用户分区用于存储在第一存储器中启动和运行所述操作系统后用户编辑的文件和数据;
所述第二存储器包括:第二内核分区、第二根文件系统分区、系统工具分区以及第二用户分区;所述第二内核分区用于存储所述操作系统的内核、设备树的文件和数据;所述第二根文件系统分区用于存储所述操作系统的根文件系统的文件和数据;所述系统工具分区用于存储在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据;所述第二用户分区用于存储在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据;
其中,所述第一内核分区和所述第二内核分区的内核、设备树的文件和数据在内容和版本上保持一致,所述第一根文件系统分区和所述第二根文件系统分区的根文件系统的文件和数据在内容和版本上保持一致。
在本发明的一些实施例中,所述第一存储器的第一根文件系统分区被配置为采用ramdisk文件系统存储所述操作系统的根文件系统的文件和数据;
所述第一存储器的第一用户分区被配置为采用JFFS2文件系统存储在第一存储器中启动和运行所述操作系统后用户编辑的文件和数据。
在本发明的一些实施例中,所述第一存储器的引导加载程序分区还被配置为可选择从所述第一存储器或所述第二存储器启动和运行所述操作系统。
在本发明的一些实施例中,所述边缘计算平台还包括第三存储器,其中,第三存储器为内存,用于将所述第一存储器的第一内核分区中的内核、设备树的文件和数据以及所述第一存储器的第一根文件系统分区中的根文件系统的文件和数据拷贝至所述内存以启动和运行所述操作系统或将所述第二存储器的第二内核分区中的内核、设备树的文件和数据以及所述第二存储器的第二根文件系统分区中的根文件系统的文件和数据拷贝至所述内存以启动和运行所述操作系统。
在本发明的一些实施例中,所述边缘计算平台被配置为在需要稳定运行时,通过如下方式从第一存储器启动和运行所述操作系统:
在所述第一存储器的引导加载程序分区中读取引导加载程序;
根据所述引导加载程序在所述第一存储器的第一内核分区中拷贝内核、设备树的文件和数据以及所述第一存储器的第一根文件系统分区中拷贝根文件系统的文件和数据到所述内存;
基于所述内存中的内核、设备树的文件和数据以及根文件系统的文件和数据,引导启动和运行所述操作系统。
在本发明的一些实施例中,所述边缘计算平台被配置为在需要更新方便时,通过如下方式从第二存储器启动和运行所述操作系统:
在所述第一存储器的引导加载程序分区中读取引导加载程序;
根据所述引导加载程序在所述第二存储器的第二内核分区中拷贝设内核、设备树的文件和数据以及所述第二存储器的第二根文件系统分区中拷贝根文件系统的文件和数据到所述内存;
基于所述内存中的内核、设备树的文件和数据以及根文件系统的文件和数据,引导启动和运行所述操作系统。
在本发明的一些实施例中,所述边缘计算平台还被配置为在所述第一存储器启动和运行所述操作系统后,通过如下方式更新所述第一存储器的第一内核分区中所述操作系统的内核、设备树的文件和数据和所述第一根文件系统分区中所述操作系统的根文件系统的文件和数据以及所述第一用户分区中在第一存储器中启动和运行所述操作系统后用户编辑的文件和数据:
通过调用flash烧写工具更新所述第一存储器的第一内核分区中所述操作系统的内核、设备树的文件和数据和所述第一根文件系统分区中所述操作系统的根文件系统的文件和数据;
在所述第二存储器启动和运行所述操作系统时,挂载所述第一存储器的第一用户分区和所述第二存储器的第二用户分区,将所述第二存储器的第二用户分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据拷贝至所述第一存储器的第一用户分区中以实现可直接更新第一存储器的第一用户分区的文件和数据。
在本发明的一些实施例中,所述边缘计算平台还被配置为在所述第二存储器启动和运行所述操作系统后,通过如下方式更新所述第二存储器的第二内核分区中所述操作系统的内核、设备树的文件和数据和所述第二根文件系统分区中所述操作系统的根文件系统的文件和数据、所述系统工具分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据以及第二用户分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据:
通过格式化再解压拷贝方式更新所述第二存储器的所述第二根文件系统分区中所述操作系统的根文件系统的文件和数据;
通过直接替换方式更新所述第二存储器的第二内核分区中所述操作系统的内核、设备树的文件和数据;
挂载所述第二存储器的系统工具分区以实现可直接更新所述第二存储器的系统工具分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据;
挂载所述第二存储器的第二用户分区以实现直接更新所述第二存储器的第二用户分区中在第二存储器中启动和运行所述操作系统后用户编辑的文件和数据。
根据本发明的第二方面,提供一种边缘计算平台的操作系统的启动和运行方法,其特征在于,所述方法包括:
在所述边缘计算平台上的第一存储器和第二存储器中配置两个相同的所述操作系统,其中,第一存储器支持所述操作系统稳定运行,第二存储器支持所述操作系统更新,且边缘计算平台
在需要稳定运行时,从所述第一存储器启动和运行所述操作系统;
在需要更新方便时,从所述第二存储器启动和运行所述操作系统;
其中,配置在所述第一存储器、第二存储器中的所述操作系统是预先裁剪好的、在功能上满足边缘计算平台以及用户需求,在容量上满足所述第一存储器和所述第二存储器中的最小存储容量的操作系统。
在本发明的一些实施例中,该方法还包括:
从所述第一存储器启动和运行所述操作系统后,通过调用flash烧写工具更新所述第一存储器的第一内核分区中所述操作系统的内核、设备树的文件和数据和所述第一根文件系统分区中所述操作系统的根文件系统的文件和数据;在所述第二存储器启动和运行所述操作系统时,挂载所述第一存储器的第一用户分区和所述第二存储器的第二用户分区,将所述第二存储器的第二用户分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据拷贝至所述第一存储器的第一用户分区中以实现可直接更新第一存储器的第一用户分区的文件和数据。
从所述第二存储器启动和运行所述操作系统后,通过格式化再解压拷贝方式更新所述第二存储器的所述第二根文件系统分区中所述操作系统的根文件系统的文件和数据;通过直接替换方式更新所述第二存储器的第二内核分区中所述操作系统的内核、设备树的文件和数据;挂载所述第二存储器的系统工具分区以实现可直接更新所述第二存储器的系统工具分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据;挂载所述第二存储器的第二用户分区以实现直接更新所述第二存储器的第二用户分区中在第二存储器中启动和运行所述操作系统后用户编辑的文件和数据。
根据本发明的第三方面,提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现第二方面所述方法的步骤。
与现有技术相比,本发明的优点在于:
本发明提供一种边缘计算平台,用户可以根据不同的需求从边缘计算平台中的不同的存储器中启动和运行操作系统,即当需要边缘计算平台中的操作系统安全稳定运行时,从第一存储器启动和运行操作系统;当需要对边缘计算平台的操作系统的文件和数据以及启动操作系统后用户编辑的文件和数据等内容的更新更方便时,进而满足用户在调试和部署操作系统过程中的易用性及兼容性,从第二存储器启动和运行操作系统。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为现有技术N-边缘计算平台的框架图;
图2为现有技术N-边缘计算平台上的操作系统的启动和运行、更新流程图;
图3为现有技术E-边缘计算平台的框架图;
图4为现有技术E-边缘计算平台上的操作系统的启动和运行、更新流程图;
图5为本发明实施例边缘计算平台的框架图;
图6为本发明实施例边缘计算平台上的操作系统的启动和运行、更新流程图;
图7为本发明另一个实施例边缘计算平台上的操作系统的启动和运行、更新流程图;
具体实施方式中的附图标号如下:
100-N-边缘计算平台;110-N-NORFlash存储器;111-N-引导加载程序分区;112-N-内核分区;113-N-系统分区;200-E-边缘计算平台;210-E-eMMC存储器;211-E-引导加载程序分区;212-E-内核分区;213-E-系统分区;300-边缘计算平台;310-NORFlash存储器;311-引导加载程序分区;312-第一内核分区;313-第一根文件系统分区;314-第一用户分区;320-eMMC存储器;321-第二内核分区;322-第二根文件系统分区;323-系统工具分区;324-第二用户分区;330-内存。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如背景技术中所述的,现有技术中,边缘计算平台的设计方案存在以下问题:一是如果满足了边缘计算平台中操作系统安全稳定运行,就不能满足对操作系统的文件和数据以及启动操作系统后用户编辑的文件和数据等内容的更新方便,进而不能满足用户在调试和部署操作系统过程中的易用性及兼容性;二是如果满足了用户对操作系统的文件和数据以及启动操作系统后用户编辑的文件和数据等内容更新更方便,从而提高了用户在调试和部署操作系统过程中的易用性及兼容性,就不能满足在边缘计算平台中操作系统安全稳定运行。为了解决这些问题,本发明提供一种边缘计算平台,并在该平台中部署第一存储器和第二存储器,两者具有不同的性质,其中,第一存储器支持操作系统稳定运行,第二存储器方便操作系统更新,使得可以根据用户需求选择性地从第一存储器或第二存储器中启动和运行操作系统,以利用具有对应性质的存储器满足用户希望稳定运行操作系统的需求(一般是在日常使用时)或者希望快速更新操作系统的需求(一般是在调试和部署操作系统时)。
为了更好的说明本发明的改进点,下面简单介绍一下两种现有技术存在的边缘计算平台的基本框架及此框架下操作系统的启动运行和更新流程。
现有技术1:利用N-NORFlash存储器部署的边缘计算平台
如图1所示,其为现有技术1利用N-NORFlash存储器110存储Linux操作系统的边缘计算平台框架图,此边缘计算平台称为N-边缘计算平台100,其中,N-边缘计算平台100包括:N-NORFlash存储器110,并将N-NORFlash存储器110划分为N-引导加载程序分区111、N-内核分区112、N-系统分区113。
如图2所示,N-边缘计算平台100上的Linux操作系统的启动和运行、更新流程为:
P0、对操作系统进行裁剪,即将Linux操作系统进行裁剪,其中,裁剪后的Linux操作系统在功能上满足N-边缘计算平台100以及用户需求、在容量上满足N-NORFlash存储器110中的存储容量;
P1、上电,即对N-边缘计算平台100上电;P2、对N-NORFlash存储器110进行分区,即将N-NORFlash存储器110划分为N-引导加载程序分区111、N-内核分区112、N-系统分区113;
P3、将操作系统配置于分区中,即对Linux操作系统进行裁剪后,将剪裁后的Linux操作系统的设备树、内核以及根文件系统的文件和数据配置于N-NORFlash存储器110的N-内核分区112中;
P4、读取引导加载程序,即对N-边缘计算平台100上电后,在N-NORFlash存储器110的N-引导加载程序分区111中读取引导加载程序;
P5、拷贝文件和数据,即通过N-引导加载程序分区111中的引导加载程序将N-内核分区112中的设备树、内核及根文件系统的文件和数据拷贝至N-引导加载程序分区111;
P6、启动和运行操作系统,即根据N-引导加载程序分区111中的设备树、内核及根文件系统的文件和数据启动和运行Linux操作系统,其中,采用JFFS2文件系统存储Linux操作系统的根文件系统的文件和数据;
P7、更新操作系统,即采用烧写工具对N-NORFlash存储器110的N-内核分区112中Linux操作系统的设备树、内核及根文件系统的文件和数据进行更新。
从现有技术1中的N-边缘计算平台100的描述可知由于N-NORFlash存储器110的存储容量小(留给用户使用的空间少)、写速度慢等缺点,导致在N-NORFlash存储器110中启动和运行Linux操作系统时,对Linux操作系统的文件和数据等更新很不方便,从而降低了用户在调试和部署Linux操作系统过程中的易用性及兼容性。
现有技术2:利用E-eMMC存储器部署的边缘计算平台
如图3所示,其为现有技术2利用E-eMMC存储器210存储Linux操作系统的边缘计算平台框架图,此边缘计算平台称为E-边缘计算平台200,其中,E-边缘计算平台200包括:E-eMMC存储器210,并将E-eMMC存储器210划分为E-引导加载程序分区211、E-内核分区212、E-系统分区213。
如图4所示,E-边缘计算平台200上的Linux操作系统的启动和运行、更新流程为:
T0、对操作系统进行裁剪,即将Linux操作系统进行裁剪,其中,裁剪后的Linux操作系统在功能上满足E-边缘计算平台200以及用户需求、在容量上满足E-eMMC存储器210中的存储容量;
T1、上电,即对E-边缘计算平台200上电;
T2、对E-eMMC存储器210进行分区,即将E-eMMC存储器210划分为E-引导加载程序分区211、E-内核分区212、E-系统分区213;
T3、将操作系统配置于分区中,即对Linux操作系统进行裁剪后,将剪裁后的Linux操作系统的设备树、内核以及根文件系统的文件和数据配置于E-eMMC存储器210的E-内核分区212中;
T4、读取引导加载程序,即对E-边缘计算平台200上电后,在E-eMMC存储器210的E-引导加载程序分区211中读取引导加载程序;
T5、拷贝文件和数据,即通过E-引导加载程序分区211中的引导加载程序将E-内核分区212中的设备树、内核及根文件系统的文件和数据拷贝至E-引导加载程序分区211;
T6、启动和运行操作系统,即根据E-引导加载程序分区211中的设备树、内核及根文件系统的文件和数据启动和运行Linux操作系统,其中,采用EXT文件系统存储Linux操作系统的根文件系统的文件和数据;
T7、更新操作系统,即采用格式化再解压拷贝方式对E-NORFlash存储器110的E-内核分区212中Linux操作系统的设备树、内核及根文件系统的文件和数据进行更新。
从现有技术2中的E-边缘计算平台200的描述可知,由于E-eMMC存储器210易产生坏块等缺点,导致其不适用于用户需要Linux操作系统安全稳定运行的应用场景。
进一步地,由上述可知,现有技术不管是在N-边缘计算平台100上或是E-边缘计算平台200上都是直接在N-NORFlash存储器110或E-eMMC存储器210中启动和运行Linux操作系统,而不是把相关启动和运行Linux操作系统的文件和数据拷贝到内存330(如图3所示)启动和运行Linux操作系统,例如RAM中,这种直接从N-NORFlash存储器110或E-eMMC存储器210中取指,在N-NORFlash存储器110或E-eMMC存储器210中启动和运行Linux操作系统,再往N-NORFlash存储器110或E-eMMC存储器210中写入数据的时需要指定的命令才能写入,而且每次写入之前都要执行擦除动作,这会导致启动和运行Linux操作系统的速度不会太快。
总的来说,以上现有技术都是采用了单一存储器,但是,单一存储器在存储数据的稳定性和写入速度的性能两方面不可兼得,采用单一存储器无法满足用户在不同场景下的使用需求。因此,针对上述现有技术存在的问题,本发明实施例提出以下改进的边缘计算平台。
本发明实施例的边缘计算平台依赖两种具有不同性质的存储器,为便于区分,以下分别称为第一存储器和第二存储器。其中,第一存储器存储数据的稳定性高于第二存储器,第二存储器的写入速度高于第一存储器。由此,以使第一存储器支持所述操作系统稳定运行,第二存储器支持所述操作系统快速更新(比采用第一存储器更新操作系统更快,即更新方便)。
示意性的,第一存储器和第二存储器可以采用不同的现有存储器来实现。
根据本发明的一个实施例,如图5所示,本发明实施例的边缘计算平台中部署的第一存储器采用NORFlash存储器和第二存储器采用eMMC存储器。又或者,第二存储器采用SD(Secure Digital Memory Card)卡以及TF(TransFlash Memory Card)卡替代。
根据本发明的另一个实施例,本发明实施例的边缘计算平台中部署的第一存储器采用EEPROM存储器、FRAM存储器和ReRAM存储器中的任意一种存储器,第二存储器采用eMMC存储器、UFS存储器、SSD存储器、NVMe存储器、MRAM存储器、SD(Secure Digital MemoryCard)卡以及TF(TransFlash Memory Card)卡中的任意一种存储器。
为了示意,下面结合附图和实施例,以NORFlash存储器为第一存储器并以eMMC存储器为第二存储器为例,示意性说明本发明实施例的操作系统的启动和运行、更新的流程。采用其他种类的第一存储器或者第二存储器的情况类似,此处不作赘述。
根据本发明的一个实施例,仍旧参考图5,其为本发明实施例的边缘计算平台框架图,其中,边缘计算平台300包括:NORFlash存储器310、eMMC存储器320和内存330。如图6所示,其为本发明实施例的边缘计算平台上的操作系统的启动和运行、更新流程图。
下面将结合图5和图6来说明本发明实施例的Linux操作系统的启动和运行、更新流程,Linux操作系统的启动和运行、更新流程为:
S0、对操作系统进行裁剪,即将Linux操作系统进行裁剪,其中,裁剪后的Linux操作系统在功能上满足边缘计算平台300以及用户需求、在容量上满足NORFlash存储器310中的存储容量;
S1、上电,即对边缘计算平台300上电;
S2、对NORFlash存储器310和eMMC存储器320进行分区,即根据本发明的一个实施例,将NORFlash存储器310进行分区,此分区包括:引导加载程序分区311、第一内核分区312、第一根文件系统分区313以及第一用户分区314;其中,引导加载程序分区311用于存储Linux操作系统的引导加载程序;第一内核分区312用于存储Linux操作系统的内核、设备树的文件和数据;第一根文件系统分区313用于存储Linux操作系统的根文件系统的文件和数据;第一用户分区314用于存储在NORFlash存储器310中启动和运行Linux操作系统后用户编辑的文件和数据,其第一用户分区314中还存储需要运行Linux操作系统的最少文件和数据;将eMMC存储器320进行分区,此分区包括:第二内核分区321、第二根文件系统分区322、系统工具分区323以及第二用户分区324;其中,第二内核分区321用于存储Linux操作系统的内核、设备树的文件和数据;第二根文件系统分区322用于存储Linux操作系统的根文件系统的文件和数据;系统工具分区323用于存储在第二存储器中启动和运行Linux操作系统后用户编辑的系统工具的文件和数据;第二用户分区324用于存储在第二存储器中启动和运行Linux操作系统后用户编辑的文件和数据;其中,第一内核分区312和第二内核分区321的内核、设备树的文件和数据在内容和版本上保持一致,第一根文件系统分区313和第二根文件系统分区322的根文件系统的文件和数据在内容和版本上保持一致。根据本发明的另一个实施例,NORFlash存储器310的第一根文件系统分区313被配置为采用ramdisk文件系统存储所述Linux操作系统的根文件系统的文件和数据,其中,ramdisk文件系统为可读写文件系统;NORFlash存储器320的第一用户分区314被配置为采用JFFS2文件系统存储在NORFlash存储器中启动和运行所述Linux操作系统后用户编辑的文件和数据,其中,JFFS2文件系统为可读写文件系统,本发明实施例通过将根文件系统的文件和数据与用户的编辑的文件和数据分开,即满足了Linux操作系统的稳定运行,又满足了用户可以更方便更新第一用户分区314的文件和数据;eMMC存储器320的第二根文件系统分区322、系统工具分区323以及第二用户分区324被配置为采用EXT文件系统存储各分区对应的文件和数据;
S3、将操作系统配置于分区中,即根据本发明的一个实施例,将Linux操作系统的内核、设备树的文件和数据配置于第一内核分区312,将Linux操作系统的根文件系统的文件和数据配置于第一根文件系统分区313;将Linux操作系统的内核、设备树的文件和数据配置于第二内核分区321,将Linux操作系统的根文件系统的文件和数据配置于第二根文件系统分区322;
S4、读取引导加载程序,即从NORFlash存储器310的引导加载程序分区311中读取引导加载程序;
S5、选择启动Linux操作系统的方式,即通过在NORFlash存储器310的引导加载程序分区311中选择从NORFlash存储器310或eMMC存储器320启动和运行Linux操作系统,其中,在需要稳定运行时,从NORFlash存储器310启动和Linux运行操作系统;在需要更新方便时,从eMMC存储器320启动和运行Linux操作系统。
需要说明的是,对NORFlash存储器310和eMMC存储器320进行分区的方式只是本发明的一个实施例,实际分区过程需要考虑多个因素,包括操作系统、磁盘大小、文件系统和应用程序需求等,只有综合考虑这些因素,才能设计出合理的存储器分区方案,本发明实施例中不做过多赘述。
通过上述步骤可知,若需要稳定运行,则选择从NORFlash存储器启动和运行Linux操作系统,转至步骤S5;若需要更新方便时,则选择从eMMC存储器320启动和运行Linux操作系统,转至步骤S6。下面分别介绍在不同的存储器中启动和运行、更新Linux操作系统流程。
(1)从NORFlash存储器启动和运行Linux操作系统
在步骤S5中,从NORFlash存储器310启动和运行Linux操作系统,即在用户需要边缘计算平台300中的Linux操作系统稳定运行时,选择从NORFlash存储器310中启动和运行Linux操作系统;Linux操作系统的启动和运行的示意性流程包括:
S51、读取引导加载程序,即对边缘计算平台300上电后,在NORFlash存储器310的引导加载程序分区311中读取引导加载程序;
S52、拷贝文件和数据到内存,即根据引导加载程序在NORFlash存储器310的第一内核分区312中拷贝内核、设备树的文件和数据以及NORFlash存储器310的第一根文件系统分区313中拷贝根文件系统的文件和数据到内存330;
S53、启动和运行操作系统,即基于内存330中的内核、设备树的文件和数据以及根文件系统的文件和数据,引导启动和运行Linux操作系统。
(2)更新NORFlash存储器中的各分区的文件和数据
根据本发明的另一个实施例,在步骤S53中启动和运行Linux操作系统后,执行步骤S54来更新分区中的文件和数据,即边缘计算平台300还被配置为在NORFlash存储器310启动和运行Linux操作系统后,通过如下方式更新NORFlash存储器310的第一内核分区312中Linux操作系统的内核、设备树的文件和数据和第一根文件系统分区313中Linux操作系统的根文件系统的文件和数据以及第一用户分区314中在NORFlash存储器310中启动和运行Linux操作系统后用户编辑的文件和数据:从NORFlash存储器310启动和运行Linux操作系统后,通过调用flash烧写工具更新NORFlash存储器310的第一内核分区312中Linux操作系统的内核、设备树的文件和数据和第一根文件系统分区313中Linux操作系统的根文件系统的文件和数据,其中,对eMMC存储器320的第二内核分区321中Linux操作系统的内核、设备树的文件和数据以及第二根文件系统分区322中的Linux操作系统的文件和数据进行更新后,通过调用flash烧写工具将更新后的第二内核分区321中Linux操作系统的内核、设备树的文件和数据拷贝至NORFlash存储器310的第一内核分区312和将更新后的第二根文件系统分区322中的Linux操作系统的文件和数据拷贝至NORFlash存储器310的第一根文件系统分区313;在eMMC存储器320启动和运行Linux操作系统时,挂载NORFlash存储器310的第一用户分区314和eMMC存储器320的第二用户分区324,将eMMC存储器320的第二用户分区324中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的文件和数据拷贝至NORFlash存储器310的第一用户分区314中以实现可直接更新NORFlash存储器310的第一用户分区314的文件和数据。
(3)从eMMC存储器启动和运行Linux操作系统
在步骤S6中,从eMMC存储器320启动和运行Linux操作系统,即用户需要对边缘计算平台300的操作系统的文件和数据以及启动Linux操作系统后用户编辑的文件和数据等内容的更新更方便时,选择从eMMC存储器320中启动和运行Linux操作系统;Linux操作系统的启动和运行的示意性流程包括:
S61、读取引导加载程序,即对边缘计算平台300上电后,在NORFlash存储器310的引导加载程序分区311中读取引导加载程序;
S62、拷贝文件和数据到内存,即根据引导加载程序在eMMC存储器320的第二内核分区321中拷贝设内核、设备树的文件和数据以及eMMC存储器320的第二根文件系统分区322中拷贝根文件系统的文件和数据到内存330;
S63、启动和运行操作系统,即基于内存330中的内核、设备树的文件和数据以及根文件系统的文件和数据,引导启动和运行Linux操作系统。
(4)更新eMMC存储器中的各分区的文件和数据
根据本发明的另一个实施例,在步骤S63中启动和运行Linux操作系统后,执行步骤S64来更新分区中的文件和数据,即边缘计算平台300还被配置为在eMMC存储器320启动和运行Linux操作系统后,通过如下方式更新eMMC存储器320的第二内核分区321中Linux操作系统的内核。设备树的文件和数据和第二根文件系统分区322中Linux操作系统的根文件系统的文件和数据、系统工具分区323中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的系统工具的文件和数据以及第二用户分区324中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的文件和数据:从eMMC存储器320启动和运行Linux操作系统后,通过格式化再解压拷贝方式更新eMMC存储器320的第二根文件系统分区322中Linux操作系统的根文件系统的文件和数据;通过直接替换方式更新eMMC存储器320的第二内核分区321中Linux操作系统的内核、设备树的文件和数据;挂载eMMC存储器320的系统工具分区323以实现可直接更新eMMC存储器320的系统工具分区323中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的系统工具的文件和数据,其中,系统工具分区323中用户编辑的系统工具的文件和数据包括:将用户编译、调试、验证以及开发等常用工具的文件和数据存储在eMMC存储器320的系统工具分区323中,用户可按通用方式安装、卸载系统应用工具等,同时也解决了用户在线调试需求和存储空间占用的矛盾等问题;挂载eMMC存储器320的第二用户分区324以实现可直接更新eMMC存储器320的第二用户分区324中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的文件和数据,且从eMMC存储器启动和运行Linux操作系统后,通过调试后的Linux操作系统或用户编辑的文件和数据可以同步更新至NORFlash存储器310中。其中,对第一用户分区314和第二用户分区324的更新包括:用户可以实时增加、删除以及修改第一用户分区314和第二用户分区324中的文件和数据,此状态下用户也可以直接在边缘计算平台300上进行开发、移植等工作。通过将系统工具分区323和第二用户分区324挂载到不同的路径中,可以更好地保护和管理分区中的文件和数据,提高Linux操作系统的稳定性和安全性。
根据本发明的一个实施例,结合图5和图7来说明本发明实施例的Linux操作系统的启动和运行、更新流程,Linux操作系统的启动和运行、更新流程包括:
Q1、上电,即通过对边缘计算平台300上电;
Q2、从引导加载程序分区311中加载运行引导加载程序,即,对边缘计算平台300上电后,从NORFlash存储器310中的引导加载程序分区311中加载运行Linux操作系统的引导加载程序;
Q3、引导加载程序选择启动方式,即加载运行Linux操作系统的引导加载程序后,选择从NORFlash存储器310或eMMC存储器320启动和运行Linux操作系统。若需要稳定运行,则选择从NORFlash存储器启动和运行Linux操作系统,转至步骤Q4;若需要更新方便时,则选择从eMMC存储器320启动和运行Linux操作系统,转至步骤Q5。下面分别介绍在不同的存储器中启动和运行、更新Linux操作系统流程。
(1)从NORFlash存储器启动和运行操作系统的流程为:
Q4、从NORFlash启动,配置启动Linux操作系统的文件和数据,即当从NORFlash存储器310中启动和运行Linux操作系统时,自动配置启动和运行Linux操作系统的文件和数据,Q4包括:
Q41、从NORFlash存储器310的第一内核分区312拷贝设备树、内核到内存;
Q42、从NORFlash存储器310的第一根文件系统分区313拷贝根文件系统到内存并启动Linux操作系统。
在上述步骤Q41和Q42中,通过从NORFlash存储器310的第一内核分区312的Linux操作系统的内核、设备树的文件和数据以及第一根文件系统分区313的Linux操作系统的根文件系统的文件和数据拷贝至内存330,并在内存330中启动和运行Linux操作系统。
(2)更新NORFlash存储器310的各分区的文件和数据的流程为:Q43、从NORFlash存储器310的第一用户分区拷贝用户分区镜像;Q44、挂载第一用户分区;Q45、启用网口服务;Q46、调用flash烧写工具对第一内核分区312、第一根文件系统分区313进行更新;Q56、eMMC第二用户分区中的文件和数据拷贝至NORFlash的第一用户分区,即从NORFlash存储器310中启动和运行Linux操作系统后,通过从NORFlash存储器310的第一用户分区314拷贝用户分的镜像文件和数据并挂载第一用户分区314至第一根文件系统分区313中的某一路径下,当从eMMC存储器320启动和运行Linux操作系统后,挂载eMMC存储器320的第二用户分区324,将eMMC存储器320的第二用户分区324中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的文件和数据拷贝至NORFlash存储器310的第一用户分区314中以实现可直接更新NORFlash存储器310的第一用户分区314的文件和数据;当启动和运行Linux操作系统后,启用边缘计算平台300中的网口服务,通过调用flash烧写工具与网口服务连接更新NORFlash存储器310的第一内核分区312中Linux操作系统的内核、设备树的文件和数据和第一根文件系统分区313中Linux操作系统的根文件系统的文件和数据,其中,对eMMC存储器320的第二内核分区321中Linux操作系统的内核、设备树的文件和数据以及第二根文件系统分区322中的Linux操作系统的文件和数据进行更新后,通过调用flash烧写工具将更新后的第二内核分区321中Linux操作系统的内核、设备树的文件和数据拷贝至NORFlash存储器310的第一内核分区312和将更新后的第二根文件系统分区322中的Linux操作系统的文件和数据拷贝至NORFlash存储器310的第一根文件系统分区313。
(3)从eMMC存储器启动和运行操作系统的流程为:
Q5、从eMMC启动,配置启动Linux操作系统的文件和数据,即当从eMMC存储器320中启动和运行Linux操作系统时,自动配置启动和运行Linux操作系统的文件和数据,Q5包括:
Q51、从eMMC存储器320的第二内核分区321拷贝设备树、内核到内存;
Q52、从eMMC存储器320的第二根文件系统分区322挂载根文件系统并启动操作系统。
在步骤Q51和Q52中,通过从eMMC存储器320的第二内核分区321的Linux操作系统的内核、设备树的文件和数据以及第二根文件系统分区322的Linux操作系统的根文件系统的文件和数据拷贝至内存330,并在内存330中启动和运行Linux操作系统。
(4)更新eMMC存储器320的各分区的文件和数据的流程为:在步骤Q52中,从eMMC存储器320启动和运行操作系统时,挂载了第二根文件系统分区322;Q53、挂载系统工具分区;Q54、挂载第二用户分区;
Q55、更新eMMC分区中的文件和数据;即通过从eMMC存储器320启动和运行操作系统时,分别将第二根文件系统分区322、系统工具分区323以及第二用户分区324挂载至不同的路径下,通过格式化再解压拷贝方式更新eMMC存储器320的第二根文件系统分区322中Linux操作系统的根文件系统的文件和数据;通过直接替换方式更新eMMC存储器320的第二内核分区321中Linux操作系统的内核、设备树的文件和数据;挂载eMMC存储器320的系统工具分区323以实现可直接更新所述eMMC存储器320的系统工具分区中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的系统工具的文件和数据;挂载eMMC存储器320的第二用户分区324以实现直接更新eMMC存储器320的第二用户分区324中在eMMC存储器320中启动和运行Linux操作系统后用户编辑的文件和数据。
由上述可知,得出以下结论:结论1:本发明实施例的边缘计算平台300上,第一根文件系统分区313中的根文件系统的文件和数据采用ramdisk文件系统进行存储,且ramdisk文件系统为可读写文件系统,使得用户可直接修改或替换文件和数据,进而提高了更新Linux操作系统的易操作性,进一步地,采用ramdisk文件系统存储文件和数据相较于采用JFFS2文件系统存储文件和数据时(JFFS2文件系统存储根文件系统的文件和数据对Linux操作系统的安全稳定运行有一定的风险),提高了操作系统的启动和运行速度更快,且满足了Linux操作系统的安全稳定运行;结论2:本发明实施例中在NORFlash存储器310和eMMC存储器320中启动和运行Linux操作系统都是在内存330中进行,提高了Linux操作系统启动和运行的速度;结论3:本发明实施例提供一种边缘计算平台300,用户可以根据不同的需求从边缘计算平台300中的不同的存储器中启动和运行Linux操作系统,即当需要边缘计算平台300中的Linux操作系统安全稳定运行时,从NORFlash存储器310启动和运行Linux操作系统;当需要对边缘计算平台300的操作系统的文件和数据以及启动Linux操作系统后用户编辑的文件和数据等内容的更新更方便时,进而满足用户在调试和部署Linux操作系统过程中的易用性及兼容性,从eMMC存储器320启动和运行Linux操作系统。
需要说明的是,本发明实施例中使用的操作系统为Linux操作系统,还可以是macOS操作系统、FreeBSD操作系统以及Solaris操作系统等,本发明实施例不限定具体的操作系统。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (14)
1.一种边缘计算平台,其特征在于,所述平台包括:第一存储器、第二存储器,其中,所述第一存储器、第二存储器中配置有相同的操作系统,其中,所述第一存储器支持所述操作系统稳定运行,所述第二存储器支持所述操作系统更新,且所述边缘计算平台被配置为:
在需要稳定运行时,从第一存储器启动和运行所述操作系统;
在需要更新方便时,从第二存储器启动和运行所述操作系统;
其中,配置在所述第一存储器、第二存储器中的所述操作系统是预先裁剪好的、在功能上满足边缘计算平台以及用户需求、在容量上满足所述第一存储器和第二存储器中的最小存储容量的所述操作系统。
2.根据权利要求1所述的边缘计算平台,其特征在于,所述第一存储器为NORFlash,所述第二存储器为eMMC,所述操作系统为Linux操作系统。
3.根据权利要求1所述的边缘计算平台,其特征在于,
所述第一存储器包括:引导加载程序分区、第一内核分区、第二根文件系统分区以及第一用户分区;所述引导加载程序分区用于存储所述操作系统的引导加载程序;所述第一内核分区用于存储所述操作系统的内核、设备树的文件和数据;所述第二根文件系统分区用于存储所述操作系统的根文件系统的文件和数据;所述第一用户分区用于存储在第一存储器中启动和运行所述操作系统后用户编辑的文件和数据;
所述第二存储器包括:第二内核分区、第二根文件系统分区、系统工具分区以及第二用户分区;所述第二内核分区用于存储所述操作系统的内核、设备树的文件和数据;所述第二根文件系统分区用于存储所述操作系统的根文件系统的文件和数据;所述系统工具分区用于存储在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据;所述第二用户分区用于存储在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据;
其中,所述第一内核分区和所述第二内核分区的内核、设备树的文件和数据在内容和版本上保持一致,所述第一根文件系统分区和所述第二根文件系统分区的根文件系统的文件和数据在内容和版本上保持一致。
4.根据权利要求3所述的边缘计算平台,其特征在于,
所述第一存储器的第一根文件系统分区被配置为采用ramdisk文件系统存储所述操作系统的根文件系统的文件和数据;
所述第一存储器的第一用户分区被配置为采用JFFS2文件系统存储在第一存储器中启动和运行所述操作系统后用户编辑的文件和数据。
5.根据权利要求3所述的边缘计算平台,其特征在于,所述第一存储器的引导加载程序分区还被配置为可选择从所述第一存储器或所述第二存储器启动和运行所述操作系统。
6.根据权利要求3所述的边缘计算平台,其特征在于,所述边缘计算平台还包括第三存储器,其中,第三存储器为内存,用于将所述第一存储器的第一内核分区中的内核、设备树的文件和数据以及所述第一存储器的第一根文件系统分区中的根文件系统的文件和数据拷贝至所述内存以启动和运行所述操作系统或将所述第二存储器的第二内核分区中的内核、设备树的文件和数据以及所述第二存储器的第二根文件系统分区中的根文件系统的文件和数据拷贝至所述内存以启动和运行所述操作系统。
7.根据权利要求6所述的边缘计算平台,其特征在于,所述边缘计算平台被配置为在需要稳定运行时,通过如下方式从第一存储器启动和运行所述操作系统:
在所述第一存储器的引导加载程序分区中读取引导加载程序;
根据所述引导加载程序在所述第一存储器的第一内核分区中拷贝内核、设备树的文件和数据以及所述第一存储器的第一根文件系统分区中拷贝根文件系统的文件和数据到所述内存;
基于所述内存中的内核、设备树的文件和数据以及根文件系统的文件和数据,引导启动和运行所述操作系统。
8.根据权利要求6所述的边缘计算平台,其特征在于,所述边缘计算平台被配置为在需要更新方便时,通过如下方式从第二存储器启动和运行所述操作系统:
在所述第一存储器的引导加载程序分区中读取引导加载程序;
根据所述引导加载程序在所述第二存储器的第二内核分区中拷贝设内核、设备树的文件和数据以及所述第二存储器的第二根文件系统分区中拷贝根文件系统的文件和数据到所述内存;
基于所述内存中的内核、设备树的文件和数据以及根文件系统的文件和数据,引导启动和运行所述操作系统。
9.根据权利要求3所述的边缘计算平台,其特征在于,所述边缘计算平台还被配置为在所述第一存储器启动和运行所述操作系统后,通过如下方式更新所述第一存储器的第一内核分区中所述操作系统的内核、设备树的文件和数据和所述第一根文件系统分区中所述操作系统的根文件系统的文件和数据以及所述第一用户分区中在第一存储器中启动和运行所述操作系统后用户编辑的文件和数据:
通过调用flash烧写工具更新所述第一存储器的第一内核分区中所述操作系统的内核、设备树的文件和数据和所述第一根文件系统分区中所述操作系统的根文件系统的文件和数据;
在所述第二存储器启动和运行所述操作系统时,挂载所述第一存储器的第一用户分区和所述第二存储器的第二用户分区,将所述第二存储器的第二用户分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据拷贝至所述第一存储器的第一用户分区中以实现可直接更新第一存储器的第一用户分区的文件和数据。
10.根据权利要求3所述的边缘计算平台,其特征在于,所述边缘计算平台还被配置为在所述第二存储器启动和运行所述操作系统后,通过如下方式更新所述第二存储器的第二内核分区中所述操作系统的内核、设备树的文件和数据和所述第二根文件系统分区中所述操作系统的根文件系统的文件和数据、所述系统工具分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据以及第二用户分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据:
通过格式化再解压拷贝方式更新所述第二存储器的所述第二根文件系统分区中所述操作系统的根文件系统的文件和数据;
通过直接替换方式更新所述第二存储器的第二内核分区中所述操作系统的内核、设备树的文件和数据;
挂载所述第二存储器的系统工具分区以实现可直接更新所述第二存储器的系统工具分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据;
挂载所述第二存储器的第二用户分区以实现直接更新所述第二存储器的第二用户分区中在第二存储器中启动和运行所述操作系统后用户编辑的文件和数据。
11.一种采用权利要求1-10任一所述边缘计算平台的操作系统的启动和运行方法,其特征在于,所述方法包括:
在所述边缘计算平台上的第一存储器和第二存储器中配置两个相同的所述操作系统,其中,第一存储器支持所述操作系统稳定运行,第二存储器支持所述操作系统更新,且边缘计算平台
在需要稳定运行时,从所述第一存储器启动和运行所述操作系统;
在需要更新方便时,从所述第二存储器启动和运行所述操作系统;
其中,配置在所述第一存储器、第二存储器中的所述操作系统是预先裁剪好的、在功能上满足边缘计算平台以及用户需求,在容量上满足所述第一存储器和所述第二存储器中的最小存储容量的操作系统。
12.根据权利要求11所述的方法,其特征在于,该方法还包括:
从所述第一存储器启动和运行所述操作系统后,通过调用flash烧写工具更新所述第一存储器的第一内核分区中所述操作系统的内核、设备树的文件和数据和所述第一根文件系统分区中所述操作系统的根文件系统的文件和数据;在所述第二存储器启动和运行所述操作系统时,挂载所述第一存储器的第一用户分区和所述第二存储器的第二用户分区,将所述第二存储器的第二用户分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的文件和数据拷贝至所述第一存储器的第一用户分区中以实现可直接更新第一存储器的第一用户分区的文件和数据。
从所述第二存储器启动和运行所述操作系统后,通过格式化再解压拷贝方式更新所述第二存储器的所述第二根文件系统分区中所述操作系统的根文件系统的文件和数据;通过直接替换方式更新所述第二存储器的第二内核分区中所述操作系统的内核、设备树的文件和数据;挂载所述第二存储器的系统工具分区以实现可直接更新所述第二存储器的系统工具分区中在所述第二存储器中启动和运行所述操作系统后用户编辑的系统工具的文件和数据;挂载所述第二存储器的第二用户分区以实现直接更新所述第二存储器的第二用户分区中在第二存储器中启动和运行所述操作系统后用户编辑的文件和数据。
13.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序可被处理器执行以实现权利要求11-12中任一项所述方法的步骤。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求11-12中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310511119.4A CN116610446A (zh) | 2023-05-08 | 2023-05-08 | 一种边缘计算平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310511119.4A CN116610446A (zh) | 2023-05-08 | 2023-05-08 | 一种边缘计算平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116610446A true CN116610446A (zh) | 2023-08-18 |
Family
ID=87684572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310511119.4A Pending CN116610446A (zh) | 2023-05-08 | 2023-05-08 | 一种边缘计算平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610446A (zh) |
-
2023
- 2023-05-08 CN CN202310511119.4A patent/CN116610446A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106227579B (zh) | 一种Docker容器构建方法及Docker管理控制台 | |
US6052778A (en) | Embedded system having dynamically linked dynamic loader and method for linking dynamic loader shared libraries and application programs | |
WO2022007656A1 (zh) | Bootloader软件更新方法、装置、嵌入式控制器以及存储介质 | |
US8745601B1 (en) | Methods and systems for using data structures for operating systems | |
KR100415371B1 (ko) | 컴퓨터 | |
US20140325496A1 (en) | Apparatus and method for firmware upgrade using usb | |
KR20150052107A (ko) | Bpram을 이용한 운영체제의 레이아웃 및 실행 | |
CN114579148A (zh) | 操作系统的安装方法及装置 | |
CN111694580B (zh) | 存储设备升级及初始化的方法、装置、电子设备 | |
JP2012068797A (ja) | 起動高速化方法、情報処理装置及びプログラム | |
CN116610446A (zh) | 一种边缘计算平台 | |
US7234039B1 (en) | Method, system, and apparatus for determining the physical memory address of an allocated and locked memory buffer | |
KR20170037017A (ko) | 메모리 업그레이드 시스템 및 방법 | |
WO2018100633A1 (ja) | 制御装置およびプログラム更新方法 | |
CN115617488A (zh) | 操作系统迁移方法、装置、计算设备及存储介质 | |
CN114756296A (zh) | 可读写挂载启动方法、装置、存储介质及电子设备 | |
CN111258617B (zh) | 一种电子设备 | |
JP2008059339A (ja) | 制御装置 | |
JP4735765B2 (ja) | Linuxプログラム起動システム | |
WO2020235360A1 (ja) | 車両用装置 | |
KR101113342B1 (ko) | 이동통신 단말기의 부트로더 버전 관리 방법 | |
CN113448639B (zh) | 用户配置变量区的访问方法、装置、设备和存储介质 | |
JP2017142754A (ja) | 情報処理装置及びその制御方法、及びプログラム | |
JP2009265923A (ja) | ソフトウェア書き換え装置及びソフトウェア書き換え方法及びソフトウェア書き換えプログラム | |
JP2006126987A (ja) | 画像処理装置 |
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 |