基于新型存储器的嵌入式系统及其进程的休眠与唤醒方法技术方案

技术编号:8130861 阅读:176 留言:0更新日期:2012-12-27 02:45
本发明专利技术提供一种基于新型存储器的嵌入式系统及其进程的休眠与唤醒方法,该嵌入式系统由新型非易失存储器及DRAM内存构成存储架构,所述新型非易失存储器又由引导程序存储区、内核存储区、文件系统存储区、以及进程镜像备份区组成,其中,所述进程镜像备份区划分有镜像索引区和镜像数据保存区,可实现应用进程挂起到所述新型非易失存储器。本发明专利技术可实现系统级以及单进程的休眠,使进程休眠、唤醒管理更加灵活、方便,可降低传统嵌入式系统休眠唤醒的数据备份及恢复的工作量以及系统休眠时数据备份所占用的大量存储空间,从而提高嵌入式系统运行效率。

【技术实现步骤摘要】

本专利技术涉及一种嵌入式系统
,特别是涉及一种。
技术介绍
进程是操作系统中一个非常重要的概念,在层次结构的操作系统中,进程是系统分配资源的基本单位,也是在多任务处理下,进程CPU调度的基本单位。进程是程序在一个 数据集上的运行过程,是系统进行资源分配和调度的基本单位,而处理器若要对进程识别并进行管理,就需要有描述进程存在并能够反映起变化的物理实体,即进程的静态描述。进程的静态描述有三个部分组成,PCB (进程控制块),程序段和数据结构集。PCB包含进程的描述信息,控制信息以及资源信息,系统根据PCB感知进程的存在并掌握进程的状态以达到控制进程活动的目的。进程的程序部分描述进程所要完成的功能。而数据集是进程不可缺少的工作区的操作对象。对进程的管理是操作系统中最重要的功能之一。进程从创建到撤销,要经历不同的阶段,从系统资源角度出发,进程通常有3种基本状态I)就绪状态(Ready):这是进程已具有除处理器以外的其他资源,因为处理器资源的独占性,所以暂时不能运行,需要等其他进程释放处理器资源。2)运行状态(Running):进程获得处理器资源,其程序正在执行,单处理器系统中,只有一个进程处于运行状态;在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。3)阻塞状态(Blocked):进程因等待某种事件的发生而暂时不能运行,如等待设备的中断、等待其他进程的信号等,在这种状态下,即使处理器空闲也无法使用。在操作系统中,对进程的调度是最重要的工作之一。每个处理器上同时只能处理一个进程,为了合理的利用系统资源,通常会采用分时执行的办法让多个进程共享存储器资源,将处理器的执行时间分成较短间隔的时间段,每个进程按照分配到的时间段来运行,当时间段到了,就比换下一个进程执行,并有操作系统决定要执行的下一个进程。由于进程调度的存在,在进程的生命期里,进程所处的状态总是随着外界条件的变化和自身的推进而不断变化的。进程的调度涉及到进程间状态的转换涉、当前进程状态的保存、新进程调度运行以及进程间的切换。为了便于管理、控制进程,系统设置的一个专门的数据结构一PCB,用它来记录进程的外部特征,描述进程的运动变化过程。系统调度时利用PCB来控制和管理各个进程的所有信息,所以PCB是系统感知进程存在的唯一标志。进程与PCB是一一对应的。一般情况下,PCB中包含以下内容I)进程标识符进程标识符是系统内部用于标识一个进程所赋予的编号,称为进程的内部名。2)处理机的信息,即进程由执行状态变为其他状态时保存的CPU现场信息,以便当该进程再次变成就绪状态,被调度程序分配处理机时恢复信息,使进程能继续正常执行。通常包括程序状态字PSW、通用寄存器的内容(累加器和变址器的内容)、程序计数器的内容和用户栈的指针等。3)进程调度信息包括进程状态,进程的优先级,进程调度所需的其它信息,事件等信息4)进程控制信息包括程序的数据的地址,资源清单,进程同步和通信机制,链接指 针等信息。通过对PCB的操作,系统为有关进程分配资源从而使得有关进程得以被调度执行;而完成进程所要求功能的程序段的有关地址,以及程序过程中因某种原因被停止执行后的现场信息也都在PCB中。最后,当进程执行结束后,则通过释放PCB来释放进程所占用的各种资源。基于上述进程特性、进程状态转换、系统调用的原理特性,传统嵌入式系统在进程状态转换、系统调用过程中,进程的当前工作状态的相对应的PCB控制块信息或者保存在内存DRAM中或者保存在交换分区中,当系统掉电时或关闭时,系统中那些正在运打的进程或挂起的进程的相对应的PCB控制块信息将全部丢失,当系统重新启动进程或再次启动被强制关闭的应用进程时,都需要基于文件系统中存放的应用程序的存储代码启动该应用进程,同时要恢复该进程上次关闭前的工作状态时需要经过多步重复性操作从而带来内存浪费、时效性差等问题;现有的嵌入式系统具有休眠唤醒功能,一定程度上可实现基于系统的休眠唤醒实现进程工作状态的快速恢复,加快进程的启动,然而,系统休眠唤醒是以系统为单位来降低系统的功耗,系统休眠时需要保存内存中所有进程的PCB控制块信息,同时需要较大的非易失存储器空间来存储系统休眠时的挂起进程是相关备份数据,虽然能保证系统下电后能基于非易失存储器系统休眠时保存的备份信息快速恢复到进程休眠前的工作状态,但是以系统休眠时对内存中所有进程PCB控制块信息备份及牺牲较大容量的非易失存储器换来的。鉴于此,如何基于进程级别的管理进一步降低嵌入式系统的功耗及系统休眠、唤醒过程中的工作量实现应用程序快速恢复到挂起前的工作状态已成为一个亟待解决的问题。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种基于动态镜像管理的嵌入式系统及其应用进程的休眠与唤醒方法,用于解决现有技术中嵌入式系统进程休眠过程中存在数据备份过大造成内存浪费、以及唤醒进程时装载工作量相对较大、系统运行速度慢以及时效性差等问题。为实现上述目的及其他相关目的,本专利技术提出一种基于新型存储器的嵌入式系统休眠与唤醒方法,所述嵌入式系统至少包括CPU控制器、新型非易失存储器、以及DRAM内存,其中,所述新型非易失存储器由引导程序存储区、内核存储区、文件系统存储区、以及进程镜像备份区组成,所述嵌入式系统还包括将所述进程镜像备份区划分为镜像索引区和镜像数据保存区;进程挂起,则该进程释放CPU资源进入休眠状态;所述进程休眠时,将该进程当前工作状态相对应的全部PCB控制块信息数据保存到所述进程镜像备份区中,即所述进程挂起到所述非易失存储器;或将在所述DRAM内存中该进程当前工作状态相对应的部分PCB控制块信息数据与进程镜像备份区中该进程的备份数据合并 保存到所述进程镜像备份区中,即所述进程挂起到所述非易失存储器;或所述进程释放其所占用CPU资源,该进程当前工作状态相对应的PCB制块信息仍保留在所述DRAM内存中;或者应用进程关闭退出,释放所占用CPU资源及DRAM内存空间。进程唤醒,则该进程获得CPU资源进入或恢复工作状态;所述进程唤醒时,基于所述DRAM内存中的该进程挂起前的PCB控制块相关信息唤醒该进程;或基于所述新型非易失存储器随机访问特性原位启动该进程;或直接重新启动一进程,即当所述DRAM内存中及镜像备份区均没有该进程挂起时的相关存储信息时,直接基于所述进程对应的应用程序的存储代码启动该进程。可选地,所述嵌入式系统进程唤醒时,至少包括以下步骤I)系统唤醒或启动应用进程命令;2)扫描所述DRAM内存中进程内存信息保存情况;3)判断所述DRAM内存中是否保存有该进程挂起前工作状态相对应的PCB控制块相关信息,若是,则进入下一步骤,若否,则转至步骤5);4)基于所述DRAM内存中的该进程挂起前的PCB控制块相关信息唤醒该进程,快速恢复到该进程挂起前的工作状态,接着转至步骤18);5)扫描所述进程镜像备份区中挂起进程镜像数据备份保存情况;6)判断所述镜像索引区内是否保存有该进程的镜像索引记录,若是,则转至步骤8),若否,则进入下一步骤;7)直接从重新启动该应用进程,接着转至步骤18);8)基于所述新型非易失存储器随机访问特性原位启动该应用进程,并快速恢复到该进程挂起前的工作状态;9)判断该进本文档来自技高网
...

