CN102043677B - 双操作系统平行处理的方法 - Google Patents

双操作系统平行处理的方法 Download PDF

Info

Publication number
CN102043677B
CN102043677B CN 200910207740 CN200910207740A CN102043677B CN 102043677 B CN102043677 B CN 102043677B CN 200910207740 CN200910207740 CN 200910207740 CN 200910207740 A CN200910207740 A CN 200910207740A CN 102043677 B CN102043677 B CN 102043677B
Authority
CN
China
Prior art keywords
application program
operating system
kernel
result
sent
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.)
Active
Application number
CN 200910207740
Other languages
English (en)
Other versions
CN102043677A (zh
Inventor
何文智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Insyde Software Corp
Original Assignee
Insyde Software Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Insyde Software Corp filed Critical Insyde Software Corp
Priority to CN 200910207740 priority Critical patent/CN102043677B/zh
Publication of CN102043677A publication Critical patent/CN102043677A/zh
Application granted granted Critical
Publication of CN102043677B publication Critical patent/CN102043677B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

一种双操作系统平行处理的方法,在操作系统核心的上架构一主操作系统及一子操作系统,在主操作系统执行一第一应用程序,在子操作系统执行一第二应用程序,由操作系统核心所接收的硬件的指令或命令传送至第一应用程序,由第一应用程序将指令或命令转换为用以在该第二应用程序所要执行的程序代码,由第一应用程序将程序代码传送至第二应用程序,由第二应用程序执行程序代码,并将执行的结果存放在一存储器或一文件系统,由第一应用程序读取存储器或文件系统中第二应用程序所执行的结果,以及由第一应用程序将所读取的结果传送至操作系统核心。

Description

双操作系统平行处理的方法
技术领域
本发明涉及一种双操作系统平行处理的方法,特别是涉及一种架构在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 Kernel
12 键盘
14 鼠标
16 VGA
18 存储器
19 网络接口
20 主操作系统
22 子操作系统
24 应用程序A
26 输入服务手段
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 Kernel 10。并在Google Android x86上撰写一应用程序A 24,其包含上述的输入服务手段26、输出服务手段28,以及呼叫执行Firefox的程序代码。当使用者点选应用程序A 24后,即启动在Linux X-Server上的Firefox网页浏览器。
在图2中,首先,在GNU Linux Kernel 10的上架构Google Android x86的主操作系统20及Linux X-Server的子操作系统24(步骤S50),而GoogleAndroid x86及Linux X-Server两者为异质性的操作系统,而可在GNU LinuxKernel 10上各自独立运作,且共享硬件资源。
接着,在Google Android x86的主操作系统20执行应用程序A 24,在LinuxX-Server的子操作系统22执行Firefox网页浏览器(及图1的应用程序B 30)(步骤S52)。
由GNU Linux Kernel 10所接收的硬件的指令或命令经由GoogleAndroid x86的主操作系统20传送至应用程序A 24的输入服务手段26(步骤S54)。举例说明,使用者在Firefox网页浏览器中藉由键盘12或鼠标14点选其工作选项,GNU Linux Kernel 10将所接收的键盘12或鼠标14的点选指令或命令经由Google Android x86的主操作系统20传送至应用程序A 24的输入服务手段26。
然后由应用程序A 24的输入服务手段26将所接收的点选指令或命令转换为用以在Firefox网页浏览器所要执行的程序代码(步骤S56)。其次,由应用程序A 24的输出服务手段26经由Linux X-Server的子操作系统22呼叫Firefox网页浏览器,并将程序代码经由Linux X-Server的子操作系统22传送至Firefox网页浏览器(步骤S58)。
由Firefox网页浏览器执行程序代码(亦即执行步骤S54中在Firefox网页浏览器中所点选的工作选项),并将执行的结果由GNU Linux Kernel 10存放在存储器18或文件系统(未图标)中(步骤S60)。举例说明,使用者要在Firefox网页浏览器浏览某一网页的信息,Firefox网页浏览器经由LinuxX-Server的子操作系统22使GNU Linux Kernel 10驱动网络接口19,而由网络抓取所要浏览的网页的数据,GNU Linux Kernel 10将网络接口19所抓取的数据存放在存储器18中。
接着,由应用程序A 24的输出服务手段28读取存储器18(或存放执行结果为文件形式的文件系统)中Firefox网页浏览器所执行的结果(即所要浏览的网页的信息),其中由GNU Linux Kernel 10存取存储器18中Firefox网页浏览器所执行的结果经由Google Android x86的主操作系统20以供应用程序A 24读取(步骤S62)。
再者,由应用程序A 24的输入服务手段26将所读取的结果经由GoogleAndroid x86的主操作系统20传送至GNU Linux Kernel 10,而由GNU LinuxKernel 10根据所接收的结果(即所要浏览的网页的信息)驱动VGA 16,而使使用者所要浏览的网页的信息显示在Firefox网页浏览器中(步骤S64)。
本发明的上述双操作系统平行处理的方法可以一程序型态来撰写完成,并可将该程序储存于一计算机可读取的记录媒体,当计算机从该计算机可读取的记录媒体加载该程序并执行后,便可完成如上述说明及附图中所示的方法步骤。
同样地,本发明的上述双操作系统平行处理的方法可以一计算机程序产品来完成,当计算机例如从网络下载该计算机程序产品并执行后,便可完成如上述说明及附图中所示的方法步骤。
本发明的优点在于提供一种双操作系统平行处理的方法,在不需要高的硬件规格且不会增加CPU负荷的情况,使原先可执行在子操作系统的应用程序容易整合到主操作系统的平台上执行,而不影响两个操作系统的原始架构,并且共同架构在一个GNU Linux Kernel上的两个异质性的操作系统可以各自运作而不会造成冲突,并且可以共享硬件资源。
虽然本发明已参照较佳具体实施例及举例性附图叙述如上,但其应不被视为是限制性的。本领域的技术人员对其形态及具体实施例的内容所做的各种修改、省略及变化,均不离开本发明的范围。

Claims (10)

1.一种双操作系统平行处理的方法,藉由一操作系统核心控制一计算机的一硬件,该方法包含下列步骤:
在该操作系统核心上架构一主操作系统及一子操作系统;
在该主操作系统执行一第一应用程序,在该子操作系统执行一第二应用程序;
由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第一应用程序;
由该第一应用程序将指令或命令转换为用以在该第二应用程序所要执行的程序代码;
由该第一应用程序将程序代码经由该子操作系统传送至该第二应用程序;
由该第二应用程序执行程序代码,并将执行的结果由该操作系统核心存放在一存储器或一文件系统;
由该第一应用程序读取该存储器或该文件系统中该第二应用程序所执行的结果,其中该操作系统核心存取该存储器或该文件系统中该第二应用程序所执行的结果经由该主操作系统以供该第一应用程序读取;以及
由该第一应用程序将所读取的结果经由该主操作系统传送至该操作系统核心。
2.如权利要求1所述的方法,其中,
由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第一应用程序的一输入服务手段;
由该第一应用程序的该输入服务手段将所接收的指令或命令转换为用以在该第二应用程序所要执行的程序代码;
由该第一应用程序的一输出服务手段经由该子操作系统呼叫该第二应用程序,并将程序代码经由该子操作系统传送至该第二应用程序;
由该第一应用程序的该输出服务手段读取该存储器或该文件系统中该第二应用程序所执行的结果;以及
由该第一应用程序的该输入服务手段将所读取的结果经由该主操作系统传送至该操作系统核心,由该操作系统核心根据所接收的结果驱动该硬件。
3.如权利要求1或2所述的方法,其中,该硬件为该计算机的系统架构及周边装置。
4.如权利要求1或2所述的方法,其中,该操作系统核心为一GNU LinuxKernel。
5.如权利要求1或2所述的方法,其中,由该第二应用程序执行程序代码所得的结果为一存储器映像或一文件的形式。
6.一种用于双操作系统平行处理的装置,藉由一操作系统核心控制一计算机的一硬件,该装置包含下列部件:
用于在该操作系统核心上架构一主操作系统及一子操作系统的部件;
用于在该主操作系统执行一第一应用程序,在该子操作系统执行一第二应用程序的部件;
用于由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第一应用程序的部件;
用于由该第一应用程序将指令或命令转换为用以在该第二应用程序所要执行的程序代码的部件;
用于由该第一应用程序将程序代码经由该子操作系统传送至该第二应用程序的部件;
用于由该第二应用程序执行程序代码,并将执行的结果由该操作系统核心存放在一存储器或一文件系统的部件;
用于由该第一应用程序读取该存储器或该文件系统中该第二应用程序所执行的结果的部件,其中该操作系统核心存取该存储器或该文件系统中该第二应用程序所执行的结果经由该主操作系统以供该第一应用程序读取;以及
用于由该第一应用程序将所读取的结果经由该主操作系统传送至该操作系统核心的部件。
7.如权利要求6所述的装置,其中,
由该操作系统核心所接收的该硬件的指令或命令经由该主操作系统传送至该第一应用程序的一输入服务手段;
由该第一应用程序的该输入服务手段将所接收的指令或命令转换为用以在该第二应用程序所要执行的程序代码;
由该第一应用程序的一输出服务手段经由该子操作系统呼叫该第二应用程序,并将程序代码经由该子操作系统传送至该第二应用程序;
由该第一应用程序的该输出服务手段读取该存储器或该文件系统中该第二应用程序所执行的结果;以及
由该第一应用程序的该输入服务手段将所读取的结果经由该主操作系统传送至该操作系统核心,由该操作系统核心根据所接收的结果驱动该硬件。
8.如权利要求6或7所述的装置,其中,该硬件为该计算机的系统架构及周边装置。
9.如权利要求6或7所述的装置,其中,该操作系统核心为一GNU LinuxKernel。
10.如权利要求6或7所述的装置,其中,由该第二应用程序执行程序代码所得的结果为一存储器映像或一文件的形式。
CN 200910207740 2009-10-22 2009-10-22 双操作系统平行处理的方法 Active CN102043677B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910207740 CN102043677B (zh) 2009-10-22 2009-10-22 双操作系统平行处理的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910207740 CN102043677B (zh) 2009-10-22 2009-10-22 双操作系统平行处理的方法

Publications (2)

Publication Number Publication Date
CN102043677A CN102043677A (zh) 2011-05-04
CN102043677B true CN102043677B (zh) 2013-01-16

Family

ID=43909830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910207740 Active CN102043677B (zh) 2009-10-22 2009-10-22 双操作系统平行处理的方法

Country Status (1)

Country Link
CN (1) CN102043677B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102955704A (zh) * 2011-08-26 2013-03-06 联咏科技股份有限公司 软件执行方法及其电子装置
CN106168974B (zh) * 2016-07-11 2020-01-07 广州视睿电子科技有限公司 多系统截屏文件的处理方法和系统
WO2018112775A1 (zh) * 2016-12-21 2018-06-28 深圳前海达闼云端智能科技有限公司 实现对另一操作系统操作的方法、装置及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1885263A (zh) * 2005-06-21 2006-12-27 三菱电机株式会社 程序执行系统及其用的编程、分析和管理系统、检查装置及编程系统
CN101553779A (zh) * 2006-10-17 2009-10-07 三星Sds株式会社 将主机系统应用程序转换为开放系统应用程序的转换装置和方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215411A (ja) * 2001-01-19 2002-08-02 Hitachi Ltd Javaアプリケーション実行装置
JP2008159276A (ja) * 2006-12-20 2008-07-10 Mt Picture Display Co Ltd 真空装置及びその製造方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1885263A (zh) * 2005-06-21 2006-12-27 三菱电机株式会社 程序执行系统及其用的编程、分析和管理系统、检查装置及编程系统
CN101553779A (zh) * 2006-10-17 2009-10-07 三星Sds株式会社 将主机系统应用程序转换为开放系统应用程序的转换装置和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2008-159276A 2008.07.10

Also Published As

Publication number Publication date
CN102043677A (zh) 2011-05-04

Similar Documents

Publication Publication Date Title
TWI400652B (zh) Dual operating system parallel processing methods, recording media and computer program products
EP3896567B1 (en) Page pre-rendering method and apparatus, electronic device, and storage medium
KR101740327B1 (ko) 소프트웨어 가상화를 이용하여 소프트웨어 서비스를 제공하기 위한 장치, 시스템 및 그 방법
KR101038896B1 (ko) 서비스 프로그램을 생성하는 시스템, 방법 및 서비스 프로그램을 생성하기 위한 프로그램을 기록한 컴퓨터 판독가능 매체
US9026931B2 (en) Cross-browser “drag-and-drop” library
US20240037060A1 (en) Computing device, virtualization acceleration device, remote control method and storage medium
KR20150128671A (ko) 애플리케이션 시나리오 식별 방법, 전력 소비 관리 방법, 장치 및 단말기 장치
JP6529505B2 (ja) インタラクティブ開発環境からソフトウェアアーチファクトをインクリメンタルにコンパイルすること
CA2796433A1 (en) Cross-platform application framework
Smyth Android Studio 2.2 Development Essentials-Android 7 Edition
US20090106456A1 (en) Method and apparatus for interactions of web applications with the local host environment
CN114580344B (zh) 测试激励生成方法、验证方法、验证系统及相关设备
US9715440B2 (en) Test scope determination based on code change(s)
US11755293B2 (en) Code execution and data processing pipeline
CN104704468A (zh) Web应用程序的跨系统安装
US20120323950A1 (en) Embedded query formulation service
CN103443763A (zh) 包含对重写虚拟函数的调用的支持的isa桥接
CN103645906A (zh) 基于固定的界面布局文件实现界面重新布局的方法及系统
CN101909082A (zh) 一种基于模型驱动的网格门户配置系统及配置方法
CN105359104B (zh) 状态信息的同步点
CN104375933A (zh) 一种单元测试方法和装置
CN102043677B (zh) 双操作系统平行处理的方法
CN113886741A (zh) 用于对公式进行排版的方法及其相关产品
CN104731600A (zh) 一种将安卓系统服务插件化的实现方法
JP5780296B2 (ja) スレッド処理方法、およびスレッド処理システム

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