CN114127685A - 电子设备及其控制方法 - Google Patents
电子设备及其控制方法 Download PDFInfo
- Publication number
- CN114127685A CN114127685A CN202080050349.XA CN202080050349A CN114127685A CN 114127685 A CN114127685 A CN 114127685A CN 202080050349 A CN202080050349 A CN 202080050349A CN 114127685 A CN114127685 A CN 114127685A
- Authority
- CN
- China
- Prior art keywords
- operating system
- data
- electronic device
- memory
- reference data
- 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
- 238000000034 method Methods 0.000 title claims description 74
- 230000008569 process Effects 0.000 claims description 31
- 238000005192 partition Methods 0.000 claims description 12
- 238000013508 migration Methods 0.000 description 36
- 230000005012 migration Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 29
- 238000012545 processing Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 239000004973 liquid crystal related substance Substances 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
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
- 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
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading of the microprogram
-
- 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/4403—Processor initialisation
-
- 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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
一种电子设备,其包括存储器、存储装置和处理器,存储装置配置成存储第一操作系统,处理器配置成:通过将存储在存储装置中的第一操作系统加载到存储器来执行启动,并且将基于第一操作系统运行而获得的数据存储在存储装置中;将获得的第二操作系统和存储在存储装置中的数据加载到存储器中;识别加载到存储器中的第二操作系统和数据之间的操作兼容性;基于识别出正常的操作兼容性,通过将第二操作系统加载到存储器来执行启动;以及基于识别出异常的操作兼容性,通过将第一操作系统加载到存储器来执行启动。
Description
技术领域
本公开涉及一种由操作系统驱动的电子设备及其控制方法,并且例如涉及这样的电子设备及其控制方法,该电子设备的预装操作系统被另一操作系统替换或者被升级为不同版本的操作系统。
背景技术
为了根据某些处理来计算和处理预定信息,电子设备总体上包括中央处理单元(CPU)、芯片组、存储器等用于计算的电子组件。这样的电子设备可以根据将处理什么信息以及它用于什么来进行各种分类。例如,电子设备被分类为:用于处理一般信息的信息处理设备,例如个人计算机(PC)、服务器等;用于处理图像数据的图像处理设备;用于音频处理的音频设备;用于各种各样的家务的家用电器;等等。图像处理设备可以由显示设备来实现,该显示设备基于经处理图像数据在其自身的显示面板上显示图像。
就硬件而言,电子设备基于中央处理单元(CPU)、控制器或处理器的操作来操作。此外,就软件而言,通过操作系统等平台或者通过在平台上执行的中间件或应用来实现电子设备。换句话说,电子设备基本上需要安装有适当的操作系统以便正常操作。当电子设备被启动(boot)时,可以基于启动加载器或启动脚本来调用和执行操作系统,并且在操作系统上实现各种应用或功能。
应用用于根据硬件或软件来升级电子设备的各种装置来添加新的功能或开发现有的功能。作为各种升级手段之一,存在一种升级、更新或替换操作系统的方法。电子设备可以从连接的外部设备接收新的操作系统,或者可以通过网络从服务器接收新的操作系统。在下次启动时,利用这种新的操作系统启动电子设备。
然而,为了执行电子设备的操作,电子设备不仅仅需要操作系统。例如,电子设备累积地存储在使用先前操作系统时的一段时间内所参考的各种类型的参考数据。操作系统参考该参考数据,使得电子设备可以实现反映用户偏好或使用环境的操作和功能。因此,即使当在电子设备中升级操作系统之后,从维持使用连续性考虑,优选的是连续使用先前操作系统所参考的参考数据。
然而,软件的升级或替换通常可能引起兼容性问题。由先前操作系统参考的参考数据与先前操作系统具有兼容性,但不能确保与新的操作系统具有兼容性。当电子设备在其操作系统被新的操作系统替换之后被第一次启动时,新的操作系统参考先前参考数据。然而,当新的操作系统与先前参考数据不兼容时,电子设备无法操作。此外,甚至当在操作系统升级的过程中电子设备关闭或类似的意外事件发生时,操作系统没有被完全升级,因此电子设备无法操作。
因此,当操作系统升级时,电子设备可能需要处理新的操作系统和先前参考数据之间的兼容性问题或其他各种错误。
发明内容
根据本公开的示例性实施例,提供了一种电子设备,该电子设备包括存储器、存储装置和处理器,存储装置配置成存储第一操作系统,处理器配置成:通过将存储在存储装置中的第一操作系统加载到存储器来执行启动,并且将基于第一操作系统运行而获得的数据存储在存储装置中;将获得的第二操作系统和存储在存储装置中的数据加载到存储器中;识别加载到存储器的第二操作系统与数据之间的操作兼容性;基于识别出正常的操作兼容性,通过将第二操作系统加载到存储器来执行启动;以及基于识别出异常的操作兼容性,通过将第一操作系统加载到存储器来执行启动。
处理器可配置成:将存储在存储装置中的数据转换为适于与第二操作系统对应的数据形式,并且将经转换数据加载到存储器。
处理器可配置成:基于识别出正常的操作兼容性,将经转换数据存储在存储装置中以替换存储在存储装置中的数据。
处理器可配置成:当经转换数据在存储器中被生成并被存储在存储装置中时,将经转换数据与在电子设备中运行的预定进程隔离开。
处理器可配置成:将与第二操作系统对应的数据加载到存储器,并且利用存储在存储装置中的数据的值来调整根据与第二操作系统对应的数据的项目所得的值。
处理器可配置成:基于获得第二操作系统而将第二操作系统存储在存储装置中,并且通过基于第二操作系统启动而将存储在存储装置中的数据加载到存储器。
处理器可配置成:将数据加载到存储器,使得数据可在存储器中的、加载有第二操作系统的存储区域中被覆盖。
处理器可配置成:将第一操作系统和第二操作系统存储在存储装置中彼此分开的单独的分区中。
处理器可配置成:将所述数据存储在存储装置中的、与存储第一操作系统和第二操作系统的分区分开的分区中。
处理器可配置成:基于识别出异常的操作兼容性,通过将第二操作系统加载到存储器以使用提供给第二操作系统的默认数据来执行启动。
根据本公开的另一示例性实施例,提供了一种控制电子设备的方法,该方法包括:通过将存储在存储装置中的第一操作系统加载到存储器来执行启动,并且将基于第一操作系统运行而获得的数据存储在存储装置中;将获得的第二操作系统和存储在存储装置中的数据加载到存储器中;识别加载到存储装置的第二操作系统与所述数据之间的操作兼容性;基于识别出正常的操作兼容性,通过将第二操作系统加载到存储器来执行启动;基于识别出异常的操作兼容性,通过将第一操作系统加载到存储器来执行启动。
附图说明
图1是示出根据实施例的电子设备获得操作系统的示例性方法的图;
图2是示出根据实施例的示例性电子设备的框图;
图3是示出根据实施例的电子设备的控制方法中的示例性过程的流程图;
图4是示出根据实施例的电子设备中根据时间区段执行的示例性过程的图;
图5是示出根据实施例的当电子设备获得第二操作系统的包数据时存储包数据的示例性方法的框图;
图6是示出根据实施例的对第一参考数据执行示例性数据迁移的电子设备的框图;
图7是示出根据实施例的检查第二操作系统和第三参考数据之间的操作兼容性的电子设备的框图;
图8是示出根据实施例的在将第三参考数据存储在存储装置中之后被重启的电子设备的框图;
图9是示出根据实施例的电子设备检查用于升级的第二操作系统与先前使用的第一参考数据之间的操作兼容性的示例性过程的流程图;
图10是示出根据实施例的由电子设备执行的示例性数据迁移方法的图;
图11是示出根据实施例的接收用于对操作系统的一些数据代码进行升级的数据的电子设备的框图;
图12是示出根据实施例的对第一参考数据执行数据迁移的电子设备的框图;
图13是示出根据实施例的检查第二RO数据和第三参考数据之间的操作兼容性的电子设备的框图;
图14是示出根据实施例的在将第三参考数据存储在存储装置中之后被重启的电子设备的框图;
图15是示出根据实施例的可应用于电子设备的示例性覆盖文件系统的图;以及
图16是示出根据实施例的在第二操作系统和第二参考数据被覆盖和安装的状态下执行数据迁移的电子设备的框图。
具体实施方式
下面,将参考附图更详细地描述各种示例性实施例。此外,除非另有说明,参考附图描述的各种示例性实施例不是彼此排他的,并且多个实施例可以选择性地在一个设备内组合。这些多个实施例的组合可以被任意地选择和应用。
在本公开中,使用例如第一元件、第二元件等术语中使用的序数来描述各种元件,并且这些术语用于将一个元件与另一个元件区分开。因此,这些元件的含义不受这些术语的限制,并且这些术语也仅用于解释相应的实施例而不限制本公开。
此外,本公开中的多个元件中的术语“至少一个”不仅表示所有元件,而且还表示元件中的每一个,其排除其他元件或所述元件的所有组合。
图1是示出根据实施例的电子设备获得操作系统的示例性方法的图。
如图1所示,根据示例性实施例的电子设备110由电视(TV)或类似的显示设备来实现。然而,显示设备仅仅是电子设备110的示例,并且电子设备110可以由基本上基于操作系统操作的任何设备来实现。例如,电子设备110可以是显示设备,例如监视器、平板计算机、便携式多媒体设备、电子框架、电视等;不具有显示面板的图像处理设备,例如机顶盒、蓝光播放器等;家用电器,例如洗衣机、冰箱、衣物管理器、空调等。此外,电子设备110可以是固定到一个地方的固定设备或者例如智能电话、可穿戴设备等的移动设备。
电子设备110基于硬件和软件之间的关联进行操作。例如,电子设备110基于平台代码的执行作为处理器操作执行操作。在电子设备110中使用的平台代码例如可以包括操作系统,例如内核。
电子设备110的操作系统可以根据各种需求来升级,该需求例如为优化、添加新功能、开发现有功能、应对新标准等。升级或更新方法可以包括:用新的操作系统完全替换先前安装的旧的操作系统的方法,以及替换旧的操作系统的全部数据代码中的一些数据代码的方法。两种方法都基于本公开的构思。
电子设备110可以通过各种路径获得用于升级的新的操作系统。例如,电子设备110可以从连接到外部端口的存储器设备130获得新的操作系统的包数据。电子设备110可以通过网络从服务器120获得新的操作系统的包数据。
操作系统的包数据例如可以指从操作系统的数据代码编码、压缩或封装成可由电子设备的处理器处理的预设格式的数据,并且也可以被称为操作系统的数据图像。这种格式可以基于各种数据压缩技术。通常,操作系统的包数据被存储在电子设备110的非易失性存储介质中。
操作系统在其从包数据中解码或解包的状态下执行。当电子设备110被启动时,从存储在非易失性存储介质中的操作系统的包数据中提取执行所需的数据代码(换句话说,在包数据被解包之后提取必要的数据代码),然后将其加载到易失性存储器中。将操作系统的、执行操作系统所需的数据代码加载到易失性存储器的这种过程可以参考例如正在安装的操作系统。准备就绪的操作系统也可以被认为是已装操作系统。当处理器执行已装操作系统的数据代码时,电子设备的操作系统被执行并且电子设备操作。
操作系统可以例如在运行时参考各种类型的参考数据。参考数据仅仅是为了便于描述而给出的术语,以指示刚才由操作系统参考或使用的数据,并且该术语本身不限制数据的属性。参考数据可以例如包括与针对电子设备110的各种功能的设置有关的设置信息、与用户的账户有关的账户信息、与电子设备110的用户使用历史有关的设备历史信息、与所查看的内容或所执行的应用的用户使用历史有关的内容历史信息等。这样,参考数据可以包括针对用户优化的与电子设备110有关的使用信息,其反映用户使用电子设备110的模式。操作系统参考这种参考数据,从而提供电子设备110的针对用户优化的操作或功能。
参考数据可以包括例如在使用电子设备110时可改变的允许改变数据。操作系统是在排除例如升级的特殊条件之外的一般使用期间不可改变的限制改变数据。在这点上,为了便于描述,操作系统可以被称为只读(RO)数据,并且参考数据可以被称为读写(RW)数据。
提供给电子设备110的新的操作系统的包数据包括新的RO数据(例如,新的操作系统)和新的RW数据(例如,新参考数据)。新的RO数据和新的RW数据是在开发阶段为正常操作(例如,当它们彼此关联时的兼容性)提供确保的数据。当电子设备110用新的RO数据替换旧RO数据(例如,旧的操作系统)并且使用新的RW数据替换旧RW数据时,不会反映先前已经应用到电子设备110的用户设置。
根据实施例,电子设备110允许新的RO数据在升级操作系统之后参考旧RW数据,从而确保使用连续性。在这种情况下,电子设备110执行用于确保新的RO数据和旧RW数据之间的兼容性的过程,并且该过程将在下面更详细地描述。
下面,将更详细地描述电子设备110的硬件。
图2是示出根据实施例的示例性电子设备的框图。
如图2所示,电子设备210包括通信器(例如,包括通信电路)211、信号输入/输出单元(例如,包括输入/输出电路)212、显示器213、用户输入单元(例如,包括用户输入电路)214、存储装置215、存储器216和处理器(例如,包括处理电路)217。在示例性实施例中,将描述电子设备210是显示设备。然而,电子设备210可以由各种电子设备来实现,因此电子设备210的硬件不限于示例性实施例。
通信器211例如可以涉及交互式通信电路,其包括与各种有线和无线通信协议对应的至少一个元件,例如通信模块、通信芯片等。例如,通信器211可以由基于Wi-Fi与接入点(AP)执行无线通信的无线通信模块来实现,或者通过经由布线连接到路由器或网关的局域网(LAN)卡来实现。例如,通信器211在网络上与服务器220通信,从而向服务器220发送数据包和从服务器220接收数据包。
信号输入/输出单元212可以包括例如各种输入/输出电路,并且可以包括通过电缆一对一或一对多地连接到例如机顶盒或光学媒体播放器的外部设备,从而从相应的外部设备接收数据或向相应的外部设备输出数据。信号输入/输出单元212可以例如包括各种输入/输出电路,例如但不限于根据预设传输标准的高清晰度多媒体接口(HDMI)端口、显示器端口、通用串行总线(USB)端口等连接器或端口。
显示器213包括能够在屏幕上显示图像的显示面板。显示面板设置为具有例如液晶型的光接收结构或例如有机发光二极管(OLED)型的自发射结构。显示器213可以包括根据显示面板的结构而定的附加元件。例如,当显示面板是液晶类型时,显示器213包括液晶显示面板、配置成发光的背光单元、以及配置成驱动液晶显示面板的液晶的面板驱动衬底。
用户输入单元214可以包括与各种输入接口相关的各种电路,这些输入接口用于由用户控制以进行输入。用户输入单元214可以根据电子设备210的种类进行各种配置,并且可以例如包括电子设备210的机械或电子按钮、与电子设备210分离的遥控器、触摸板、安装在显示器213中的触摸屏等。
存储装置215由处理器217访问,并且在处理器217的控制下执行例如针对数据的读取、记录、删除等操作。存储装置215例如可以包括保持数据而不管电源是接通还是断开的非易失性类型。存储装置215包括闪存、硬盘驱动器(HDD)、固态驱动器(SSD)等。存储装置215配置成基本上存储用于操作电子设备210的操作系统,并且另外存储在操作系统运行时由相应的操作系统参考的参考数据。
存储器216可以加载存储在存储装置215中的数据之中的、要由处理器217执行的数据。存储器216是在接通电源时保持数据但在断开电源时不能保持数据的易失性类型。存储器216可以包括随机存取存储器(RAM)、缓冲器等。
当电子设备210执行预定的操作或功能时,首先将与该操作对应的数据从存储装置215加载到存储器216,之后在将来由处理器217处理加载到存储器216的数据。例如,当电子设备210启动时,存储在存储装置215中的存储在存储装置215中的操作系统的数据代码由启动加载器加载到存储器216,并且处理器217执行加载到存储器216的操作系统的数据代码。因此,电子设备210由操作系统驱动。
根据实施例,存储装置215可以包括非易失性记录介质,并且存储器216可以包括易失性记录介质。
处理器217可以包括各种处理电路,包括例如通过安装在印刷电路板(PCB)上的中央处理单元(CPU)、专用处理器、芯片组、缓冲器、电路等实现的一个或更多硬件处理器。处理器217可以设计为片上系统(SoC)。当电子设备210由显示设备实现时,处理器217包括对应于各种处理的模块,例如解复用器、解码器、定标器、音频数字信号处理器(DSP)、放大器等。在这样的模块之中,一些或全部模块可以通过SoC来实现。例如,与图像处理相关的解复用器、解码器、定标器等模块可以作为图像处理SoC来实现,并且音频DSP可以作为与SoC分离的芯片组来实现。
在由相应操作系统参考的预定操作系统和参考数据存储在存储装置215中的情况下,当通过通信器211或信号输入/输出单元212接收到新的操作系统时,处理器217可以利用新的操作系统来升级电子设备210的先前存储的操作系统。在这种情况下,处理器217执行识别新的操作系统和先前存储的参考数据之间的操作兼容性的操作,下面将描述这种实施例。
图3是示出根据实施例的电子设备的控制方法中的示例性过程的流程图。
如图3所示,由电子设备执行的以下操作可以由电子设备的处理器执行。
在操作310,通过响应于启动指令将存储在存储装置中的第一操作系统加载到存储器来启动电子设备。
在操作320,电子设备将在由第一操作系统驱动时由第一操作系统获得或参考的参考数据存储在存储装置中。
在操作330,在由第一操作系统驱动的同时,电子设备获得用于升级第一操作系统的第二操作系统。
在操作340,电子设备将所获得的第二操作系统存储在存储装置中,然后被重启。
在操作350,电子设备将存储在存储装置中的第二操作系统和参考数据加载到存储器。这里,参考数据例如可以表示由第一操作系统获得的参考数据。
在操作360,电子设备识别加载到存储器的第二操作系统和参考数据之间的操作兼容性是否正常。
当识别出加载到存储器的第二操作系统和参考数据之间的操作兼容性正常时(在操作360为“是”),在操作370,电子设备将第二操作系统设置为将来用于启动的操作系统,并被重启。电子设备不是用第一操作系统而是用第二操作系统重启。
当识别出加载到存储器的第二操作系统和参考数据之间的操作兼容性异常时(操作360中的“否”),在操作380,电子设备不用第二操作系统来升级,而是将第一操作系统保持为电子设备的操作系统。
在升级操作系统的过程中,当电子设备识别出操作在第二操作系统和参考数据之间不兼容时,电子设备执行回退过程以基于第一操作系统返回操作的设置。此外,在升级操作系统的过程中,电子设备可能断电。在这种情况下,第一操作系统原样被保持在存储装置中,因此电子设备使用第一操作系统进行下次启动,从而执行操作系统的回退过程并确保正常操作。
因此,电子设备预先检查在升级之前由第一操作系统参考的参考数据和在升级之后由第二操作系统参考的参考数据之间的操作兼容性,并且避免当操作在参考数据和第二操作系统之间不兼容时电子设备无法工作的情况。
根据相关技术,当电子设备在用第二操作系统升级之后被启动时,第二操作系统参考第一次被第一操作系统参考的参考数据。当操作在第二操作系统和参考数据之间兼容时,电子设备正常地被启动。另一方面,当操作在第二操作系统和参考数据之间不兼容时,电子设备无法启动并且不会正常工作。在这种情况下,一般用户难以找出问题的原因,并且也难以解决该问题。
另一方面,当获得第二操作系统时,根据示例性实施例的电子设备在存储第一操作系统的情况下将第二操作系统和参考数据两者加载到存储器,并执行检查操作兼容性的过程,从而避免电子设备由于因升级的操作系统可能发生的兼容性问题而不工作的情况。
下面,将更详细地描述当操作系统从第一操作系统改变到第二操作系统时在电子设备中执行的示例性过程。
图4是示出根据实施例的电子设备中根据时间区段执行的示例性过程的图。
如图4所示,当在电子设备中执行升级操作系统的过程时,整个时间区段可以被分成例如三个时间区段T1、T2和T3。换句话说,从时间区段T1到时间区段T2的转换在电子设备第一次重启时执行,从时间区段T2到时间区段T3的转换在电子设备第二次重启时执行。术语“重启”仅用于方便描述。
在时间区段T1中,电子设备利用先前存储的第一操作系统启动并操作。电子设备将由第一操作系统获得和参考(例如对应于第一操作系统)的参考数据存储在存储装置中。当获得用于升级的第二操作系统时,电子设备将第二操作系统与第一操作系统分开地存储在存储装置的区域中。
电子设备显示操作系统需要升级的消息,从而通知用户当前状态。当电子设备先前被设置为自动升级时,电子设备可不向用户请求准许升级。除了消息之外,电子设备还可以显示用于请求准许升级的用户界面(UI)。
当电子设备先前被设置或响应于用户输入而获得对升级的准许时,电子设备存储指向在下次启动时升级所需的操作的标志信息。然后,电子设备被第一次重启以升级操作系统。
在第一次重启时,随着处理器读取标志信息,升级过程开始。
在时间区段T2中,通过将存储在存储装置中的第二操作系统加载到存储器来启动电子设备。此外,电子设备将存储在存储装置中的与第一操作系统对应的参考数据加载到存储器。在这种情况下,电子设备可以不完整地将参考数据加载到存储器,而是可以将与第二操作系统对应地转换的参考数据加载到存储器。下面将更详细地描述参考数据的转换。
为了识别加载到存储器的第二操作系统和参考数据之间的操作兼容性,电子设备检查参考数据是否可以被第二操作系统正常使用。详细地说,检查方法可以采用各种算法。作为示例,电子设备执行第二操作系统的、与参考数据的属性对应的数据代码,从而基于相应的参考数据是否可正常地被处理来执行检查。
当检查结果正常显示时,电子设备修改将来要基于第二操作系统启动的启动设置。因为确保了基于第二操作系统的正常操作,所以电子设备从存储装置中删除第一操作系统,然后被第二次重启。基于在时间区段T2中执行的过程的进度,电子设备可以显示展示该进度的UI。
在时间区段T3中,基于存储在存储装置中的第二操作系统(例如,第二次启动)启动电子设备。因此,操作系统被第二操作系统完全升级。
当检查结果异常显示时,第二操作系统不能连续使用先前使用的参考数据。因此,电子设备设置为基于第一操作系统来维持启动。电子设备可以设计成存储与第二操作系统一起提供的新参考数据而不是先前使用的参考数据,并且将第二操作系统设置成使用所存储的新参考数据。在这种情况下,即使由于先前使用的参考数据被删除而不能确保使用连续性,也可以确保电子设备的正常操作。
下面,将更详细地描述参考数据的转换过程。
图5是示出当根据实施例的电子设备获得包数据时存储第二操作系统的包数据的示例性方法的框图。
如图5所示,电子设备500包括存储器510、存储装置520和处理器(例如,包括处理电路)530。存储装置520配置成存储第一操作系统541和将由第一操作系统541参考的第一参考数据542。处理器530可以包括各种处理电路,并且将存储在存储装置520中的第一操作系统541加载到存储器510并执行它,使得电子设备500可以基于第一操作系统541操作。响应于相应的事件,第一操作系统541基于与各种事件相关的第一参考数据542执行操作。
当在基于第一操作系统541进行操作期间从外部接收到用于升级操作系统的包数据550时,处理器530将所接收的包数据550存储在存储装置520中。包数据550包括第二操作系统551和由第二操作系统551参考的第二参考数据552。第二参考数据552可以包括对与第二操作系统551的操作兼容性提供确保的数据,以便当开发者开发和写入包数据550时由第二操作系统551正常地参考。换句话说,第二参考数据552可包括一起提供以供第二操作系统551使用的默认数据,并包括尚未因使用而改变的初始值。
处理器530将第一操作系统541和第二操作系统551分别存储在存储装置520中被划分的单独分区中。此外,处理器530将第一参考数据542存储在存储装置520内与分别存储第一操作系统541和第二操作系统551的分区分开的另一分区中。
操作系统的升级包括用第一操作系统541而不是第二操作系统551启动电子设备500的方法。换句话说,从第一操作系统541到第二操作系统551进行对用于启动电子设备500的设置的改变,从而执行操作系统的升级。然而,为了在升级操作系统之后满足上述的使用连续性,第二操作系统551需要能够使用先前第一操作系统541已经使用的第一参考数据542。
处理器530将包数据550存储在存储装置520中,并存储指示升级操作系统的执行的标志信息,以便在下次启动中可参考标志信息。处理器530执行重启。
图6是示出电子设备执行第一参考数据的数据迁移的示例的框图。
如图6所示,当执行重启时,处理器530基于上述标志信息将第二操作系统551从存储装置520加载到存储器510。通常,第一操作系统541、第二操作系统551、第一参考数据542和第二参考数据552被存储在存储装置520中,因为它们不足以被处理器530直接处理(例如,被编码、压缩或处于类似状态)。因此,第一操作系统541、第二操作系统551、第一参考数据542和第二参考数据552首先从存储装置520加载到存储器510,以便由处理器530处理。为便于描述,存储器510加载要处理的数据的操作也被称为挂载数据的操作。
处理器530执行将第一参考数据542转换为与第二操作系统551对应的过程。该过程可以通过各种方法来实现。例如,处理器530可以如下转换第一参考数据542。
处理器530首先将为了确保与第二操作系统551的操作兼容性而准备的第二参考数据552从存储装置520加载到存储器510。处理器530执行数据迁移,该数据迁移使存储在存储装置520中的第一参考数据542移动成与加载到存储器510的第二参考数据552对应。为了方便起见,使用术语“数据迁移”来指例如在示例性实施例中描述的操作,并且该术语本身不限制其含义。在这种情况下,处理器530将第一参考数据542从存储装置520加载到存储器510,然后对加载到存储器510的第一参考数据542执行数据迁移。
因为第一参考数据542是与第一操作系统541的操作兼容的数据,所以与第一操作系统541不同的第二操作系统551可能难以识别第一参考数据542。因此,处理器530将具有可由第二操作系统551识别的数据形式的第二参考数据552加载到存储器510,并将加载到存储器510的第二参考数据552更新为被转换为具有第二参考数据552的数据形式的第一参考数据542。为了便于描述,这种操作可以被称为数据迁移。作为数据迁移的结果,加载到存储器510的第二参考数据552的至少一部分基于第一参考数据542被修改,从而生成第三参考数据(参见图7中的“553”)。换句话说,第三参考数据包括第一参考数据542的被转换为适于第二参考数据552的数据形式的内容。稍后将更详细地描述数据迁移的示例。
当数据迁移不正常执行时(例如,当操作兼容性异常时),处理器530可以执行如下的一些操作之一。例如,处理器530撤回对第二操作系统551的升级,并执行对第一操作系统541的回退。处理器530可允许第二操作系统551不参考第三参考数据553而参考第二参考数据552。或者,在第一参考数据542的数据迁移期间,处理器530可基于第二参考数据552的值而不是具有错误的数据来生成第三参考数据553。
图7是示出根据实施例的检查第二操作系统和第三参考数据之间的操作兼容性的示例性电子设备的框图。
如图7所示,通过第一参考数据542的数据迁移在存储器510中生成第三参考数据553。处理器530检查加载到存储器510的第二操作系统551与第三参考数据553之间的操作兼容性是否正常,例如,第二操作系统551是否能够正常使用第三参考数据553。
例如,处理器530可以执行第二操作系统551并模拟第二操作系统551是否能够正常地参考第三参考数据553。
当检查结果显示操作兼容性正常时,处理器530将在启动中使用的针对操作系统的设置从第一操作系统541改变到第二操作系统551。此外,处理器530将第三参考数据553存储在存储装置520中,并删除第一操作系统541和第一参考数据542。处理器530将第三参考数据553存储在存储装置520内的与其中存储第二操作系统551的分区分开的独立分区中。第二参考数据552可以从存储装置520中被删除,或者第二参考数据552可以不被删除,而是当在第二操作系统551中涉及它时被维护。
处理器530执行重启,然后如下面的图8所示那样进行操作。
另一方面,当检查结果显示操作兼容性不正常时,处理器530基于第一操作系统541保持用于启动的原始设置,并持续存储要由第一操作系统541参考的第一参考数据542。可在下次重启时删除第二操作系统551和第二参考数据552。或者,处理器530可显示UI以请求用户关于是否在下次重启之后删除第二操作系统551和第二参考数据552的指令,并响应于通过UI发出的指令而选择性地删除第二操作系统551和第二参考数据552。
图8是示出根据实施例的在将第三参考数据存储在存储装置中之后被重启的示例性电子设备的框图。
如图8所示,当在升级操作系统的先前阶段期间将用于确保与第二操作系统551的操作兼容性的第三参考数据553存储在存储装置520中时,处理器530可以改变设置以在下次启动时使用第二操作系统551,然后执行重启。
基于重启,处理器530将第二操作系统551从存储装置520加载到存储器510,并执行第二操作系统551。存储装置520配置成存储第二操作系统551和第三参考数据553,并且第二操作系统551在必要时调用并参考第三参考数据553,从而即使在升级操作系统之后也确保使用连续性。
如上所述,当操作系统被升级时,检查第二操作系统和第一参考数据之间的操作兼容性的方法如下。
图9是示出根据实施例的电子设备检查用于升级的第二操作系统与先前使用的第一参考数据之间的操作兼容性的示例性过程的流程图。
如图9所示,可以由电子设备的处理器执行以下操作。在初始状态下,电子设备将第一操作系统和第一操作系统要参考的第一参考数据存储在存储装置中,并且新获得用于升级的第二操作系统和第二操作系统要参考的第二参考数据。
在操作910,电子设备将所获得的第二操作系统加载到存储器,然后被启动。
在操作920,电子设备将第二参考数据加载到存储器。
在操作930,电子设备通过将第一参考数据转换为适于加载到存储器的第二参考数据的数据形式来生成第三参考数据。
在操作940,电子设备识别第二操作系统和第三参考数据之间的操作兼容性是否正常。
当识别出第二操作系统和第三参考数据之间的操作兼容性正常时(在操作940为“是”),在操作950,电子设备将第三参考数据存储在存储装置中。
在操作960,电子设备删除第一参考数据,并用第二操作系统重启。在重启之后,第二操作系统通过参考第三参考数据来操作。可以基于设置来删除或维护第一操作系统和第二参考数据。
另一方面,当识别出第二操作系统和第三参考数据之间的操作兼容性不正常时(在操作940为“否”),在操作970,电子设备基于第一操作系统来保持启动的设置,并且利用第一操作系统来重启。在重启之后,电子设备基于参考第一参考数据的第一操作系统来操作。
因此,电子设备提供了确保连续使用第一参考数据的环境。
当操作系统升级时出现某一错误时,电子设备不升级操作系统,而是将设置控制成用原始第一操作系统启动。
下面,将更详细地描述数据迁移的示例。
图10是示出由根据实施例的电子设备执行的示例性数据迁移方法的图。
如图10所示,电子设备基于第一参考数据1010和第二参考数据1020生成第三参考数据1030。具体而言,通过将第一参考数据1010迁移到加载到存储器的第二参考数据1020来生成第三参考数据1030。
当第一参考数据1010和第二参考数据1020符合相同的标准时,第一参考数据1010和第二参考数据1020具有基于相应标准的版本号。在所述标准中,可以设置兼容版本的范围。因此,电子设备识别第一参考数据1010的版本和第二参考数据1020的版本是否彼此兼容。当识别出这两个版本彼此兼容时,电子设备执行数据迁移。当识别出这两个版本彼此不兼容时,电子设备不执行数据迁移。
确保第二操作系统和第二参考数据1020之间的操作兼容性可以表示:例如第二操作系统能够识别第二参考数据1020的数据形式。另一方面,没有确保第二操作系统和第一参考数据1010之间的操作兼容性可以表示:例如,第二操作系统难以正常识别第一参考数据1010的数据形式。
因此,第三参考数据1030可以通过将第一参考数据1010转换为适于第二参考数据1020的数据形式以便正常地被第二操作系统识别的方法来生成。数据迁移仅仅是这种方法的一个示例。
例如,参考数据1010、1020和1030中的每一个都包括多个项目以及与这些项目对应的值。例如,第一参考数据1010包括“[f(A1)=111,f(B1)=222,f(C1)=333]”的数据。这表明在第一参考数据1010中项目A1具有值111,项目B1具有值222,并且项目C1具有值333。以相同的方式,第二参考数据1020可以表示为“[f(A2)=100,f(B2)=200,f(C2)=300,f(D2)=400,f(E2)=500]”。
为了执行第一参考数据1010到第二参考数据1020的数据迁移,电子设备识别与第一参考数据1010的项目对应的第二参考数据1020的项目。电子设备可以基于参考数据1010、1020和1030的标准来实现这种识别操作。当第一参考数据1010被认为是旧版本而第二参考数据1020被认为是新版本时,数据形式向高版本的改变通常被存储为与标准对应。
例如,当识别出第二参考数据1020的项目A2、B2和C2与第一参考数据1010的项目A1、B1和C1对应时,电子设备基于这样的识别结果执行数据迁移。电子设备利用第一参考数据1010的对应项目A1、B1和C1来更新第二参考数据1020的项目A2、B2和C2。换句话说,在第二参考数据1020中的值为“100”的项目A2用“111”替换,值为“200”的项目B2用“222”替换,以及值为“300”的项目C2用“333”替换。
通过数据迁移,第二参考数据1020的多个项目之中的、分别与第一参考数据1010的项目对应的项目的值被替换为第一参考数据1010的值,并且因此作为数据迁移的结果而生成的第三参考数据1030包括被转换为适于第二参考数据1020的数据形式的第一参考数据1010。
例如,第三参考数据1030由[f(A2)=111,f(B2)=222,f(C2)=333,f(D2)=400,f(E2)=500]表示。第三参考数据1030的项目中的A2、B2和C2被第一参考数据1010的值替换。同时,在第一参考数据1010和第二参考数据1020之间可能存在无匹配项目,例如第三参考数据1030的项目之中的D2和E2。在这种情况下,原样保持第二参考数据1020的值。
前面的示例仅仅是数据迁移的一种方法,并且可以根据设计将各种方法用于数据迁移。
同时,前述实施例示出:当操作系统升级时,旧的第一操作系统被新的第二操作系统替换。然而,操作系统的升级不仅可以包括替换操作系统的全部数据代码,而且还可以改变操作系统的一些数据代码。下面,将更详细地描述这种情况下的实施例。
图11是示出接收用于对操作系统的一些数据代码进行升级的数据的示例性电子设备的框图。
如图11所示,电子设备1100包括存储器1110、存储装置1120和处理器(例如,包括处理电路)1130。在初始状态中,电子设备1100将操作系统1140从存储装置1120加载到存储器1110并执行操作系统1140。在电子设备1100由操作系统1140驱动的过程中,处理器1130接收用于升级操作系统1140的包数据1150,并将包数据1150存储在存储装置1120中。
包数据1150包括第二RO数据1152和第二参考数据1153。第一参考数据1143和第二参考数据1153基本上类似于前述实施例的那些参考数据,因此可以避免其重复描述。第二RO数据1152是用于替换不是操作系统1140的全部数据代码而是替换操作系统1140的一些数据代码的数据。在操作系统1140的全部数据代码中,不因升级而改变的数据代码可以被称为公共RO数据1141,并且由第二RO数据1152改变或替换的数据代码可以被称为第一RO数据1142。换句话说,操作系统1140的公共RO数据1141和第一RO数据1142仅通过当操作系统1140被升级时它们是否被改变来区分。
为了升级操作系统1140,处理器1130存储用于指导升级的标志信息并执行重启。下面,结合在示例性实施例中执行的操作系统1140的升级,可能不重复对基本相同的配置和操作的描述。
图12是示出根据实施例的对第一参考数据执行数据迁移的示例性电子设备的框图。
如图12所示,处理器1130在重启时基于前述标志信息将公共RO数据1141和第二RO数据1152从存储装置1120加载到存储器1110。升级的操作系统通过组合公共RO数据1141和第二RO数据1152来实现。
处理器1130将用于确保与第二RO数据1152的操作兼容性的第二参考数据1153从存储装置1120加载到存储器1110。处理器1130执行数据迁移,该数据迁移移动存储在存储装置1120中的第一参考数据1143以使其与加载到存储器1110的第二参考数据1153对应。
作为数据迁移的结果,第一参考数据1143被转换为与加载到存储器1110的第二参考数据1153对应,从而生成第三参考数据。数据迁移与上述相同,因此将避免其重复描述。
图13是示出检查第二RO数据与第三参考数据之间的操作兼容性的示例性电子设备的框图。
如图13所示,处理器1130检查在加载到存储器1110的操作系统中升级的第二RO数据1152和第三参考数据1154之间的操作兼容性是否正常,例如升级的操作系统是否能够正常使用第三参考数据1154。
当检查结果显示操作兼容性正常时,处理器1130在操作系统的启动设置中将公共RO数据1141和第一RO数据1142的当前组合改变为公共RO数据1141和第二RO数据1152的组合。此外,处理器1130将加载到存储器1110的第三参考数据1154存储在存储装置1120中。因此,确保与第二RO数据1152的操作兼容性的第三参考数据1154被存储在存储装置1120中。
此外,处理器1130从存储装置1120中删除第一RO数据1142和第一参考数据1143。第二参考数据1153可以被设置为被删除或不被删除。处理器1130执行重启,然后如图14所示那样操作。
图14是示出根据实施例的在将第三参考数据存储在存储装置中之后被重启的示例性电子设备的框图。
如图14所示,处理器1130在先前阶段(例如,升级操作系统的过程)将确保与第二RO数据1152的操作兼容性的第三参考数据1154存储在存储装置1120中,并且改变设置以便基于公共RO数据1141和第二RO数据1152执行启动,从而执行重启。
基于重启,处理器1130将公共RO数据1141和第二RO数据1152从存储装置1120加载到存储器1110,并执行操作系统。存储装置1120配置成存储公共RO数据1141、第二RO数据1152和第三参考数据1154。操作系统在必要时调用并参考第三参考数据1154,从而即使在升级操作系统之后也确保使用连续性。
如上所述,在上述示例性实施例中,电子设备将在数据迁移之后在存储器中生成的第三参考数据存储在存储装置中,并执行重启。当第三参考数据被存储在存储装置中时,电子设备阻止对第三参考数据的其他进程的访问。例如,各种应用可以在操作系统上运行,并且进程可以由应用执行。当存储器上的第三参考数据没有与其他进程隔离开时,存储器上的第三参考数据可能由其他进程修改。当这种被修改的第三参考数据存储在存储装置中时,操作系统在下次启动时调用的第三参考数据可能是不兼容的。
为了避免这种情况,当将在存储器上生成的第三参考数据存储在存储装置中时,电子设备将第三参考数据与其他进程隔离开。
为了在上述实施例中升级上述操作系统,处理器可以获得用于指导在重启时执行的详细操作的启动脚本。处理器在重启时读取启动脚本,并且将数据加载到存储器中并基于启动脚本执行必要的操作。电子设备可以通过各种路由获得启动脚本,例如,与用于升级操作系统的包数据一起提供的启动脚本、与包数据分离的来自单独设备的启动脚本等。
前述实施例示出处理器处理分别加载到存储器的不同分区的第二操作系统和第二参考数据。然而,当第二操作系统和第二参考数据被加载到存储器时,可以使用覆盖文件系统(OverlayFS)等技术来节省存储器的占用空间。下面,将更详细地描述这种实施例。
图15是示出可应用于根据实施例的电子设备的OverlayFS的示例性原理的图。
如图15所示,第一数据1510和第二数据1520在内容和文件目录结构上是不同的。作为根据示例性实施例的OverlayFS的示例,提供了自Linux内核3.18以来的OverlayFS。OverlayFS提供两种类型的层,其中下层和上层在结构上分别被称为lowerdir和upperdir。当第一数据1510由lowerdir实现并且第二数据1520由upperdir实现时,合并视图1530被识别为好像lowerdir的第一数据1510和upperdir的第二数据1520被覆盖。
为了支持这种OverlayFS,第一数据1510和第二数据1520不包括彼此排他的内容或结构,并且需要在它们被一起执行时正常操作。
处理器可以基于OverlayFS将第一数据1510和第二数据1520覆盖并安装到存储器的相同存储区或地址。作为安装的结果,合并视图1530显示第一数据1510和第二数据1520的所有内容和文件结构。这里,lowerdir的第一数据1510是只读数据,但是在upperdir的第二数据1520中允许写入。
基于这样的原理,电子设备能够执行数据迁移。下面将更详细地描述这种实施例。
图16是示出根据实施例的在第二操作系统和第二参考数据被覆盖和安装的状态下执行数据迁移的示例性电子设备的框图。
如图16所示,电子设备1600包括存储器1610、存储装置1620和处理器(例如,包括处理电路)1630。存储装置1620配置成存储第一操作系统1641、第一参考数据1642、第二操作系统1651和第二参考数据1652。升级电子设备1600的操作系统的过程基本上与上述实施例中的相同,因此将避免对其重复描述。
为了对第一参考数据1642执行数据迁移,处理器1630将第二参考数据1652从存储装置1620安装到存储器1610。在这种情况下,类似于前述实施例,处理器1630可以将第二参考数据1652安装到存储器1610的、与第二操作系统1651的地址不同的地址。
或者,处理器1630可基于OverlayFS的前述原理,将第二参考数据1652安装成与已安装到存储器1610的第二操作系统1651相覆盖。换句话说,通过第二操作系统1651的lowerdir和第二参考数据1652的upperdir来实现基于OverlayFS的安装。因此,相比于前述实施例,示例性实施例使存储器1610的占用容量节省了多达第二参考数据1652的大小。
处理器1630相对于覆盖并安装到第二操作系统1651的第二参考数据1652执行第一参考数据1642的数据迁移。当通过数据迁移将第一参考数据1642正常地转换为第三参考数据(其提供与第二操作系统1651的操作兼容性的确保)时,处理器1630可以检查第三参考数据和第二操作系统1651之间的操作兼容性。与此相关的操作也与前述实施例的操作基本相同,因此将避免对其重复描述。
同时,OverlayFS的原理可适用于各种实施例。例如,可以假设电子设备的操作系统包括公共RO数据和第一RO数据,并且通过用第二RO数据新替换操作系统的第一RO数据来升级。在这种情况下,电子设备首先将公共RO数据安装到存储器,然后安装要与安装到存储器的公共RO数据相覆盖的第二RO数据。
此外,当OverlayFS基于允许多个lowerdir的标准时,电子设备可以将第二参考数据作为upperdir安装到相覆盖的公共RO数据和第二RO数据上,并执行第一参考数据的数据迁移。
在前述实施例中描述的设备的操作可以通过在相应设备中提供的人工智能来执行。人工智能可以通过利用机器学习算法应用于各种通用系统。人工智能系统是指具有人类或仅次于人类的智能的计算机系统。在这样的系统中,机器、设备或系统自主地执行学习和识别,并且基于累积的经验提高识别和标识的准确性。人工智能基于基础技术和算法,其中,基础技术利用机器学习(深度学习)技术来实现,算法取决于对输入数据的特征进行自主分类和学习并且复制人脑的感知、识别等功能的算法。
例如,基础技术可以包括用于识别人类的语言和文本的语言理解技术、用于识别像人类视觉的事物的视觉理解技术、用于识别信息和逻辑地进行推理和预测的推理和预测技术、用于将人类的经验信息处理成知识数据的知识表示技术、以及用于对车辆的自主驾驶或机器人的运动进行控制的运动控制技术中的至少一个。
这里,语言理解可以指例如识别、应用和处理人类语言或文本的技术,并且包括自然语言处理、机器翻译、对话系统、问答、语音识别和合成等。
推理和预测可以指例如识别信息和逻辑地进行预测的技术,并且包括基于知识和概率的推理、优化的预测、基于偏好的规划、推荐等。
知识表示可以指例如将人类的经验信息自动化为知识数据的技术,并且包括知识构建(例如数据创建和分类)、知识管理(例如数据利用)等。
根据前述实施例的方法可以以程序指令的形式来实现,该程序指令可以在各种计算机中实现并被记录在计算机可读介质中。这种计算机可读介质可以包括程序指令、数据文件、数据结构等或其组合。例如,计算机可读介质可以存储在例如通用串行总线(USB)存储器之类的非易失性存储器中,而不管它是可删除的还是可重写的,例如RAM、ROM、闪存、存储器芯片、集成电路(IC)等存储器,或者可以存储在光或磁性可记录的或机器(例如计算机)可读的存储介质中,例如,光盘(CD)、数字多功能盘(DVD)、磁盘、磁带等。应当理解,可以包括在移动终端中的存储器是适于存储具有用于实现实施例的指令的程序的机器可读存储介质的示例。记录在该存储介质中的程序指令可以是根据实施例专门设计和配置的,或者可以是公知的并且对于计算机软件领域的技术人员是可用的。此外,计算机程序指令可以由计算机程序产品来实现。
虽然已经参考本公开的各种示例性实施例说明和描述了本公开,但是应当理解,各种示例性实施例旨在是说明性的,而不是限制性的。本领域的技术人员还将理解,在不脱离本公开(包括所附权利要求及其等同物)的真实精神和全部范围的情况下,可以在形式和细节上进行各种改变。
Claims (15)
1.电子设备,包括:
存储器;
存储装置,配置成存储第一操作系统;以及
处理器,配置成:
通过将存储在所述存储装置中的所述第一操作系统加载到所述存储器来执行启动,并且将基于所述第一操作系统运行而获得的数据存储在所述存储装置中,
将获得的第二操作系统和存储在所述存储装置中的所述数据加载到所述存储器,
识别加载到所述存储器的所述第二操作系统与所述数据之间的操作兼容性,
基于识别出正常的操作兼容性,通过将所述第二操作系统加载到所述存储器来执行启动,以及
基于识别出异常的操作兼容性,通过将所述第一操作系统加载到所述存储器来执行启动。
2.根据权利要求1所述的电子设备,其中,所述处理器配置成:将存储在所述存储装置中的所述数据转换为与所述第二操作系统对应的数据形式,以及将经转换数据加载到所述存储器。
3.根据权利要求2所述的电子设备,其中,所述处理器配置成:基于识别出正常的操作兼容性,将所述经转换数据存储在所述存储装置中以替换存储在所述存储装置中的所述数据。
4.根据权利要求3所述的电子设备,其中,所述处理器配置成:基于所述经转换数据在所述存储器中被生成并被存储在所述存储装置中,将所述经转换数据与在所述电子设备中运行的预定进程隔离开。
5.根据权利要求2所述的电子设备,其中,所述处理器配置成:将与所述第二操作系统对应的数据加载到所述存储器,以及利用存储在所述存储装置中的所述数据的值来调整与所述第二操作系统对应的所述数据的项目的值。
6.根据权利要求1所述的电子设备,其中,所述处理器配置成:基于获得所述第二操作系统,将所述第二操作系统存储在所述存储装置中;以及通过基于所述第二操作系统启动,将存储在所述存储装置中的所述数据加载到所述存储器。
7.根据权利要求1所述的电子设备,其中,所述处理器配置成:将所述数据加载到所述存储器,以覆盖所述存储器中的、加载有所述第二操作系统的存储区域中的所述数据。
8.根据权利要求1所述的电子设备,其中,所述处理器配置成:将所述第一操作系统和所述第二操作系统存储在所述存储装置的彼此分开的单独的分区中。
9.根据权利要求8所述的电子设备,其中,所述处理器配置成:将所述数据存储在所述存储装置中的、与所述第一操作系统和所述第二操作系统被存储的所述分区分开的分区中。
10.根据权利要求1所述的电子设备,其中,所述处理器配置成:基于识别出异常的操作兼容性,通过将所述第二操作系统加载到所述存储器以使用提供给所述第二操作系统的默认数据来执行启动。
11.控制电子设备的方法,所述方法包括:
通过将存储在存储装置中的第一操作系统加载到存储器来执行启动,并将基于所述第一操作系统运行而获得的数据存储在所述存储装置中;
将获得的第二操作系统和存储在所述存储装置中的所述数据加载到所述存储器;
识别加载到所述存储器的所述第二操作系统和所述数据之间的操作兼容性;
基于识别出正常的操作兼容性,通过将所述第二操作系统加载到所述存储器来执行启动;以及
基于识别出异常的操作兼容性,通过将所述第一操作系统加载到所述存储器来执行启动。
12.根据权利要求11所述的方法,其中,存储在所述存储装置中的所述数据被转换为与所述第二操作系统对应的数据形式,并被加载到所述存储器。
13.根据权利要求12所述的方法,其中,基于识别出正常的操作兼容性,将经转换数据存储在所述存储装置中以替换存储在所述存储装置中的所述数据。
14.根据权利要求13所述的方法,其中,基于所述经转换数据在所述存储器中被生成并被存储在所述存储装置中,将所述经转换数据与在所述电子设备中运行的预定进程隔离开。
15.根据权利要求12所述的方法,其中,将与所述第二操作系统对应的数据加载到所述存储器,并且利用存储在所述存储装置中的所述数据的值来调整与所述第二操作系统对应的所述数据的项目的值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190080497A KR20210004288A (ko) | 2019-07-04 | 2019-07-04 | 전자장치 및 그 제어방법 |
KR10-2019-0080497 | 2019-07-04 | ||
PCT/KR2020/008721 WO2021002724A1 (en) | 2019-07-04 | 2020-07-03 | Electronic apparatus and control method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114127685A true CN114127685A (zh) | 2022-03-01 |
CN114127685B CN114127685B (zh) | 2024-04-12 |
Family
ID=74066095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080050349.XA Active CN114127685B (zh) | 2019-07-04 | 2020-07-03 | 电子设备及其控制方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11526363B2 (zh) |
EP (1) | EP3980882A4 (zh) |
KR (1) | KR20210004288A (zh) |
CN (1) | CN114127685B (zh) |
WO (1) | WO2021002724A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116048644A (zh) * | 2023-03-30 | 2023-05-02 | 中科方德软件有限公司 | 一种系统迁移方法、装置和可读存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11915015B2 (en) * | 2021-08-27 | 2024-02-27 | Dell Products, L.P. | Systems and methods for use of pre-boot resources by modern workspaces |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060129520A1 (en) * | 2004-12-10 | 2006-06-15 | Hon Hai Precision Industry Co., Ltd. | System and method for automatically updating a program in a computer |
CN105793817A (zh) * | 2013-12-05 | 2016-07-20 | 谷歌公司 | 更新操作系统 |
US20190034186A1 (en) * | 2016-02-17 | 2019-01-31 | Gemalto Sa | Method for managing objects in a secure element |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100850994B1 (ko) | 2001-09-10 | 2008-08-12 | 엘지전자 주식회사 | 디지털 텔레비전의 마이크로 컴퓨터 업그레이드 장치 |
US7430661B2 (en) * | 2004-09-09 | 2008-09-30 | Hewlett-Packard Development Company, L.P. | System and method of storing user data in a partition file or using a partition file containing user data |
US7490318B2 (en) | 2005-02-25 | 2009-02-10 | Inventec Corporation | Computer platform operating system compatibility management method and system |
US7818736B2 (en) | 2005-09-14 | 2010-10-19 | International Business Machines Corporation | Dynamic update mechanisms in operating systems |
KR20080023841A (ko) | 2006-09-12 | 2008-03-17 | 카시와야마 토요히테 | 펌웨어 업그레이드와 손상된 펌웨어 자동 복구 시스템 및방법 |
US8245226B2 (en) | 2009-01-13 | 2012-08-14 | Microsoft Corporation | Offline migration from prior operating system installation |
KR101123685B1 (ko) | 2009-07-02 | 2012-03-20 | (주)세븐코아 | 동적 소프트웨어 업그레이드 기술을 이용한 단말기 내의 프로그램 업그레이드 방법 및 시스템 |
US20140129686A1 (en) | 2012-11-08 | 2014-05-08 | Nvidia Corporation | Mobile computing device configured to filter and detect application profiles, a method of manufacturing the same and an external source for delivering hierarchical filtered application profiles to mobile computing devices |
US9811375B2 (en) | 2014-04-30 | 2017-11-07 | Vmware, Inc. | Operating system migration while preserving applications, data, and settings |
US9430223B2 (en) | 2014-09-25 | 2016-08-30 | International Business Machines Corporation | Live operating system update mechanisms |
US10437580B2 (en) | 2017-09-11 | 2019-10-08 | Apple Inc. | Software updating methods and systems |
-
2019
- 2019-07-04 KR KR1020190080497A patent/KR20210004288A/ko not_active Application Discontinuation
-
2020
- 2020-06-30 US US16/916,583 patent/US11526363B2/en active Active
- 2020-07-03 EP EP20834996.9A patent/EP3980882A4/en active Pending
- 2020-07-03 CN CN202080050349.XA patent/CN114127685B/zh active Active
- 2020-07-03 WO PCT/KR2020/008721 patent/WO2021002724A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060129520A1 (en) * | 2004-12-10 | 2006-06-15 | Hon Hai Precision Industry Co., Ltd. | System and method for automatically updating a program in a computer |
CN105793817A (zh) * | 2013-12-05 | 2016-07-20 | 谷歌公司 | 更新操作系统 |
US20190034186A1 (en) * | 2016-02-17 | 2019-01-31 | Gemalto Sa | Method for managing objects in a secure element |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116048644A (zh) * | 2023-03-30 | 2023-05-02 | 中科方德软件有限公司 | 一种系统迁移方法、装置和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US11526363B2 (en) | 2022-12-13 |
EP3980882A1 (en) | 2022-04-13 |
US20210004239A1 (en) | 2021-01-07 |
CN114127685B (zh) | 2024-04-12 |
EP3980882A4 (en) | 2022-05-11 |
KR20210004288A (ko) | 2021-01-13 |
WO2021002724A1 (en) | 2021-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9772838B2 (en) | Firmware update discovery and distribution | |
US8966026B2 (en) | Systems and methods for extension of server management functions | |
KR101959359B1 (ko) | 빠른 부팅을 위한 부트 이미지를 업데이트하는 방법 및 이를 수행하는 화상형성장치 | |
US20140007067A1 (en) | RESOURCE DATa STRUCTURES FOR FIRMWARE UPDATES | |
US20140007069A1 (en) | Firmware Update System | |
CN110780890A (zh) | 系统升级方法、装置、电子设备和介质 | |
CN104090749A (zh) | 一种WinCE产品界面主题更新变换处理方法及系统 | |
US20130024678A1 (en) | Electronic device, configurable component and configuration information storage method thereof | |
CN114127685B (zh) | 电子设备及其控制方法 | |
KR20200090010A (ko) | 펌웨어 업데이트 방법, 이를 위한 전자 장치 및 저장 매체 | |
CN106020837A (zh) | 一种加载机顶盒驱动的方法及系统 | |
CN115291946A (zh) | 鸿蒙系统移植方法、装置、电子设备及可读介质 | |
CN111708548A (zh) | 软件安装方法、装置、设备及存储介质 | |
CN111008106A (zh) | 一种服务器监控管理方法、装置及电子设备和存储介质 | |
CN103064767B (zh) | 驱动备份、恢复的方法及装置 | |
US20140089909A1 (en) | Dynamically building locale objects at run-time | |
CN113326078A (zh) | 一种动态更新软件开发工具包的方法、设备及存储介质 | |
CN111752623B (zh) | 显示配置方法、装置、电子设备及可读存储介质 | |
US8892499B2 (en) | Life cycle management of rule sets | |
CN106484442B (zh) | 服务器系统及更新开机映像档的方法 | |
CN116775061A (zh) | 微服务应用的部署方法、装置、设备及存储介质 | |
CN114072765A (zh) | 用于基于容器的虚拟化系统的方法 | |
CN116594640A (zh) | 面向risc-v的可扩展分段自动化镜像构建技术 | |
KR101845467B1 (ko) | 빠른 부팅을 위한 부트 이미지의 에러를 복구하는 방법 및 이를 수행하는 화상형성장치 | |
CN114443582B (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 |