【技术保护点】
一种基于新型存储器的嵌入式系统休眠与唤醒方法,所述嵌入式系统至少包括CPU控制器、新型非易失存储器、以及DRAM内存,其中,所述新型非易失存储器由引导程序存储区、内核存储区、文件系统存储区、以及进程镜像备份区组成,其特征在于:将所述进程镜像备份区划分为镜像索引区和镜像数据保存区;进程挂起,则该进程释放CPU资源进入休眠状态;所述进程休眠时,将该进程当前工作状态相对应的全部PCB控制块信息数据保存到所述进程镜像备份区中,即所述进程挂起到所述非易失存储器;或将在所述DRAM内存中该进程当前工作状态相对应的部分PCB控制块信息数据与进程镜像备份区中该进程的备份数据合并保存到所述进程镜像备份区中,即所述进程挂起到所述非易失存储器;或所述进程释放其所占用CPU资源,该进程当前工作状态相对应的PCB制块信息仍保留在所述DRAM内存中;或者应用进程关闭退出,释放所占用CPU资源及DRAM内存空间。进程唤醒,则该进程获得CPU资源进入或恢复工作状态;所述进程唤醒时,基于所述DRAM内存中的该进程挂起前的PCB控制块相关信息唤醒该进程;或基于所述新型非易失存储器随机访问特性原位启动该进程;或直接重新启动一进程,即当所述DRAM内存中及镜像备份区均没有该进程挂起时的相关存储信息时,直接基于所述进程对应的应用程序的存储代码启动该进程。...

