双操作系统平行处理的方法技术方案

技术编号:5060074 阅读:190 留言:0更新日期:2012-04-11 18:40
一种双操作系统平行处理的方法,在操作系统核心的上架构一主操作系统及一子操作系统,在主操作系统执行一第一应用程序,在子操作系统执行一第二应用程序,由操作系统核心所接收的硬件的指令或命令传送至第一应用程序,由第一应用程序将指令或命令转换为用以在该第二应用程序所要执行的程序代码,由第一应用程序将程序代码传送至第二应用程序,由第二应用程序执行程序代码,并将执行的结果存放在一存储器或一文件系统,由第一应用程序读取存储器或文件系统中第二应用程序所执行的结果,以及由第一应用程序将所读取的结果传送至操作系统核心。

【技术实现步骤摘要】

本专利技术涉及一种,特别是涉及一种架构在GNU Linux Kernel上的双异质性操作系统平行处理的方法。
技术介绍
在计算机的工作概念中,硬件为计算机的实际工作者,而软件是指操作系统核心 (Operation System Kernel)、操作系统(Operation System, OS)及应用程序。操作系统核 心是控制硬件以正确的工作,例如让CPU能够接受指令、硬盘能够存取等工作。操作系统提 供程序开发者在提供有驱动程序的操作系统核心上发展应用程序。应用程序让操作系统核 心与使用者之间更容易沟通,例如文字指令模式与图形模式等。在服务器整合及提供多种应用程序的测试环境,例如架构在一操作系统核心上的 各种不同的操作系统来测试不同的应用程序环境。举例说明,在一 GNU (GNU’ s not Unix) Linux Kernel上架构有一主操作系统,而在主操作系统中启动一子操作系统,并且主操作 系统执行一第一应用程序,而子操作系统执行一第二应用程序。由于主操作系统与子操作 系统对GNU LinuxKernel而言为各自独立的操作系统,因此需要利用虚拟机器(Virtual Machine)的技术,在主操作系统上架设一虚拟机器以整合子操作系统于主操作系统中,而 使得执行在主操作系统的第一应用程序与执行在子操作系统的第二应用程序在不同的操 作环境可在同一屏幕上显示各自的结果。虽然可利用虚拟机器将两个不同操作系统整合在一个操作系统核心上,但此种方 法对于硬件规格的需求较高,例如存储器空间的需求较大,而且在启动虚拟机器以执行不 同操作系统的各自应用程序时会消耗较大的CPU负荷(CPU loading)。
技术实现思路
本专利技术的目的在于提供一种,在不需要高的硬件规格 且不会增加CPU负荷的情况,使原先可执行在子操作系统的应用程序容易整合到主操作 系统的平台上执行,而不影响两个操作系统的原始架构,并且共同架构在一个GNU Linux Kernel上的两个异质性的操作系统可以各自运作而不会造成冲突,并且可以共享硬件资 源。本专利技术的第一态样在于提供一种,藉由一操作系统核 心控制一计算机的一硬件,该方法包含下列步骤在该操作系统核心的上架构一主操作系统及一子操作系统;在该主操作系统执行一第一应用程序,在该子操作系统执行一第二应用程序;由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第 一应用程序;由该第一应用程序将指令或命令转换为用以在该第二应用程序所要执行的程序 代码; 由该第一应用程序将程序代码经由该子操作系统传送至该第二应用程序;由该第二应用程序执行程序代码,并将执行的结果由该操作系统核心存放在一存 储器或一文件系统;由该第一应用程序读取该存储器或该文件系统中该第二应用程序所执行的结果, 其中该操作系统核心存取该存储器或该文件系统中该第二应用程序所执行的结果经由该 主操作系统以供该第一应用程序读取;以及由该第一应用程序将所读取的结果经由该主操作系统传送至该操作系统核心。依据本专利技术的第一态样所述的方法的第二态样,其中,由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第 一应用程序的一输入服务手段;由该第一应用程序的该输入服务手段将所接收的指令或命令转换为用以在该第 二应用程序所要执行的程序代码;由该第一应用程序的一输出服务手段经由该子操作系统呼叫该第二应用程序,并 将程序代码经由该子操作系统传送至该第二应用程序;由该第一应用程序的该输出服务手段读取该存储器或该文件系统中该第二应用 程序所执行的结果;以及由该第一应用程序的该输入服务手段将所读取的结果经由该主操作系统传送至 该操作系统核心,由该操作系统核心根据所接收的结果驱动该硬件。依据本专利技术的第二态样所述的方法的第三态样,其中,该硬件为该计算机的系统 架构及周边装置。依据本专利技术的第二态样所述的方法的第四态样,其中,该操作系统核心为一 GNU Linux Kernel。依据本专利技术的第二态样所述的方法的第五态样,其中,由该第二应用程序执行程 序代码所得的结果为一存储器映像或一文件的形式。本专利技术的第六态样在于提供一种内储一程序的计算机可读取的记录媒体,当一计 算机由该记录媒体加载该程序并执行后,可完成如上述第一至五态样中任一态样的方法。本专利技术的第七态样在于提供一种内储一程序的计算机程序产品,当一计算机由计 算机程序产品加载该计算机程序并执行后,可完成如上述第一至五态样中任一态样的方 法。附图说明图1为本专利技术的双操作系统平行处理的系统方块图;以及图2为本专利技术的的流程图。附图符号说明10 GNU Linux Kernel12 键盘14 鼠标16 VGA18存储器19网络接口20主操作系统22子操作系统 24应用程序A26输入服务手段28输出服务手段30应用程序B具体实施例方式以下参照附图来说明本专利技术的一较佳实施例。图1为本专利技术的双操作系统平行处理的系统方块示意图。在图1中,作为操作系统 核心的GNU Linux Kernel 10是控制硬件(为计算机的系统架构及周边装置)的工作,例 如接收键盘12或鼠标14的数据或命令、将视讯数据传送至VGA 16、在存储器(如RAM) 18 存取数据或经由网络接口 19传送或接收数据等。在GNU Linux Kernel 10上架构一主操作系统20与一子操作系统22,两操作系 统在GNU Linux Kernel 10上各自运作,而不会造成例如使用硬件资源的冲突。应用程序 A 24为在主操作系统20所执行的应用程序,应用程序B 30为在子操作系统22所执行的应 用程序。GNU Linux Kernel 10所接收的如键盘12或鼠标14的指令或命令经由主操作系 统20传送至应用程序A 24的一输入服务手段26,应用程序A 24的输入服务手段26将所 接收的指令或命令转换为用以在应用程序B 30所要执行的程序代码,应用程序A 24的一 输出服务手段28经由子操作系统22呼叫应用程序B 30,并将程序代码经由子操作系统22 传送至应用程序B 30,应用程序A 24的输出服务手段28读取存储器18或文件系统中应用 程序B30所执行的结果,其中由应用程序B 30执行程序代码所得的结果为一存储器映像或 一文件的形式,应用程序A 24的输入服务手段26将所读取的结果经由主操作系统20传送 至GNU Linux Kernel 10,而由GNU Linux Kernel 10将该结果传送至例如VGA 16的输出直ο图2为本专利技术的的流程图。在说明图2的流程时,同 时参考图1的组件。为了更清楚本申请的的应用,图1中的各 组件以熟知技术的操作系统来替代说明。Google Andriod x86除了开发为手机软件平台的应用外,目前也有支持IBM x86 硬件架构平台,本实施例是要在Google Android x86平台上执行为Linux X-Server的 应用程序的Firefox网页浏览器。所以Google Android x86为主操作系统20,而Linux X-Server 为子操作系统 22,而Google Android x86 与 Linux X-Server 是架构在GNU Linux KernellO0并本文档来自技高网
...

【技术保护点】
一种双操作系统平行处理的方法,藉由一操作系统核心控制一计算机的一硬件,该方法包含下列步骤:在该操作系统核心的上架构一主操作系统及一子操作系统;在该主操作系统执行一第一应用程序,在该子操作系统执行一第二应用程序;由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第一应用程序;由该第一应用程序将指令或命令转换为用以在该第二应用程序所要执行的程序代码;由该第一应用程序将程序代码经由该子操作系统传送至该第二应用程序;由该第二应用程序执行程序代码,并将执行的结果由该操作系统核心存放在一存储器或一文件系统;由该第一应用程序读取该存储器或该文件系统中该第二应用程序所执行的结果,其中该操作系统核心存取该存储器或该文件系统中该第二应用程序所执行的结果经由该主操作系统以供该第一应用程序读取;以及由该第一应用程序将所读取的结果经由该主操作系统传送至该操作系统核心。

【技术特征摘要】

【专利技术属性】
技术研发人员:何文智
申请(专利权)人:系微股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1