CN1818869A - 嵌入式操作系统镜像启动的启动优化方法 - Google Patents
嵌入式操作系统镜像启动的启动优化方法 Download PDFInfo
- Publication number
- CN1818869A CN1818869A CN 200610049855 CN200610049855A CN1818869A CN 1818869 A CN1818869 A CN 1818869A CN 200610049855 CN200610049855 CN 200610049855 CN 200610049855 A CN200610049855 A CN 200610049855A CN 1818869 A CN1818869 A CN 1818869A
- Authority
- CN
- China
- Prior art keywords
- mirror image
- operating system
- memory
- image
- kernel
- 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
- 238000005457 optimization Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 57
- 230000008569 process Effects 0.000 claims abstract description 33
- 230000006870 function Effects 0.000 claims description 36
- 230000005059 dormancy Effects 0.000 claims description 13
- 230000004888 barrier function Effects 0.000 claims description 9
- 230000002093 peripheral effect Effects 0.000 claims description 6
- 238000004321 preservation Methods 0.000 claims description 5
- 230000000903 blocking effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 3
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 238000011084 recovery Methods 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 description 9
- 239000011800 void material Substances 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 230000035484 reaction time Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000013404 process transfer Methods 0.000 description 2
- 240000004859 Gamochaeta purpurea Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种嵌入式操作系统镜像启动的启动优化方法。本发明采用的方法是在操作系统启动时,引导程序直接从存储器上将原先保存的系统最小任务镜像读入内存,并根据系统读入的信息设置各种结构的属性和系统寄存器内存的信息,将系统迅速恢复到工作状态,达到快速启动的方法。本发明提出了一种操作系统镜像启动的启动优化方法,对原来操作系统启动过程进行了改进,使得系统在启动过程中更加快捷,能够非常快的达到系统的工作状态。
Description
技术领域
本发明涉及基于嵌入式操作系统启动领域,特别是涉及一种嵌入式操作系统镜像启动的启动优化方法。
背景技术
手机等嵌入式系统由于考虑到人的忍耐度,所以在启动的时候不能花较长的时间。为了使用上的方便,要尽量缩短手机操作系统的引导和启动时间,虽然内核经过很大程度的裁减,并且各种功能模块都尽量做了优化,但是由于硬件条件的限制,如果不对引导和启动作特殊的设计,还是会造成启动时间过长。
现在主要采用两种技术来缩短这个时间。一,固化各种不可扩展硬件的设置,尽量标准化可扩展设备的接口,节约设备检测时间。二,延时装载技术,既LazyLoading,这种技术不加载当前非必需的模块,这些模块可以在启动后待机时间内加载,或者在具体用到之后再加载,把启动时间打散,从而缩短对用户来说至关重要的反应时间。
对第一种技术来说,目前以及在将来较短一段时间内最主要的还是固化不可扩展硬件的设置,因为首先现在手机的可扩展设备还很少,其次硬件条件限制较多,所以把一些固定的设置固化在操作系统内部应该是比较理想的措施。而考虑到将来的发展趋势,手机将可以连接越来越多的外设,而且这些外设都必须是即插即用的,所以不可能固化它们的设置。但是如果给所有的手机外设制定一套标准接口,则启动时最多只需加载一个标准的公用接口模块即可,大大节省了启动时间,并节约了存储空间。
对于第二种技术来说,由于操作系统将在很多地方采用“组件化”的技术,故而非常方便Lazy Loading。并且为了进一步缩短反应时间,将“动态设置”必需模块,根据对用户的使用习惯等条件的统计,把一些用户在开机后不会立即使用的模块设置为非必须模块,而把用户经常在开机后就使用的功能设置为必须模块,这样对用户来说反应时间就得到了很大的改善。
发明内容
本发明的目的在于提供一种嵌入式操作系统镜像启动的启动优化方法。
本发明解决其技术问题采用的技术方案如下:
1)系统镜像准备
操作系统的引导程序在启动的过程中,将操作系统内核镜像从系统的外存上载入内核,并进行解压缩,在启动过程中,引导程序如果发现只存在原始的操作系统镜像,系统将按正常程序启动;
当系统启动到最简洁的基本工作状态后,操作系统将启动系统休眠过进程,这个进程的主要工作是为保存系统镜像做各种准备工作;
2)保存系统镜像
这部分主要完成系统现场的保存工作,首先将将建立一个虚拟终端,用来模拟通讯,然后开始结束除内核态进程,僵死进程,当前进程之外所有的进程,此后调用函数来释放尽可能多的内存空间,以减少内存镜像的大小,然后对一些驱动进行处理,对在电源管理系统中注册的所有外设,发送挂起命令,然后插入系统屏障,阻断系统执行,开始保存处理器上下文,最后将内存镜像到外部制定的设备上,最后将操作系统休眠;
3)操作系统镜像的装载
操作系统的引导程序在启动的过程中,将操作系统内核镜像从系统的外存上载入内核,并进行解压缩,在启动过程中,引导程序如果发现存在操作系统启动优化镜像,系统将这个镜像载入内存,并进行解压缩;
系统先创立一个虚拟终端,用来显示装载镜像过程中的系统信息,首先检查镜像的正确性,然后按照顺序将镜像中的内存页面恢复到内存,最后将处理器的上下文恢复。
本发明与背景技术相比,具有的有益的效果是:
1、无延时:上面这种方法,只能为用户造成一种假相,系统看上去可以用,已经起来,实际上在用的时候还得加载必须得模块。而嵌入式操作系统镜像启动的启动优化方法,是真实的为应用提供了一个完整的系统,直接通过设置系统的应用环境,不需要延时加载,以及在用的时候在加载必要的模块,节约了时间和能量;
2、快捷性:嵌入式操作系统镜像启动的启动优化方法采用的是直接设置系统环境的启动方法,这个方法更加快捷;
3、通用性:可以自动设置启动镜像,不需要针对不同的应用平台进行不同的设置,更换平台不需要更换镜像,只要重新启动系统,然后让系统自动根据系统情况设置一个镜像,就可以。
附图说明
附图为整个系统的流程图。
具体实施方式
在实施基于嵌入式操作系统启动优化方法时,镜像启动技术被广泛利用。
嵌入式操作系统镜像启动的启动优化方法具体实现流程如下。
一、系统镜像准备
系统镜像准备过程主要分为以下几部分:
1、操作系统引导
操作系统的引导程序在启动的过程中,首先将自己从外存上拷贝到内存空间,然后到指定的外存位置查找系统镜像,如果系统镜像存在,那么将操作系统内核镜像从系统的外存上载入内核,由于系统内核镜像比较大,一般情况下都是被压缩后保存到外存的,所以要进行解压缩;
以Sistang嵌入式实验平台上的ARM-Linux操作系统为例,他的操作系统引导过程可见下面。
在内核运行之前需要系统引导程序完成加载内核和一些辅助性的工作,然后跳转到内核代码的起始地址并执行。
首先,启动后Sitsang板子将地址0x0c00 0000映射到0(可通过跳线设置),实际上从0x0c00 0000启动,进入的bootloader,但由于flash速度慢,所以bootloader前面有一小段程序把bootloader拷贝到SDRAM中的0x0AFE0100,再从0x 0800 0000运行bootloader,叫这段小程序为flashloader,flashloader必须要首先初始化SDRAM。flashloader把bootloader load到0x0AFE0100,然回跳了过去,其实0x0AFE0100就是烧在flash 0x0C000100中的真正的bootloader。
BootLoader将操作系统代码调入内存,然后将控制权交给arch/arm/boot中的Setup.S这段程序。Setup.S这段程序在实模式下对系统进行基本的检测和设置后转入保护模式把控制权交给head_armv.S。一个步骤是系统内核的解压过程,这部分代码在地址0x1000(文件/Boot/head.S),该段程序初始化寄存器,然后执行decompress_kernel(),这个函数源于zBoot/inflate.c、zBoot/unzip.c和zBoot/misc.c三个文件。解压后数据放在地址0x100000。Head.S建立内存管理和中断管理的框架。
2、操作系统启动
1)、判断是否存在快速启动镜像
在内核镜像解压缩后,系统要判断是否存在快速启动镜像,如过不存在则正常启动,如果存在则快速启动。
2)、正常启动
在启动过程中,引导程序如果发现只存在原始的操作系统镜像,系统将按正常程序启动,首先系统将按顺序初始化各种部件,首先初始化体系结构,然后初始化中断向量表、调度器、内存等等,最后启动系统的各种服务。
以ARM-Linux为例,这个启动过程主要从Start_kernel开始直到创建init进程。Init进程调用lock_kernel之后,在调用prepare_namespace加载rootfs之前,调用do_basic_setup函数,进行一些基础的设置,如pci,sbus,ecard等,do_basic_setup然后调用start_context_thread()和do_initcalls(),加载一些设备的驱动程序,之后,进入software_resume()这个新添加的函数,准备检查交换分区,进行系统的恢复。
software_resume函数进行一些必要的条件检测之后,调用read_suspend_image函数,来读取之前保存的镜像,如果镜像不存在读取失败,software_resume函数会调用kernel_thread(swsusp_mainloop,NULL,CLONE_FS|CLONE_FILES|CLONE_SIGHAND|SIGCHLD)来创建一个内核态的进程,swsusp_mainloop()函数调用daemonize()来释放对用户空间的引用使自己成为一个后台的守护进程,并重命名自己为kswsuspd,之后便陷入了无限的循环,并且每隔一秒检测一下swsusp_state[0]的值是否出现变化(若此值从0变成1,则会跳出循环,调用休眠的函数)。至此,software_resume函数返回,继续do_basic_setup以及init(),直至系统正常启动。
3)、镜像启动
如果引导程序发现存在操作系统的镜像,引导程序将这个镜像载入内存,并进行解压缩;系统先创立一个虚拟终端,用来显示装载镜像过程中的系统信息,首先检查镜像的正确性,然后按照顺序将镜像中的内存页面恢复到内存,最后将处理器的上下文恢复。这部分工作的具体举例说明将放到后面。
3、镜像工作环境的建立
当系统启动到最简洁的基本工作状态后,操作系统将启动系统休眠过进程,这个进程的主要工作是为保存系统镜像做各种准备工作;
以Linux操作系统能够的镜像启动为例,这部分工作主要包括:
1)向内核的数据段里面添加一段:_nosave,以便于把一些变量放到其中。这样一来,在使用这些变量的时候,就不会涉及到堆栈。
2)定义保存/恢复镜像的设备static char resume_file[256]=″/dev/modify″,此设备的主设备号是241,次设备号是2,同时需要在init/do_mounts.c中的root_dev_names[]中添加一项:{″modify″,0xf102},此后通过name_to_kdev_t函数,指定参数”/dev/modify”就可以获得该设备的设备号0xf102,再通过宏MAJOR()和MINOR()就可分别获得该设备的主设备号241和从设备号2。
3)定义状态量:int swsusp_state[3]用来管理进行休眠和镜像过程中的一些参数信息。
二、保存系统镜像
这部分主要完成系统现场的保存工作,首先将将建立一个虚拟终端,用来模拟通讯;然后开始结束除内核态进程,僵死进程,当前进程之外所有的进程,此后调用函数来释放尽可能多的内存空间,以减少内存镜像的大小,然后对一些驱动进行处理,对在电源管理系统中注册的所有外设,发送挂起命令,然后插入系统屏障,阻断系统执行,开始保存处理器上下文,最后将内存镜像到外部制定的设备上,最后将操作系统休眠。
以ARM-Linux为例,整个过程如下所示:
1)、系统要建立镜像将必须调用一个叫做software_suspend函数。software_suspend()调用了do_software_suspend函数,真正开始了系统的休眠和镜像的建立。
2)、software_suspend()调用了do_software_suspend函数,首先建立一个虚拟的终端,然后开始调用freeze_processes函数来结束除内核态进程,僵死进程,当前进程之外所有的进程,此后调用free_some_memory函数来释放尽可能多的内存空间,以减少内存镜像的大小。然后对一些驱动进行处理,调用了pm_send_all(PM_SUSPEND,(void*)3)向在电源管理PM模块中注册了的设备发送系统挂起suspend的通知。
3)、最后do_software_suspend函数调用do_suspend_lowlevel函数。do_suspend_lowlevel依次调用do_magic_suspend_1(),save_processor_context()和do_magic_suspend_2()三个函数do_magic_suspend_1()调用mb()和barrier()来为接下来的save_processor_context函数做准备。Void Barrier(void)通知编译器插入一个内存屏障,但对硬件无效,编译后的代码会把当前CPU寄存器中的所有修改过的数值存入内存,需要这些数据的时候再重新从内存中读出。
4)、save_processor_context函数保存当前状态下的CPU的运行上下文。用来保存这些值的一个struct具有_attribute_((packed))的属性,可将其成员变量紧凑排列。
5)、之后进入do_magic_suspend_2函数。此函数负责把内存页面保存到swap分区中。此函数首先调用read_swapfiles从可能的32个交换设备(包括文件和分区)中找到在前文中指定的分区:/dev/modify。然后调用save_suspend_image来完成全部的复制操作之后,调用suspend_power_down,关闭或者重新启动计算机。
三、操作系统镜像的装载
操作系统的引导程序在启动的过程中,将操作系统内核镜像从系统的外存上载入内核,并进行解压缩,在启动过程中,引导程序如果发现存在操作系统启动优化镜像,系统将这个镜像载入内存,并进行解压缩;
系统先创立一个虚拟终端,用来显示装载镜像过程中的系统信息,首先检查镜像的正确性,然后按照顺序将镜像中的内存页面恢复到内存,最后将处理器的上下文恢复;
以ARM-Linux为例,整个过程如下所示:
1)、开机后,BootLoader装载linux kernel并解压缩,然后start_kernel直到创建init进程。Init进程调用lock_kernel之后,在调用prepare_namespace加载rootfs之前,调用do_basic_setup函数,进行一些基础的设置,如pci,sbus,ecard等,do_basic_setup然后调用start_context_thread()和do_initcalls(),加载一些设备的驱动程序,之后,进入自己的software_resume()函数,准备检查交换分区,进行系统的恢复。
2)、software_resume函数进行一些必要的条件检测之后,调用read_suspend_image函数,来读取之前保存的镜像,read_suspend_image调用更底层的_read_suspend_image来完成主动的镜像读取工作。
3)、_read_suspend_image调用prepare_suspend_console来创建一个虚拟的控制台,用来显示恢复中的一些相关信息。之后调用bdev_read_page来从/dev/modify设备里面获取一页,得到镜像的头部信息,并调用sanity_check函数来检测镜像的头部信息是否正确,以确定现在的系统是否是休眠前的系统,如果不是则按照正常系统启动。
4)、接下来通过循环调用bdev_read_page来获得pagedir和所有的保存的内存的页面(读取内存页面的顺序与保存内存页面时的顺序正好相反)。并回复内存内容,然后read_suspend_image函数返回。接下来调用do_suspend_lowlevel来进一步地恢复系统。
5)、do_suspend_lowlevel通过对CPU寄存器Cr3的设置,把swapper_pg_dir的物理地址做为更改为页目录的物理地址。并且通过对ecx的设置,创建了新的堆栈指针。CR3用于保存页目录表的起始物理地址。由于目录是页对齐的,所以仅高20位有效,低12位保留未用。向CR3中装入一个新值时,低12位必须为0;但从CR3中取值时,低12位被忽略。每当用MOV指令重置CR3的值时,会导致分页机制高速缓冲区的内容无效,用此方法,可以在启用分页机制之前,即把PG位置1之前,预先刷新分页机制的高速缓存。CR3寄存器即使在CR0寄存器的PG位或PE位为0时也可装入,如在实模式下也可设置CR3,以便进行分页机制的初始化。在任务切换时,CR3要被改变,但是如果新任务中CR3的值与原任务中CR3的值相同,那么处理器不刷新分页高速缓存,以便当任务共享也表时有较快的执行速度。
6)、do_suspend_lowlevel接下来依次调用do_magic_resume_1()restore_processor_context和do_magic_resume_2()来完成所有的恢复工作。
7)、do_magic_resume_1()调用了mb();barrier();来为接下来的restore_processor_context函数做准备。Void Barrier(void)通知编译器插入一个内存屏障,但对硬件无效,编译后的代码会把当前CPU寄存器中的所有修改过的数值存入内存,需要这些数据的时候再重新从内存中读出。此后,do_suspend_lowlevel开始以sizeof(char)为单位进行内存页面的复制。之所以这里不能使用copy_page这样的函数,是因为在内存页面复制的时候,会破坏堆栈(stack),在完全恢复CPU寄存器的值之前,不能再使用堆栈以及局部变量,但是可以使用位于内核代码段的_nosave区的变量。之后,restore_processor_context()函数开始恢复CPU寄存器的值。最后进入do_magic_resume_2()。
8)、do_magic_resume_2()主要处理一些清扫现场的工作。它释放掉在休眠时分配的pagedir,以保证内存完全恢复到休眠前的状态然后通过调用pm_send_all(PM_RESUME,(void*)0)向在电源管理PM模块中注册了的设备发送系统恢复resume的通知。至此,所有的工作都完成了。系统已经恢复到休眠之前的状态。
整个系统的流程图如附图所示。
Claims (1)
1.一种嵌入式操作系统镜像启动的启动优化方法,其特征在于:
1)系统镜像准备
操作系统的引导程序在启动的过程中,将操作系统内核镜像从系统的外存上载入内核,并进行解压缩,在启动过程中,引导程序如果发现只存在原始的操作系统镜像,系统将按正常程序启动;
当系统启动到最简洁的基本工作状态后,操作系统将启动系统休眠过进程,这个进程的主要工作是为保存系统镜像做各种准备工作;
2)保存系统镜像
这部分主要完成系统现场的保存工作,首先将将建立一个虚拟终端,用来模拟通讯,然后开始结束除内核态进程,僵死进程,当前进程之外所有的进程,此后调用函数来释放尽可能多的内存空间,以减少内存镜像的大小,然后对一些驱动进行处理,对在电源管理系统中注册的所有外设,发送挂起命令,然后插入系统屏障,阻断系统执行,开始保存处理器上下文,最后将内存镜像到外部制定的设备上,最后将操作系统休眠;
3)操作系统镜像的装载
操作系统的引导程序在启动的过程中,将操作系统内核镜像从系统的外存上载入内核,并进行解压缩,在启动过程中,引导程序如果发现存在操作系统启动优化镜像,系统将这个镜像载入内存,并进行解压缩;
系统先创立一个虚拟终端,用来显示装载镜像过程中的系统信息,首先检查镜像的正确性,然后按照顺序将镜像中的内存页面恢复到内存,最后将处理器的上下文恢复。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100498559A CN100383739C (zh) | 2006-03-15 | 2006-03-15 | 嵌入式操作系统镜像启动的启动优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100498559A CN100383739C (zh) | 2006-03-15 | 2006-03-15 | 嵌入式操作系统镜像启动的启动优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1818869A true CN1818869A (zh) | 2006-08-16 |
CN100383739C CN100383739C (zh) | 2008-04-23 |
Family
ID=36918897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100498559A Expired - Fee Related CN100383739C (zh) | 2006-03-15 | 2006-03-15 | 嵌入式操作系统镜像启动的启动优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100383739C (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101256533B (zh) * | 2007-03-02 | 2010-06-16 | 国际商业机器公司 | 在计算环境中进行存储器管理的方法和系统 |
CN102012823A (zh) * | 2009-09-04 | 2011-04-13 | 中兴通讯股份有限公司 | 一种快速重新启动计算机的方法和装置 |
CN101216772B (zh) * | 2008-01-15 | 2011-05-11 | 中兴通讯股份有限公司 | 一种嵌入式设备的启动方法及软件升级方法 |
CN101576829B (zh) * | 2009-06-12 | 2011-08-24 | 宋志飞 | 嵌入式Linux系统中应用进程的托管方法及系统 |
US8028177B2 (en) | 2008-02-21 | 2011-09-27 | Hon Hai Precision Industry Co., Ltd. | Method for changing power states of a computer |
WO2012048459A1 (zh) * | 2010-10-12 | 2012-04-19 | 北京中科院软件中心有限公司 | 远程终端运行环境的加载方法及系统 |
CN102455917A (zh) * | 2010-10-22 | 2012-05-16 | 康佳集团股份有限公司 | 一种网络电视的启动控制方法及装置 |
CN101593122B (zh) * | 2009-06-24 | 2012-09-05 | 中兴通讯股份有限公司 | 一种嵌入式系统的启动方法和装置 |
CN103106087A (zh) * | 2011-11-15 | 2013-05-15 | 三星电子株式会社 | 成像装置和引导具有休眠功能的成像装置的方法 |
CN103514065A (zh) * | 2012-06-29 | 2014-01-15 | 国基电子(上海)有限公司 | 具自动检测和恢复功能的电子装置及方法 |
CN103995711A (zh) * | 2010-03-30 | 2014-08-20 | 鸿富锦精密工业(深圳)有限公司 | 电子计算器装置及其重新启动方法 |
WO2015085755A1 (zh) * | 2013-12-10 | 2015-06-18 | 华为技术有限公司 | 一种操作系统恢复方法、装置及终端设备 |
CN104950703A (zh) * | 2015-03-31 | 2015-09-30 | 南通艾利特自动化有限公司 | 基于嵌入式系统的工业机器人控制器快速启动方法 |
WO2016101519A1 (zh) * | 2014-12-26 | 2016-06-30 | 中兴通讯股份有限公司 | 一种实现操作系统重启的方法和装置 |
US9600369B2 (en) | 2013-12-10 | 2017-03-21 | Huawei Technologies Co., Ltd. | Operating system recovery method and apparatus, and terminal device |
WO2018072688A1 (zh) * | 2016-10-19 | 2018-04-26 | 华为技术有限公司 | 内核镜像文件快速加载方法和装置 |
CN110647428A (zh) * | 2019-09-29 | 2020-01-03 | 青岛海信电器股份有限公司 | 镜像文件的制作及恢复方法、处理器和嵌入式系统 |
CN110716758A (zh) * | 2018-06-26 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 程序运行方法、装置、设备以及存储介质 |
CN112214247A (zh) * | 2019-07-12 | 2021-01-12 | 华为技术有限公司 | 一种系统启动方法以及相关设备 |
CN113392038A (zh) * | 2021-08-17 | 2021-09-14 | 北京鲸鲮信息系统技术有限公司 | 基于Linux内核的系统休眠内存管理方法及装置 |
CN113485764A (zh) * | 2021-07-05 | 2021-10-08 | 珠海格力电器股份有限公司 | 一种嵌入式系统及其控制方法、装置和存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7917741B2 (en) * | 2007-04-10 | 2011-03-29 | Standard Microsystems Corporation | Enhancing security of a system via access by an embedded controller to a secure storage device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6807630B2 (en) * | 2000-12-15 | 2004-10-19 | International Business Machines Corporation | Method for fast reinitialization wherein a saved system image of an operating system is transferred into a primary memory from a secondary memory |
CN1121008C (zh) * | 2001-09-07 | 2003-09-10 | 清华大学 | 一种网络环境下的计算机远程启动方法 |
US7669140B2 (en) * | 2003-08-21 | 2010-02-23 | Microsoft Corporation | System and method for providing rich minimized applications |
DE202004009434U1 (de) * | 2004-06-15 | 2004-08-12 | Eltec Elektronik Ag | Computersystem für das Klonen eines Arbeitsbetriebssystems |
-
2006
- 2006-03-15 CN CNB2006100498559A patent/CN100383739C/zh not_active Expired - Fee Related
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101256533B (zh) * | 2007-03-02 | 2010-06-16 | 国际商业机器公司 | 在计算环境中进行存储器管理的方法和系统 |
CN101216772B (zh) * | 2008-01-15 | 2011-05-11 | 中兴通讯股份有限公司 | 一种嵌入式设备的启动方法及软件升级方法 |
US8028177B2 (en) | 2008-02-21 | 2011-09-27 | Hon Hai Precision Industry Co., Ltd. | Method for changing power states of a computer |
CN101576829B (zh) * | 2009-06-12 | 2011-08-24 | 宋志飞 | 嵌入式Linux系统中应用进程的托管方法及系统 |
CN101593122B (zh) * | 2009-06-24 | 2012-09-05 | 中兴通讯股份有限公司 | 一种嵌入式系统的启动方法和装置 |
CN102012823A (zh) * | 2009-09-04 | 2011-04-13 | 中兴通讯股份有限公司 | 一种快速重新启动计算机的方法和装置 |
CN103995711B (zh) * | 2010-03-30 | 2018-02-02 | 鸿富锦精密工业(深圳)有限公司 | 电子计算器装置及其重新启动方法 |
CN103995711A (zh) * | 2010-03-30 | 2014-08-20 | 鸿富锦精密工业(深圳)有限公司 | 电子计算器装置及其重新启动方法 |
WO2012048459A1 (zh) * | 2010-10-12 | 2012-04-19 | 北京中科院软件中心有限公司 | 远程终端运行环境的加载方法及系统 |
CN102455917B (zh) * | 2010-10-22 | 2016-06-29 | 康佳集团股份有限公司 | 一种网络电视的启动控制方法及装置 |
CN102455917A (zh) * | 2010-10-22 | 2012-05-16 | 康佳集团股份有限公司 | 一种网络电视的启动控制方法及装置 |
CN103106087A (zh) * | 2011-11-15 | 2013-05-15 | 三星电子株式会社 | 成像装置和引导具有休眠功能的成像装置的方法 |
CN103106087B (zh) * | 2011-11-15 | 2018-02-06 | 爱思打印解决方案有限公司 | 成像装置和引导具有休眠功能的成像装置的方法 |
CN103514065A (zh) * | 2012-06-29 | 2014-01-15 | 国基电子(上海)有限公司 | 具自动检测和恢复功能的电子装置及方法 |
CN103514065B (zh) * | 2012-06-29 | 2016-08-10 | 国基电子(上海)有限公司 | 具自动检测和恢复功能的电子装置及方法 |
WO2015085755A1 (zh) * | 2013-12-10 | 2015-06-18 | 华为技术有限公司 | 一种操作系统恢复方法、装置及终端设备 |
US9600369B2 (en) | 2013-12-10 | 2017-03-21 | Huawei Technologies Co., Ltd. | Operating system recovery method and apparatus, and terminal device |
TWI608345B (zh) * | 2013-12-10 | 2017-12-11 | 華為技術有限公司 | Operating system recovery method, device and terminal equipment |
WO2016101519A1 (zh) * | 2014-12-26 | 2016-06-30 | 中兴通讯股份有限公司 | 一种实现操作系统重启的方法和装置 |
CN104950703B (zh) * | 2015-03-31 | 2017-10-17 | 南通艾利特自动化有限公司 | 基于嵌入式系统的工业机器人控制器快速启动方法 |
CN104950703A (zh) * | 2015-03-31 | 2015-09-30 | 南通艾利特自动化有限公司 | 基于嵌入式系统的工业机器人控制器快速启动方法 |
WO2018072688A1 (zh) * | 2016-10-19 | 2018-04-26 | 华为技术有限公司 | 内核镜像文件快速加载方法和装置 |
US11074083B2 (en) | 2016-10-19 | 2021-07-27 | Huawei Technologies Co., Ltd. | Fast loading kernel image file for booting |
CN110716758A (zh) * | 2018-06-26 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 程序运行方法、装置、设备以及存储介质 |
CN112214247A (zh) * | 2019-07-12 | 2021-01-12 | 华为技术有限公司 | 一种系统启动方法以及相关设备 |
US11868631B2 (en) | 2019-07-12 | 2024-01-09 | Huawei Technologies Co., Ltd. | System startup method and related device |
CN110647428A (zh) * | 2019-09-29 | 2020-01-03 | 青岛海信电器股份有限公司 | 镜像文件的制作及恢复方法、处理器和嵌入式系统 |
CN113485764A (zh) * | 2021-07-05 | 2021-10-08 | 珠海格力电器股份有限公司 | 一种嵌入式系统及其控制方法、装置和存储介质 |
CN113392038A (zh) * | 2021-08-17 | 2021-09-14 | 北京鲸鲮信息系统技术有限公司 | 基于Linux内核的系统休眠内存管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100383739C (zh) | 2008-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1818869A (zh) | 嵌入式操作系统镜像启动的启动优化方法 | |
CN100377085C (zh) | 嵌入式操作系统硬件镜像启动优化的实现方法 | |
US9286098B1 (en) | Using master file template area to increase density of virtual machines in a computer system | |
US8996468B1 (en) | Block status mapping system for reducing virtual machine backup storage | |
US8453015B2 (en) | Memory allocation for crash dump | |
US7620784B2 (en) | High speed nonvolatile memory device using parallel writing among a plurality of interfaces | |
US9600202B2 (en) | Method and device for implementing memory migration | |
KR100734823B1 (ko) | 메모리 압축된 머신을 모핑하는 방법 및 장치 | |
US7818616B2 (en) | Warm reboot enabled kernel dumper | |
WO2018176911A1 (zh) | 一种虚拟磁盘文件格式转换方法和装置 | |
CN102231138B (zh) | 计算机内存数据准确采集系统及获取方法 | |
US9081692B2 (en) | Information processing apparatus and method thereof | |
CN1818870A (zh) | 嵌入式操作系统内存镜像启动优化的实现方法 | |
CN105874428A (zh) | 用于多个操作系统环境中的操作系统转变的技术 | |
US7010725B2 (en) | Method and apparatus for getting dump of a computer system | |
US20050257080A1 (en) | Method of checkpointing state of virtual memory for process | |
CN118244972A (zh) | 一种数据存储方法、装置及系统 | |
US8799903B1 (en) | Systems and methods for exchanging runtime functionalities between software stacks | |
CN113127263B (zh) | 一种内核崩溃恢复方法、装置、设备及存储介质 | |
CN1276349C (zh) | 一种机群跨平台并行系统镜像备份的方法 | |
KR100994723B1 (ko) | 시스템에서 초기 구동시간을 단축시키는 선택적 서스펜드 리쥼 방법 및 그 기록매체 | |
WO2015149407A1 (zh) | 一种基于虚拟化技术的读写方法及系统 | |
JP6788566B2 (ja) | コンピューティングシステム及びその動作方法 | |
JP4792065B2 (ja) | データ記憶方法 | |
Dolev et al. | Memory management for self-stabilizing operating systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080423 Termination date: 20120315 |