更新启动装置及更新启动控制方法

文档序号:6571180阅读:198来源:国知局
专利名称:更新启动装置及更新启动控制方法
技术领域
本发明涉及一种对构成操作系统(以下称为OS)的程序进行更新,然后启动该OS的更新启动装置以及更新启动控制方法。
背景技术
一直以来,便携式电话或PDA(Personal Digital Assistant)等计算装置根据使用者的输入操作,经由网络取得更新信息,该更新信息包含用于对构成OS等的程序的不合适之处进行改善的更新程序。计算装置使用该更新信息,对存在不恰当之处的程序进行更新(例如,参照专利文献1;程序更新处理)。
另外还提供了同时执行多个OS的计算装置。在该计算装置执行的多个OS的组合中包括执行实时控制的实时OS与Linux(注册商标)或Windows(注册商标)等被广泛应用的通用OS的组合(例如,参照专利文献2)、或者执行某种可靠性的处理(process)的Trusted OS与执行比该可靠性低的可靠性处理的Untrusted OS的组合(例如,参照专利文献3)等等。
上述计算装置不仅可以执行启动全部OS的处理(全部OS启动处理),也可以执行仅启动一个OS的处理(部分OS启动处理)。例如,仅在第一OS以及第二OS中的第二OS中发生了故障时,计算装置可以仅再次启动第二OS。
专利文献1US专利第6832373号专利文献2US公开专利第2004/205755号专利文献3US公开专利第2005/0033908号发明内容考虑上述程序更新处理与上述全部OS启动处理的组合(组合处理1),或上述程序更新处理与上述部分OS启动处理的组合(组合处理2)。下面,就执行组合处理1以及组合处理2时的问题进行详细地描述。
图9是使用上述组合处理1以及组合处理2时的计算装置的软件结构图。
图10表示使用上述组合处理1及组合处理2时的计算装置的处理动作。
如图9所示,计算装置具有引导程序11;根据来自引导程序11的指示命令,对构成第一OS14或第二OS15的程序进行更新的更新代理程序12;根据来自引导程序11的指示命令,启动第一OS14或第二OS15的调度程序(dispatcher)13;以及存储所下载的更新信息的更新信息存储部20。
此外,引导程序11及更新代理程序12执行所述程序更新处理。调度程序13执行所述全部OS启动处理或所述部分OS启动处理。
如图10所示,在S1中,在计算装置启动时(接通电源时或重新启动时)启动引导程序11。在S3中,当更新信息存储部20中存储有表示存在更新信息的“有信息”时,引导程序11启动更新代理程序12。在S5中,更新代理程序12使用更新信息执行调度程序13或OS的更新,并删除“有信息”。在S9中,当更新信息存储部20中没有存储“有信息”时,引导程序11启动调度程序13。
在S11及S13中,调度程序13确保第一OS14和第二OS15的存储器区域,来启动第一OS14和第二OS15。至此的处理对应于上述组合处理1。
或者,调度程序13也可以不启动全部OS而仅启动一个OS。至此的处理对应于上述组合处理2。
然而,在执行上述组合处理1时,不仅重新启动了与更新有关的OS,也重新启动了与更新无关的OS(S9~S13)。因此,计算装置无法一边运行与更新无关的OS,一边仅重新启动与更新有关的OS,无法提高与更新无关的OS的运转率。
另一方面,在执行所述组合处理2的情况下可以仅重新启动与更新有关的OS,因此解决了上述组合处理1的问题,但产生了以下的问题。
具体而言,在接通电源时,当不存在用于更新构成第一OS14的程序的更新信息,但存在用于更新构成第二OS15的程序的更新信息时,一定执行上述程序更新处理(图10所示的S1~S7)。并且,随后执行所述部分OS启动处理。
因此,当接通电源时若所述程序更新处理未结束,则也不启动与更新无关的第一OS14。由此,计算装置在接通电源时无法迅速启动与更新无关的OS,无法提高该OS的运转率。
因此,鉴于以上问题而作出本发明,其目的在于提供一种更新启动装置及更新启动控制方法,能够仅重新启动多个OS中与更新有关的OS,并且在接通电源时可以迅速启动与更新无关的OS。
为了解决上述问题,本发明的第一特征是,具备启动多个OS的OS启动处理部(例如调度程序167、第2更新代理程序166);启动OS启动处理部的初始启动处理部(例如引导加载程序(bootloder)168);以及存储OS更新信息的更新信息处理部(例如更新信息存储部150),所述OS更新信息用于对构成多个OS中的某个OS的OS程序进行更新;OS启动处理部在接通电源时或OS重新启动时存储有对应于OS的OS更新信息的情况下,使用OS更新信息更新OS程序然后启动OS;在接通电源时未存储与OS对应的OS更新信息时启动OS,在OS的重新启动时未存储对应于与该OS不同的OS的OS更新信息时,中止不同OS的重新启动。
根据该特征,在OS重新启动时未存储有对应于与该OS不同的OS的OS更新信息时,中止该不同OS的重新启动。即,继续该不同的OS的运行。因此可以使与更新无关的OS运行,同时仅重新启动与更新有关的OS,可以提高与更新无关的OS的运转率。
另外,当接通电源或OS重新启动时,不是由初始启动处理部更新OS程序(参照图10所示的S1~S7),而是由OS启动处理部来更新OS程序。另外,当接通电源时,由OS启动处理部启动与更新无关的OS。
因此,当初始启动处理部不执行更新OS程序的处理时,OS启动处理部可以在接通电源时迅速地重新启动与更新无关的OS,可以提高该OS的运转率。
本发明的第二特征为更新信息存储部存储更新中止信息,该更新中止信息以构成OS启动处理部的启动程序的更新未结束为条件,中止构成多个OS中某个OS的OS程序的更新,在接通电源时或OS重新启动时未存储有更新中止信息的情况下,OS启动处理部使用OS更新信息来更新OS程序,在存储有更新中止信息的情况下,中止OS程序的更新。
本发明的第三特征为多个OS具备第一OS和第二OS;更新信息存储部存储更新中止信息,该更新中止信息以构成第一OS的第一OS程序的更新未结束为条件,中止构成第二OS的第二OS程序的更新;在接通电源时或第二OS的重新启动时未存储有更新中止信息的情况下,OS启动处理部使用OS更新信息来更新第二OS程序,在存储有更新中止信息的情况下,中止第二OS程序的更新。
本发明的第四特征为OS启动处理部在已更新了启动程序时删除更新中止信息。
本发明的第五特征为OS启动处理部在已更新了第一OS程序时删除更新中止信息。
本发明的第六特征为更新信息存储部存储用于对构成OS启动处理部的启动程序进行更新的启动更新信息;当在接通电源时或OS重新启动时存储有启动更新信息的情况下,初始启动处理部使用启动更新信息来更新启动程序,在没有存储启动更新信息的情况下,启动OS启动处理部。
本发明的第七特征为多个OS包括第一OS和第二OS;更新信息存储部存储启动中止信息,该启动中止信息以构成第一OS的第一OS程序的更新未结束为条件,中止第二OS的启动;当在接通电源时或OS重新启动前未存储有启动中止信息的情况下,OS启动处理部启动第二OS,当在接通电源时或OS重新启动前存储有启动中止信息的情况下中止第二OS的启动。
本发明的第八特征为OS启动处理部在已更新了第一OS程序时删除启动中止信息。
根据本发明的特征,可以仅重新启动多个OS中与更新有关的OS,并且在接通电源时可以迅速启动与更新无关的OS。