【技术特征摘要】
1.一种基于新型存储器的嵌入式系统休眠与唤醒方法,所述嵌入式系统至少包括CPU控制器、新型非易失存储器、以及DRAM内存,其中,所述新型非易失存储器由引导程序存储区、内核存储区、文件系统存储区、以及进程镜像备份区组成,其特征在于 将所述进程镜像备份区划分为镜像索引区和镜像数据保存区; 进程挂起,则该进程释放CPU资源进入休眠状态; 所述进程休眠时,将该进程当前工作状态相对应的全部PCB控制块信息数据保存到所述进程镜像备份区中,即所述进程挂起到所述非易失存储器;或将在所述DRAM内存中该进程当前工作状态相对应的部分PCB控制块信息数据与进程镜像备份区中该进程的备份数据合并保存到所述进程镜像备份区中,即所述进程挂起到所述非易失存储器;或所述进程释放其所占用CPU资源,该进程当前工作状态相对应的PCB制块信息仍保留在所述DRAM内存中;或者应用进程关闭退出,释放所占用CPU资源及DRAM内存空间。进程唤醒,则该进程获得CPU资源进入或恢复工作状态; 所述进程唤醒时,基于所述DRAM内存中的该进程挂起前的PCB控制块相关信息唤醒该进程;或基于所述新型非易失存储器随机访问特性原位启动该进程;或直接重新启动一进程,即当所述DRAM内存中及镜像备份区均没有该进程挂起时的相关存储信息时,直接基于所述进程对应的应用程序的存储代码启动该进程。2.根据权利要求I所述的基于新型存储器的嵌入式系统休眠与唤醒方法,其特征在于,所述嵌入式系统进程唤醒时,至少包括以下步骤 1)系统唤醒或启动应用进程命令; 2)扫描所述DRAM内存中进程内存信息保存情况; 3)判断所述DRAM内存中是否保存有该进程挂起前工作状态相对应的PCB控制块相关信息,若是,则进入下一步骤,若否,则转至步骤5); 4)基于所述DRAM内存中的该进程挂起前的PCB控制块相关信息唤醒该进程,快速恢复到该进程挂起前的工作状态,接着转至步骤18); 5)扫描所述进程镜像备份区中挂起进程镜像数据备份保存情况; 6)判断所述镜像索引区内是否保存有该进程的镜像索引记录,若是,则转至步骤8),若否,则进入下一步骤; 7)直接从重新启动该应用进程,接着转至步骤18); 8)基于所述新型非易失存储器随机访问特性原位启动该应用进程,并快速恢复到该进程挂起前的工作状态; 9)判断该进程执行过程中是否有写操作,若是,则进入下一步骤,若否则转至步骤18); 10)基于当前进程在所述镜像数据备份区运行的工作状态信息更新保存当前进程在所述镜像索引区的相对应的索引记录; 11)加载当前进程的写操作相关的PCB控制块备份数据到所述DRAM内存,在该DRAM内存中执行后继的读、与操; 12)判断所述DRAM内存中是否有可用内存空间加载该进程写操作相关的PCB控制块备份信息,若是,则转至步骤14),若否,则进入下一步骤; 13)将所述DRAM内存中挂起的使用相对频繁的但挂起时间超过一定时间段的进程的PCB控制块相关信息备份到所述镜像备份区并释放其所占的所述DRAM内存,或直接将某些使用相对不频繁的应用进程关闭并释放其所占的所述DRAM内存,以获得充足可用内存空间; 14)基于所述镜像索引区内该进程的镜像索引记录加载该进程写操作相关的PCB控制块镜像备份数据到所述DRAM内存中; 15)基于加载到所述DRAM内存中的该进程写操作相关的PCB控制块镜像备份数据执行后继的读、写操作; 16)释放所述镜像数据保存区中保存的该应用进程写操作相关的PCB控制块镜像备份数据; 17)更新所述镜像索引区中保存的该进程的索引记录信息; 18)唤醒或启动所述进程。3.根据权利要求I所述的基于新型存储器的嵌入式系统休眠与唤醒方法,其特征在于所述新型非易失主存为相变存储器PCRAM、阻变存储器R-RAM、磁存储器MRAM、或铁电存储器FeRAM。4.根据权利要求I所述的基于新型存储器的嵌入式系统休眠与唤醒方法,其特征在于所述进程休眠包括系统级进程休眠及单进程休眠,系统级进程休眠即系统休眠或关闭时使相应的应用进程进入休眠状态;单进程休眠即单个应用进程释放所占用CPU资源,挂起进入休眠状态。5.根据权利要求4所述的基于新型存储器的嵌入式系统休眠与唤醒方法,其特征在于,所述系统级进程休眠时,至少包括以下步骤 1)系统关闭或挂起命令; 2)按进程PID依次扫描所述DRAM内存中各进程属性; 3)判断当前进程是否为应用进程,若是,则转至步骤5),若否,则进入下一步骤; 4)该进程为系统进程,无需备份当前进程的PCB控制块信息,并转至步骤15); 5)判断当前应用进程是否需要挂起,若是则转至步骤7),若否,则进入下一步骤; 6)该应用进程为需要关闭进程,无需备份当前进程在所述DRAM内存的PCB控制块信息,并转至步骤17); 7)扫描所述进程镜像备份区中挂起进程镜像数据备份保存情况; 8)判断所述进程镜像索引区中是否保存有该进程的索引记录,若是,则转至步骤16),若否,则进入下一步骤; 9)该应用进程是基于所述DRAM内存启动的进程,其运行状态信息全部保存于DRAM内存,该应用进程挂起并置换出内存时需保存该进程当前工作状态相关的全部PCB控制块数据到进程镜像备份区; 10)判断所述进程镜像备份区中是否有满足存放当前应用进程镜像数据备份的存储块,若是,则转至步骤12),若否...

【专利技术属性】
技术研发人员:李顺芬陈小刚王玉婵陈一峰许林海周密宋志棠
申请(专利权)人:中国科学院上海微系统与信息技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1