软件执行方法及其电子装置制造方法及图纸

技术编号:8387060 阅读:152 留言:0更新日期:2013-03-07 07:45
本发明专利技术是一种软件执行方法及其电子装置。一种软件执行方法,包括如下步骤。启动一操作系统核心。所述操作系统核心是由一第一操作系统与一第二操作系统所共享。加载一至多个驱动模块至该操作系统核心。在第一与第二操作系统当中的一者的根目录下,开始执行第一与第二操作系统当中的该者。建立一程序,以调用第一与第二操作系统当中的另一者的根目录。在第一与第二操作系统当中的该另一者的根目录下,开始执行第一与第二操作系统当中的该另一者。另外,一种执行上述软件执行方法的电子装置亦被提出。

【技术实现步骤摘要】

本专利技术是有关于一种软件执行方法及其电子装置,且特别是有关于一种在双重操作系统下的软件执行方法及其电子装置。
技术介绍
在具有不同的函数库的双重操作系统中,若欲在其中之一的操作系统中执行另一操作系统的软件时,则该等软件必须对应地作大幅度地修改,以使该其中之一的操作系统可顺利地运行该另一操作系统的软件。举例而言,目前Android操作系统已经广泛地应用在很多领域,包括智能型手机、智能型电视等等。在电视领域中,Android操作系统出现之前已有很多基于Linux的电视软 件解决方案。Android操作系统基于Linux操作系统,但相对应作了较大的改变,尤其是C函数库。Andro id操作系统并没有采用glibc函数库作为其C函数库,而是采用了 Google自行开发的Bionic Libc函数库。其文件编译工具组(Toolchain)也是基于Bionic Libc函数库而非glibc函数库。此技术特征导致很多现有的多媒体应用程序无法轻易地植入Android操作系统中,而需要作大幅度地修改,包括使用JNI (Java Native Interface)等沟通接口来联系Java程序以及底层的C函数库,因此增加了使用既有多媒体应用程序的困难度。
技术实现思路
本专利技术提供一种软件执行方法,能够在双重操作系统当中启动已有的基于特定函数库的应用程序,且基本上可以不需修改该等应用程序即可直接运行(run)。本专利技术提供一种具有双重操作系统的电子装置,用以执行前述的软件执行方法。本专利技术提供一种软件执行方法,包括如下步骤。启动一操作系统核心(Kernel)。所述操作系统核心是由一第一操作系统与一第二操作系统所共享。加载一至多个驱动模块至该操作系统核心。在第一与第二操作系统当中的一者的根目录下,开始执行第一与第二操作系统当中的该者。建立(fork) —程序,以调用第一与第二操作系统当中的另一者的根目录。在第一与第二操作系统当中的该另一者的根目录下,开始执行第一与第二操作系统当中的该另一者。在本专利技术的一实施例中,上述的操作系统核心的种类为第一操作系统的核心种类。在本专利技术的一实施例中,上述的第一与第二操作系统当中分别的根目录下分别储存有第一与第二操作系统的文件架构。在本专利技术的一实施例中,上述的开始执行第一与第二操作系统当中的该者的步骤包括利用一至多驱动模块当中至少的一者及第一与第二操作系统当中的该者的函数库,来开始执行第一与第二操作系统当中的该者的一至多个应用程序。在本专利技术的一实施例中,上述的一至多驱动模块当中该至少的一者是由第一与第二操作系统当中的该者专用,或由第一与第二操作系统所共享。在本专利技术的一实施例中,上述的开始执行第一与第二操作系统当中的该者的步骤是于该建立程序的步骤之前、之后或同时实施。在本专利技术的一实施例中,上述的开始执行第一与第二操作系统当中的该者的步骤是早于、同时、或晚于开始执行第一与第二操作系统当中的该另一者的步骤。在本专利技术的一实施例中,上述的开始执行第一与第二操作系统当中的该另一者的步骤包括利用一至多驱动模块当中至少的一者及第二操作系统的函数库开始执行第一与第二操作系统当中的该另一者的一至多应用程序。在本专利技术的一实施例中,上述的一至多驱动模块当中该至少的一者是由第一与第二操作系统当中的该另一者专用,或由该第一与第二操作系统所共享。 在本专利技术的一实施例中,上述的第一操作系统为Linux操作系统。在本专利技术的一实施例中,上述的第二操作系统为Android操作系统。在本专利技术的一实施例中,上述的一至多个驱动模块包括一至多个第一驱动模块。一至多个第一驱动模块当中至少的一者是由第一操作系统执行时所使用,且是选自下列驱动模块至少其中之一音频驱动模块、视频驱动模块、绘图驱动模块及遥控(Remotecontrol)驱动模块。在本专利技术的一实施例中,上述的一至多个驱动模块还包括一至多个第二驱动模块。一至多个第二驱动模块当中至少的一者是由第二操作系统执行时所使用,且一至多第二驱动模块是选自下列驱动模块至少其中之一闪存驱动模块、通用串行总线驱动模块、系结程序间沟通管道(Binder Inter-Process Communication)的驱动模块、以太网(Ethernet)驱动模块及电源管理驱动模块。在本专利技术的一实施例中,上述的一至多个驱动模块当中至少的一者是由第一或第二操作系统单独使用。在本专利技术的一实施例中,上述的一至多个驱动模块当中至少的一者是由第一与第二操作系统共同使用。在本专利技术的一实施例中,上述的调用第一与第二操作系统当中的该另一者的根目录的步骤是通过一 chroot函数来进行。在本专利技术的一实施例中,上述的软件执行方法还包括执行一应用程序管理程序。应用程序管理程序统一管理第一操作系统与第二操作系统的应用程序的执行。在本专利技术的一实施例中,上述的应用程序管理程序还控制一应用环境于第一操作系统的应用程序与第二操作系统的应用程序之间作切换。本专利技术提供一种具有双重操作系统的电子装置,包括一存储装置以及一处理器。存储装置储存有多个指令。所述多个指令是用以执行前述的软件执行方法。处理器存取存储装置以执行所述多个指令。基于上述,在本专利技术的范例实施例中,第一与第二操作系统的应用程序可同时运行,且基本上不需要修改任一操作系统的应用程序。为让本专利技术的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。附图说明图I绘示本专利技术一实施例的双重操作系统的架构示意图。图2绘示本专利技术一实施例的软件执行方法的步骤流程图。图3绘示本专利技术另一实施例的软件执行方法的步骤流程图。图4绘示本专利技术一实施例的具有双重操作系统的电子装置示意图。100 :双重操作系统 110:第一操作系统112 =Linux操作系统核心114:第一驱动模块120 :第二操作系统124 :第二驱动模块S200、S202、S204、S206、S208、S210、S212、S300、S302、S304、S306、S308、S310、S312 :软件执行方法的步骤400 电子装置410 :存储装置420 :处理器具体实施例方式图I绘示本专利技术一实施例的双重操作系统的架构示意图。请参考图1,本实施例的双重操作系统100包括一第一操作系统110及一第二操作系统120。在此,第一操作系统110例如是Linux操作系统;第二操作系统120例如是Android操作系统,但本专利技术并不限于此。在本实施例中,第一操作系统110与第二操作系统120共同提供一应用环境给基于Linux操作系统及Android操作系统的多媒体应用程序运行。在底下的范例实施例中,多媒体应用程序是以电视的应用程序以及Android操作系统的应用程序例示说明,但本专利技术并不限于此。所述多媒体应用程序也可以是平板计算机、笔记本型计算机、智能型手机等任何具有双重操作系统的电子装置上可执行的多媒体应用程序。就第一操作系统110而言,其系统架构包括电视的应用程序、中介软件(middleware)、平台(platform)、设备驱动程序、GLIBC/uClibc函数库以及与第二操作系统120共享的Linux操作系统核心112。就第二操作系统120而言,其系统架构包括Android操作系统的应用程序、应用程序框架(application本文档来自技高网...

【技术保护点】
一种软件执行方法,包括:启动一操作系统核心,其中该操作系统核心是由一第一操作系统与一第二操作系统所共享;加载一至多个驱动模块至该操作系统核心;在该第一与第二操作系统当中的一者的根目录下,开始执行该第一与第二操作系统当中的该者;建立一程序,以调用该第一与第二操作系统当中的另一者的根目录;在该第一与第二操作系统当中的该另一者的根目录下,开始执行该第一与第二操作系统当中的该另一者。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘洪明易鲲明魏丹丹龙翔
申请(专利权)人:联咏科技股份有限公司
类型:发明
国别省市:

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

1