图1是表示第一实施方式的计算装置的内部结构的图。
图2是表示第一实施方式的控制程序的内容的图。
图3是表示第一实施方式的控制程序结构以及硬件结构的图。
图4是表示第一实施方式的计算装置的动作的图。
图5是表示第二实施方式的控制程序结构以及硬件结构的图。
图6是表示第二实施方式的计算装置的动作的图。
图7是表示第三实施方式的控制程序结构以及硬件结构的图。
图8是表示第三实施方式的计算装置的动作的图。
图9是表示使用组合处理1及组合处理2时的计算装置的软件结构以及硬件结构的图。
图10是表示使用组合处理1及组合处理2时的计算装置的处理动作的图。
具体实施例方式
(第一实施方式)(计算装置的结构)图1是本实施方式的计算装置100的概略结构图。如图1所示,计算装置100具备CPU110、通信部120、读卡部130、输入输出部140、更新信息存储部150以及控制程序存储部160。
CPU110按照存储在控制程序存储部160中的程序,执行相应的处理。通信部120从外部装置(未图示)下载规定信息(更新信息等),并将所下载的规定信息存储到更新信息存储部150中(参照图3)。读卡部130读取存储在SIM卡中的用户识别信息,或者读取存储在卡中的其他信息。输入输出部140输入输出文字、符号、数字或图像等信息。
更新信息存储部150具备调度程序更新用存储区域151、第一OS更新用存储区域152、以及第二OS更新用存储区域153(参照图3)。此外,不限于第一OS更新用存储区域152、第二OS更新用存储区域153这两个存储区域,随着OS数量的增加,当然可以增加该更新用存储区域的数量。
调度程序更新用存储区域151是存储第1更新有无信息、第1更新参照信息以及第1更新信息(启动更新信息)的区域。在第1更新有无信息中含有表示存在第1更新信息的“有信息”。在第1更新参照信息中含有第1更新信息被存储的地址信息。在第1更新信息中含有用于对构成调度程序167的程序(启动程序)的一部分或全部进行更新的更新程序。
第一OS更新用存储区域152是存储第2-1更新有无信息、第2-1更新参照信息以及第2-1更新信息(OS更新信息)的区域。第2-1更新有无信息中含有表示存在第2-1更新信息的“有信息”。在第2-1更新参照信息中含有第2-1更新信息被存储的地址信息。在第2-1更新信息中含有用于对构成第一OS163的第一OS程序的一部分或全部进行更新的更新程序。
第二OS更新用存储区域153是存储第2-2更新有无信息、第2-2更新参照信息以及第2-2更新信息(OS更新信息)的区域。在第2-2更新有无信息中含有表示存在第2-2更新信息的“有信息”。在第2-2更新参照信息中含有第2-2更新信息被存储的地址信息。在第2-2更新信息中含有用于对构成第二OS164的第二OS程序的一部分或全部进行更新的更新程序。
此外,更新程序不仅限于用于对更新前的OS程序的整体进行重写的程序,也可以是对于更新前的OS程序的差分的程序。由此进一步降低更新信息的数据量。
控制程序存储部160存储控制程序(软件)。图2表示本实施方式的控制程序的内容。图3表示使用CPU110构成的控制程序结构(软件结构)、以及通过该控制程序结构被访问的硬件结构。
如图2所示,控制程序具备下载应用程序161、其他应用程序162、第一OS163、第二OS164、第1更新代理程序165、第2更新代理程序166、调度程序167以及引导加载程序168。
下载应用程序161是在第一OS163和第二OS164上运行的程序。下载应用程序161通过更新用驱动程序163a或更新用驱动程序164b从外部设备(未图示)下载更新信息(在此为第1更新信息、第2-1更新信息、第2-2更新信息等)。
更新用驱动程序163a及更新用驱动程序164b生成与所下载的更新信息相对应的更新有无信息(在此为第1更新有无信息、第2-1更新有无信息、第2-2更新有无信息)以及更新参照信息(在此为第1更新参照信息、第2-1更新参照信息、第2-2更新参照信息)。
其他应用程序162是除了下载应用程序161以外的应用程序。第1更新代理程序165使用所存储的第1更新信息,更新构成调度程序167的启动程序的一部分或全部。
第2更新代理程序166使用与第一OS163对应的第2-1更新信息,更新构成第一OS163的第一OS程序的一部分或全部。另外,第2更新代理程序166使用对应于第二OS164的第2-2更新信息,更新构成第二OS164的第二OS程序。
调度程序167执行以下操作(1)第一OS163或第二OS164的加载以及启动、(2)第一OS163或第二OS164的存储器的分配以及其他系统资源的分配、(3)CPU110中的第一OS163或第二OS164的时间分配(调度功能)、(4)执行OS间的通信。
另外,调度程序167具备第一OS用启动程序167a、第二OS用启动程序167b。
第一OS用启动程序167a在接通电源时或OS(第一OS163或第二OS164)重新启动时,在存储有对应于第一OS163的第2-1更新信息的情况下,启动第2更新代理程序166。另一方面,第一OS用启动程序167a在接通电源时,在未存储有对应于第一OS163的第2-1更新信息的情况下,启动第一OS163。另外,第一OS用启动程序167a在第二OS164重新启动时,在未存储有对应于第一OS163的第2-1更新信息的情况下,中止第一OS163的重新启动(继续第一OS163的处理)。
具体而言,第一OS用启动程序167a在接通电源时或OS(第一OS163或第二OS164)重新启动时,在第2-1更新有无信息中含有“有信息”的情况下,为了对构成第一OS163的第一OS程序进行更新启动第2更新代理程序166。另一方面,第一OS用启动程序167a在接通电源时,在第2-1更新有无信息中没有包含“有信息”的情况下,启动第一OS163。另外,第一OS用启动程序167a在第二OS164重新启动时,在第2-1更新有无信息中没有包含“有信息”的情况下,中止第一OS163的重新启动。
第二OS用启动程序167b在接通电源时或OS(第一OS163或第二OS164)重新启动时存储有对应于第二OS164的第2-2更新信息的情况下,启动第2更新代理程序166。另一方面,第二OS用启动程序167b在接通电源时未存储有对应于第二OS164的第2-2更新信息的情况下,启动第二OS163。另外,第二OS用启动程序167b在第一OS163重新启动时未存储有对应于第二OS164的第2-2更新信息的情况下,中止第二OS164的重新启动(继续第二OS164的处理)。
具体而言,第二OS用启动程序167b在接通电源时或OS(第一OS163或第二OS164)重新启动时,在第2-2更新有无信息中包含“有信息”的情况下,为了对构成第二OS164的第二OS程序进行更新而启动第2更新代理程序166。另一方面,第二OS启动用程序167b在接通电源时,在第2-2更新有无信息中没有包含“有信息”的情况下,启动第二OS164。另外,第二OS用启动程序167b在第一OS163重新启动时,在第2-2更新有无信息中没有包含“有信息”的情况下,中止第二OS164的重新启动。
此外,第2更新代理程序166以及调度程序167构成OS启动处理部。
引导加载程序168启动第1更新代理程序165或调度程序167。具体而言,引导加载程序168在接通电源或重新启动时,在第1更新有无信息中含有“有信息”的情况下,启动第1更新代理程序165。引导加载程序168在接通电源或重新启动时,在第1更新有无信息中没有包含“有信息”的情况下,启动调度程序167。此外,引导加载程序168构成初始启动处理部。
(计算装置的动作)然后,参照图4说明本实施方式的计算装置100的动作。
如图4所示,在S101中,在接通电源或重新启动时引导加载程序168启动。
在S103中,引导加载程序168判断在第1更新有无信息中是否包含“有信息”。另外,引导加载程序168在该判断结果为YES时启动第1更新代理程序165,然后转移至S105的处理;在该判断结果为NO时转移至S109的处理。
在S105中,第1更新代理程序165使用第1更新参照信息中包含的地址信息来取得第1更新信息。第1更新代理程序165将构成调度程序167的启动程序的一部分或全部更新为在该第1更新信息中包含的更新程序。
在S107中,第1更新代理程序165删除第1更新有无信息,并且删除第1更新参照信息以及第1更新信息。然后,当S107的处理结束时,再次开始从S101开始的处理,由于已经删除了第1更新有无信息,因此在S103中判断为NO。
在S109中,引导加载程序168启动调度程序167。
在S111中,调度程序167启动第一OS用启动程序167a。
在S113中,第一OS用启动程序167a判断是否在第2-1更新有无信息中包含“有信息”。另外,第一OS用启动程序167a在该判断结果为YES时启动第2更新代理程序166,然后转移至S115的处理,在为NO时转移至S119的处理。
在S115中,第2更新代理程序166使用第2-1更新参照信息中包含的地址信息,取得第2-1更新信息。第2更新代理程序166将构成第一OS163的第一OS程序的一部分或全部,更新为所取得的第2-1更新信息中包含的更新程序。
在S117中,第2更新代理程序166删除第2-1更新有无信息,并且还删除第2-1更新参照信息以及第2-1更新信息。然后,当S117的处理结束时再次开始从S111开始的处理,由于已删除了第2-1更新有无信息,因此在S113中判断为“NO”。
在S119中,第一OS用启动程序167a在接通电源时确保用于执行第一OS163的存储器资源,启动第一OS163。另外,第一OS用启动程序167b在第二OS164的重新启动时中止第一OS163的重新启动(即继续第一OS163的处理)。
在S121中,调度程序167启动第二OS用启动程序167b。
在S123中,第二OS用启动程序167b判断第2-2更新有无信息中是否包含“有信息”。另外,第二OS用启动程序167b在该判断结果为YES时启动第2更新代理程序166并转移至S125的处理,当该判断结果为NO时转移至S129的处理。
在S125中,第2更新代理程序166使用第2-2更新参照信息中所包含的地址信息,取得第2-2更新信息。第2更新代理程序166将构成第二OS164的第二OS程序的一部分或全部更新为该第2-2更新信息中包含的更新程序。
在S127中,第2更新代理程序166删除第2-2更新有无信息,并且删除第2-2更新参照信息以及第2-2更新信息。然后,当S127的处理结束时,再次开始从S121开始的处理,由于已经删除了第2-2更新有无信息,因此在S123中判断为“NO”。
在S129中,第2OS用启动程序167b在接通电源时确保第二OS164的存储器资源,启动第二OS164。另外,第二OS用启动程序167b在第一OS163重新启动时中止第二OS164的重新启动(即,继续第二OS164的处理)。
此外,当一个OS上的全部任务为空闲状态时,调度程序167可以执行构成其他OS的OS程序的更新处理以及该其他OS的启动处理(S311~S323、或S325~S337)。
根据该特征,在OS(例如第二OS164)重新启动时,在未存储有与该OS不同的OS(例如第一OS163)对应的OS更新信息的情况下(参照S119或S129),中止该不同的OS的重新启动(即,继续不同OS的运行)。因此,计算装置100可以使与更新无关的OS运行,同时可以仅使与更新有关的OS重新启动,可以提高与更新无关的OS的运转率。
由此,计算装置100可以一边运行用于执行电话功能等重要处理的OS,一边更新构成其他OS的OS程序然后重新启动该其他OS,该其他OS执行重要性低于上述处理的处理,从而即使在执行该更新以及重新启动的状况下也可以不降低通信服务质量。
另外,在接通电源或OS重新启动时,不是通过引导加载程序168(初始启动处理部)更新OS程序(参照图10所示的S1~S7),而是通过调度程序167(OS启动处理部)来更新OS程序。另外,在接通电源时通过调度程序167启动与更新无关的OS。
因此,当引导加载程序168不执行更新OS程序的处理时,调度程序167在接通电源时可以迅速地重新启动与更新无关的OS,可以提高该OS的运转率。
(第二实施方式)(计算装置的结构)在第一实施方式中,多个OS程序中的一个OS程序与其他OS程序或构成调度程序的启动程序是否被更新无关被进行更新。与之相对,在本实施方式中,一个OS程序以其他OS程序或构成调度程序的启动程序被更新为条件被进行更新。以下进行具体的说明。
图5是本实施方式的计算装置200的内部结构图。图5所示的斜线部分表示与图3的结构不同的部分。
如图5所示,第一OS更新用存储区域252进一步存储有第2-1更新中止信息。第二OS更新用存储区域253进一步存储有第2-2更新中止信息。另外,图5所示的第2更新代理程序266以外的功能与图3所示的功能大体相同。因此,以下仅对第2-1更新中止信息、第2-2更新中止信息以及第2更新代理程序266进行说明。
第2-1更新中止信息是以构成第二OS264的第二OS程序、或构成调度程序267的启动程序的更新未结束为条件,用于中止构成第一OS263的第一OS程序的更新的更新中止信息。
在本实施方式中,在以构成调度程序267的启动程序的更新未结束为条件来中止第一OS程序的更新的情况下(参照图5所示的从属关系a),在第2-1更新中止信息中包含“第1更新信息”。另外,在以第二OS程序的更新未结束为条件来中止第一OS程序的更新的情况下(参照图5所示的从属关系c),在第2-1更新中止信息中包含“第2-2更新信息”。
第2-2更新中止信息是以构成第一OS263的第一OS程序或构成调度程序267的启动程序的更新未结束为条件,用于中止构成第二OS264的第二OS程序的更新的更新中止信息。
在本实施方式中,在以构成调度程序267的启动程序的更新未结束为条件来中止第二OS程序的更新的情况下(参照图5所示的从属关系b),在第2-2更新中止信息中包含“第1更新信息”。另外,在以第一OS程序的更新未结束为条件来中止第二OS程序的更新的情况下(参照图5所示的从属关系c),在第2-2更新中止信息中包含“第2-1更新信息”。
第2更新代理程序266在第一OS更新用存储区域252或第二OS更新用存储区域253中未存储有更新中止信息的情况下,使用第2-1更新信息或第2-2更新信息来更新第一OS程序或第二OS程序。另一方面,第2更新代理程序266在存储有更新中止信息的情况下,中止第一OS程序或第二OS程序的更新。
(计算装置的动作)
然后,参照图6说明本实施方式的计算装置200的动作。此外,图6所示的斜线部分表示与上述第一实施方式中的计算装置100不同的处理。
如图6所示,在S201中,在接通电源或重新启动时引导加载程序268启动。
在S203中,引导加载程序268判断在第1更新有无信息中是否包含“有信息”。另外,引导加载程序268在该判断结果为YES时启动第1更新代理程序265并转移至S205的处理,在该判断结果为NO时转移至S211的处理。
在S205中,第1更新代理程序265使用第1更新参照信息中包含的地址信息来取得第1更新信息。第1更新代理程序265将构成调度程序267的启动程序的一部分或全部更新为该第1更新信息中包含的更新程序。
在S207中,第1更新代理程序265删除第1更新有无信息,并且删除第1更新参照信息以及第1更新信息。
在S209中,第1更新代理程序265删除在第2-1更新中止信息或第2-2更新中止信息中存储的第1更新信息(参照图5的斜线部分)。第1更新代理程序265在删除了第1更新信息后,当第2-1更新中止信息或第2-2更新中止信息中没有包含任何信息时,删除该第2-1更新中止信息或第2-2更新中止信息。
当S209的处理结束时,再次开始从S201开始的处理,由于已经删除了第1更新有无信息,因此在S203中判断为“NO”。
在S211中,引导加载程序268启动调度程序267。
在S213中,调度程序267启动第一OS用启动程序267a。
在S215中,第一OS用启动程序267a判断在第2-1更新有无信息中是否包含“有信息”。另外,第一OS用启动程序267a当该判断结果为YES时转移至S217的处理,当该判断结果为NO时转移至S225的处理。
在S217中,第一OS用启动程序267a判断是否存储有第2-1更新中止信息。另外,第一OS用启动程序267a当该判断结果为YES时不转移至S219的更新处理,而是返回S213的处理。另一方面,第一OS用启动程序267a在该判断结果为NO时启动第2更新代理程序266并转移至S219的处理。
在此,为了在S217中判断为“NO”并执行第一OS程序的更新,条件是在所述的S209或后述的S237中删除第2-1更新中止信息。
在本实施方式中,第一OS程序在执行使用构成调度程序267的启动程序的处理、或执行使用构成第二OS的第二OS程序的处理时,在第2-1更新中止信息中存储第1更新信息或第2-2更新信息。
此时,以在S205中该启动程序被更新,在S209中第2-1更新中止信息被删除为条件,或者以S233中该第二OS程序被更新,在S237中第2-1更新中止信息被删除为条件,来更新第一OS程序。
在S219中,第2更新代理程序266使用第2-1更新参照信息中包含的地址信息来取得第2-1更新信息。第2更新代理程序266将构成第一OS263的第一OS程序的一部分或全部更新为所取得的第2-1更新信息中包含的更新程序。
在S221中,第2更新代理程序266删除第2-1更新有无信息,并且还删除第2-1更新参照信息以及第2-1更新信息。
在S223中,第2更新代理程序266删除第2-2更新中止信息中存储的第2-1更新信息(参照图5的斜线部分)。第2更新代理程序266在删除了第2-1更新信息后,当第2-2更新中止信息中不包含任何信息时,删除该第2-2更新中止信息。
然后,当S223的处理结束时再次开始从S213开始的处理,由于已经删除了第2-1更新有无信息,因此在S215中判断为“NO”。
在S225中,第一OS用启动程序267a执行与上述的S119的处理相同的处理。
在S227中,调度程序267启动第二OS用启动程序267b。
在S229中,第二OS用启动程序267b判断第2-2更新有无信息中是否包含“有信息”。另外,第二OS用启动程序267b在该判断结果为YES时转移至S231的处理,在该判断结果为NO时转移至S239的处理。
在S231中,第二OS用启动程序267b判断是否存储有第2-2更新中止信息。另外,第二OS用启动程序267b在该判断结果为YES时不转移至S233的更新处理而是返回到S227的处理。另一方面,第二OS用启动程序267b在该判断结果为NO时,启动第2更新代理程序266并转移至S233的处理。
在此,为了在S231中判断为“NO”,执行第二OS程序的更新,条件是在上述S209或S223中删除第2-2更新中止信息。
在本实施方式中,当第二OS程序在执行使用了构成调度程序267的启动程序的处理、或者执行使用了构成第一OS的第一OS程序的处理时,在第2-2更新中止信息中存储第1更新信息或第2-1更新信息。此时,以在S205中更新了该启动程序,在S209中删除了包含第1更新信息的第2-2更新中止信息为条件,来更新第二OS程序。或者以S219中更新了该第一OS程序,在S223中删除了包含第2-1更新信息的第2-2更新中止信息为条件,来更新第二OS程序。
在S233中,第2更新代理程序266使用第2-2更新参照信息中包含的地址信息,取得第2-2更新信息。第2更新代理程序266将构成第二OS264的第二OS程序的一部分或全部更新为所取得的第2-2更新信息中包含的更新程序。
在S235中,第2更新代理程序266删除第2-2更新有无信息,并且还删除第2-2更新参照信息以及第2-2更新信息。
在S237中,第2更新代理程序266删除在第2-1更新中止信息中存储的第2-2更新信息(参照图5的斜线部分)。第2更新代理程序266在删除了第2-2更新信息后,在第2-1更新中止信息中没有包含任何信息时删除该第2-1更新中止信息。
然后,当S237的处理结束时,再次开始从S227开始的处理,由于已经删除了第2-2更新有无信息,因此在S229中判断为“NO”。
在S239中,第二OS用启动程序267b执行与上述S129的处理相同的处理。
这里,例如考虑设定第一OS263与第二OS264所共有的设备驱动程序(OS程序),第二OS264经由第一OS263访问设备驱动程序的情况。此时,在对第二OS264追加新的设备驱动程序时,之前必须对第一OS263追加新的设备驱动程序。
在本实施方式中,通过存储第2-2更新中止信息,首先对第一OS263追加新的设备驱动程序,并以删除该第2-2更新中止信息为条件,然后对第二OS264追加新的设备驱动程序。因此,计算装置200可以避免在通过第二OS264执行新的设备驱动程序时,第一OS263的设备驱动程序未更新所引起的误动作。
即,在一个OS程序或启动程序的更新未结束时,执行使用了一个OS程序或启动程序的处理的其他OS程序的更新被中止。因此,计算装置200可以避免在执行更新后的该其他OS程序时,该一个OS程序或启动程序的未更新而导致的误动作。
(第3实施方式)(计算装置的结构)在第一实施方式中,多个OS中的一个OS与构成其他OS的OS程序或构成调度程序的启动程序是否被更新无关地被进行启动。与之相对,在本实施方式中,一个OS以构成其他OS的OS程序或构成调度程序的启动程序被进行了更新为条件被进行启动。下面进行具体的说明。
图7是本实施方式的计算装置300的内部结构图。图7所示的斜线部分表示与图3的结构不同的部分。
如图7所示,更新信息存储部350进一步存储有启动禁止信息。另外,图7所示的调度程序367以外的功能与图3所示的功能大体相同。因此,下面仅对启动禁止信息以及调度程序367进行说明。
启动禁止信息是用于以构成多个OS中的第一OS(第一OS363或第二OS364)的OS程序的更新未结束为条件,中止第二OS(第二OS364或第一OS363)的启动的信息。
在本实施方式中,当以构成第一OS363的第一OS程序的更新未结束为条件中止第二OS364的启动时,在启动禁止信息中包含“第2-2更新信息”。另外,当以构成第二OS364的第二OS程序的更新未结束为条件中止第一OS363的启动时,在启动禁止信息中包含“第2-1更新信息”。
调度程序367在启动禁止信息中包含有第2-1更新信息时中止第一OS363的启动;在启动禁止信息中没有包含第2-1更新信息时启动第一OS363。
另外,调度程序367在启动禁止信息中包含第2-2更新信息时中止第二OS364的启动,当启动禁止信息中没有包含第2-2更新信息时启动第二OS364。
此外,也可以使启动禁止信息包含在更新信息、更新有无信息或更新参照信息等信息中。
(计算装置的动作)然后,参照图8说明本实施方式的计算装置300的动作。此外,图8所示的斜线部分表示与上述第一实施方式的计算装置100不同的处理。另外,S301至S309的处理流程与图4所示的S101至S109的处理流程相同,因此在此省略详细的说明。
在S311中,调度程序367启动第一OS用启动程序367a。
在S313中,第一OS用启动程序367a判断在第2-1更新有无信息中是否包含“有信息”。另外,第一OS用启动程序367a在该判断结果为YES时,启动第2更新代理程序366,并转移至S315的处理,在该判断结果为NO时转移至S321的处理。
在S315中,第2更新代理程序366使用在第2-1更新参照信息中包含的地址信息来取得第2-1更新信息。第2更新代理程序366将构成第一OS363的第一OS程序的一部分或全部更新为所取得的第2-1更新信息中包含的更新程序。
在S317中,第2更新代理程序366删除第2-1更新有无信息,并且还删除第2-1更新参照信息以及第2-1更新信息。
在S319中,第2更新代理程序366删除在启动中止信息中包含的第2-2更新信息。然后,当S319的处理结束时,再次开始从S311开始的处理,由于已经删除了第2-1更新有无信息,所以在S313中判断为“NO”。
在S321中,第一OS用启动程序367a判断在启动中止信息中是否包含第2-1更新信息。另外,第一OS用启动程序367a在该判断结果为YES时重复本处理,在该判断结果为NO时转移至S323的处理。
在S323中,第一OS用启动程序367a执行与上述的S119的处理相同的处理。
在此考虑在启动中止信息中仅包含第2-1更新信息的情况。此时,以在S333中删除启动中止信息中所包含的第2-1更新信息为条件,在S321中判断为“NO”,在S323中启动第一OS363。
在S325中,调度程序367启动第二OS用启动程序367b。
在S327中,第二OS用启动程序367b判断在第2-2更新有无信息中是否包含“有信息”。另外,第二OS用启动程序367b在该判断结果为YES时启动第2更新代理程序366,并转移至S329的处理,在该判断结果为NO时转移至S335的处理。
在S329中,第2更新代理程序366使用第2-2更新参照信息中所包含的地址信息来取得第2-2更新信息。第2更新代理程序366将构成第二OS364的第二OS程序的一部分或全部更新为所取得的第2-2更新信息中包含的更新程序。
在S331中,第2更新代理程序366删除第2-2更新有无信息,并且删除第2-2更新参照信息以及第2-2更新信息。
在S333中,第2更新代理程序366删除启动中止信息中包含的第2-1更新信息。然后,当S333的处理结束时,再次开始从S325开始的处理,由于已经删除了第2-2更新有无信息,因此在S327中判断为“NO”。
在S335中,第二OS用启动程序367b判断启动中止信息中是否包含第2-2更新信息。另外,第二OS用启动程序367b在该判断结果为YES时重复本处理,在该判断结果为NO时转移至S337的处理。
在S337中,第二OS用启动程序367b执行与上述S129的处理相同的处理。
在此考虑在启动中止信息中仅包含第2-2更新信息的情况。此时,以在S319中删除启动中止信息中包含的第2-2更新信息为条件,在S335中判断为“NO”,在S337中启动第二OS364。
根据该特征,在没有存储启动中止信息时启动第一OS363或第二OS364。另一方面,在存储有启动中止信息时中止第一OS363或第二OS364的启动。
由此,当一个OS程序(例如第一OS程序)的更新未结束时,中止与其他OS程序(例如第二OS程序)对应的OS(例如第二OS364)的启动。因此,计算装置300可以避免在使与该其他OS程序对应的OS启动之后,该一个OS程序的未更新所导致的误动作。
另外,在需要更新构成一个OS的OS程序,而这个OS执行的处理的重要度高于其他OS执行的处理时,通过存储启动中止信息禁止所述其他OS的启动。
因此,计算装置300可以从构成上述一个OS的OS程序开始优先执行执行更新,并且可以从这个OS开始优先启动。由此,计算装置300可以避免在使某个OS启动后,由于执行重要性高于该OS的处理的OS程序未更新而导致的误动作。
此外,各实施方式中的计算装置可以应用于便携式电话机、PDA、个人计算机等电子设备。
以上对本发明的一个例子进行了说明,但这仅仅是举例表示了具体例子,并不特别限定本发明,各实施方式以及各种变形例中的具体结构等可以进行适当的设计变更。另外,各实施方式以及各变更例的具体结构可以分别组合。而且,各实施方式以及各变更例的作用及效果,仅仅列举了本发明产生的最佳作用及效果,本发明的作用及效果并不限于各实施方式及各变更例中所记载的内容。
权利要求
1.一种更新启动装置,其特征在于,具有启动多个OS的OS启动处理部;启动所述OS启动处理部的初始启动处理部;以及存储OS更新信息的更新信息存储部,所述OS更新信息用于对构成所述多个OS中的某个OS的OS程序进行更新,所述OS启动处理部在接通电源时或所述OS重新启动时,在存储有与所述OS对应的所述OS更新信息的情况下,在使用所述OS更新信息更新所述OS程序后启动所述OS,在接通电源时未存储与所述OS对应的所述OS更新信息的情况下,启动所述OS,在所述OS重新启动时未存储对应于与所述OS不同的OS的所述OS更新信息的情况下,中止所述不同OS的重新启动。
2.根据权利要求1所述的更新启动装置,其特征在于,所述更新信息存储部存储更新中止信息,该更新中止信息用于以构成所述OS启动处理部的启动程序的更新未结束为条件,中止构成所述多个OS中某个OS的所述OS程序的更新,所述OS启动处理部在所述接通电源时或所述OS重新启动时未存储所述更新中止信息的情况下,使用所述OS更新信息来更新所述OS程序,在存储有所述更新中止信息的情况下,中止所述OS程序的更新。
3.根据权利要求1或2中的任意一项所述的更新启动装置,其特征在于,所述多个OS包括第一OS和第二OS,所述更新信息存储部存储更新中止信息,该更新中止信息用于以构成所述第一OS的第一OS程序的更新未结束为条件,中止构成所述第二OS的第二OS程序的更新,所述OS启动处理部在所述接通电源时或所述第二OS重新启动时未存储所述更新中止信息的情况下,使用所述OS更新信息来更新所述第二OS程序,在存储有所述更新中止信息的情况下,中止所述第二OS程序的更新。
4.根据权利要求2所述的更新启动装置,其特征在于,所述OS启动处理部在更新了所述启动程序后删除所述更新中止信息。
5.根据权利要求3所述的更新启动装置,其特征在于,所述OS启动处理部在更新了所述第一OS程序后删除所述更新中止信息。
6.根据权利要求1所述的更新启动装置,其特征在于,所述更新信息存储部存储启动更新信息,该启动更新信息用于对构成所述OS启动处理部的启动程序进行更新,所述初始启动处理部在所述接通电源时或所述OS重新启动时存储有所述启动更新信息的情况下,使用所述启动更新信息更新所述启动程序,在未存储所述启动更新信息的情况下,启动所述OS启动处理部。
7.根据权利要求1所述的更新启动装置,其特征在于,所述多个OS包括第一OS和第二OS,所述更新信息存储部存储启动中止信息,该启动中止信息用于以构成所述第一OS的第一OS程序的更新未结束为条件来中止所述第二OS的启动,所述OS启动处理部在所述接通电源时或所述第二OS重新启动前未存储所述启动中止信息的情况下启动所述第二OS,在所述接通电源时或所述第二OS重新启动前存储有所述启动中止信息的情况下中止所述第二OS的启动。
8.根据权利要求7所述的更新启动装置,其特征在于,所述OS启动处理部在更新了所述第一OS程序后删除所述启动中止信息。
9.一种更新启动控制方法,其特征在于,具有启动多个OS的过程A;启动所述过程A的过程B;以及存储OS更新信息的过程C,所述OS更新信息用于对构成所述多个OS中的某个OS进行更新的OS程序,所述过程A在接通电源时或所述OS重新启动时存储有与所述OS对应的所述OS更新信息的情况下,在使用所述OS更新信息更新所述OS程序后启动所述OS,在接通电源时未存储与所述OS对应的OS更新信息的情况下,启动所述OS,在所述OS重新启动时未存储对应于与所述OS不同的OS的所述OS更新信息的情况下,中止所述不同的OS的重新启动。
全文摘要
本发明目的在于仅重新启动多个OS中与更新有关的OS,并且当接通电源时使与更新无关的OS迅速启动。在接通电源时或OS的重新启动时,在存储有对应于OS的OS更新信息的情况下,调度程序(167)使用OS更新信息更新OS程序,然后启动OS。当在接通电源时未存储与OS对应的OS更新信息时,调度程序(167)启动OS。当在OS重新启动时未存储对应于与该OS不同的OS的OS更新信息时,调度程序(167)中止不同的OS的重新启动。
文档编号G06F9/445GK101021795SQ20071000556
公开日2007年8月22日 申请日期2007年2月12日 优先权日2006年2月13日
发明者铃木敬, 太田贤 申请人:株式会社Ntt都科摩
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1