一种操作系统的切换方法、装置和计算机系统的制作方法

文档序号:6597738阅读:132来源:国知局
专利名称:一种操作系统的切换方法、装置和计算机系统的制作方法
技术领域
本发明属于计算机应用领域,尤其涉及一种操作系统的切换方法、装置和计算机 系统。
背景技术
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应 用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式系统一般由 嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用 于实现对其他设备的控制、监视或管理等功能。VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操 作系统(RTOS),是嵌入式开发环境的关键组成部分。其良好的持续发展能力、高性能的内核 以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠 性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高 的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。Linux操作系统,是一种计算机操作系统。Linux操作系统的内核的名字也是 “Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。组成计算机系统的中央处理器(Central Processing Unit, CPU)的架构有很多 种,如 PowerPC、X86、ARM、MIPS 等。其中 PowerPC 是一种精简指令集(reduced instruction set computer, RISC)架 构的CPU,其基本的设计源自IBM(国际商用机器公司)的IBM PowerPC 601增强RISC性能 iXit (Performance Optimized With Enhanced RISC, POWER) @丰勾。X86是一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指 令集合,X与处理器没有任何关系,它是一个对所有*86系统的简单的通配符定义,例如 i386,586,奔腾(pentium)等等。PowerPC、X86、ARM、MIPS架构的计算机一般都支持VxWorks和Linux两种操作系 统。对于嵌入式领域而言,为了满足用户的不同需求,会经常需要更换计算机的操作系统, 因此,在VxWorks系统上实现与Linux操作系统之间的切换是一件非常重要并且有必要的事情。一般情况下,如果想在安装了 VxWorks操作系统的计算机上运行Linux操作系统, 就得先使用烧录器将Boot Flash芯片中引导VxWorks系统的Bootrom启动代码烧录成能 够引导Linux操作系统的U-Boot启动代码。这种方法由于需要对Boot Flash芯片进行烧 写,因此,需要提供对Boot Flash芯片进行烧写的烧录器以及此烧录器对应的软件,从而 造成成本高、风险高;其次需要将BootFlash芯片从计算机主板上取下并放在烧录器上进 行烧录,在有些计算机中,Boot Flash芯片被固定在计算机主板上,需要借助专业设备或工 具,如电烙铁、热风枪等,才能将Boot Flash芯片从计算机主板上取下,从而降低了该方法 的通用性,并增加了其成本。

发明内容
本发明实施例的目的在于提供一种操作系统的切换方法,旨在解决现有的操作系 统的切换方法成本高、通用性低的问题。本发明实施例是这样实现的,一种操作系统的切换方法,所述方法包括下述步 骤在主板上电后,通过VxWorks操作系统的启动代码引导VxWorks操作系统,进入 Vxfforks操作系统的Shell进程;在VxWorks操作系统的Shell进程中接收并存储用户输入的Linux配置参数和环
境变量;接收用户输入的Linux启动命令以及启动参数,根据启动参数将Linux映像文件 加载至指定的内存;从指定的内存中读取Linux映像文件,启动Linux操作系统。本发明实施例的另一目的在于提供一种操作系统的切换装置,所述装置包括Shell进程引导单元,用于在主板上电后,通过VxWorks操作系统的启动代码引导 Vxfforks操作系统,进入VxWorks操作系统的Shell进程;启动参数配置单元,用于在VxWorks操作系统的Srell进程中接收并存储用户输 入的Linux配置参数和环境变量;映像文件加载单元,用于接收用户输入的Linux启动命令以及启动参数,根据启 动参数将Linux映像文件加载至指定的内存;操作系统启动单元,用于从指定的内存中读取Linux映像文件,启动Linux操作系 统。本发明实施例的另一目的在于提供一种计算机系统,所述计算机系统包括所述操 作系统的切换装置。在本发明实施例中,在计算机上电后,通过VxWorks操作系统的启动代码引导 Vxfforks操作系统,进入VxWorks操作系统的Shell进程,在VxWorks操作系统的Shell进 程中接收并存储用户输入的Linux配置参数和环境变量,在接收到用户输入的Linux启动 命令和启动参数后,根据启动参数将Linux映像文件加载至指定的内存,再从指定的内存 启动Linux操作系统,从而不需要额外的设备或仪器,也不需要安装特定的软件,即可实现 从VxWorks操作系统引导到Linux系统,从而节省了从VxWorks操作系统切换到Linux系 统的成本。降低了从VxWorks操作系统切换到Linux系统的风险。


图1是本发明实施例提供的操作系统的切换方法的实现流程图;图2是本发明实施例提供的操作系统的切换装置的结构框图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并
5不用于限定本发明。在本发明实施例中,在计算机上电后,通过Boot Flash芯片中的Bootrom启动 代码引导VxWorks操作系统,进入VxWorks操作系统的Shell进程,在VxWorks操作系统 的Siell进程中接收并存储用户输入的Linux配置参数和环境变量,在接收到用户输入 的Linux启动命令和启动参数后,根据启动参数将Linux映像文件加载至内存,从内存 启动Linux操作系统,从而不需要额外的设备或仪器,也不需要安装特定的软件,即可从 Vxfforks操作系统切换到Linux系统。图1示出了本发明实施例提供的操作系统的切换方法的实现流程,详述如下在步骤SlOl中,在主板上电后,通过VxWorks操作系统的启动代码引导VxWorks 操作系统,进入VxWorks操作系统的Shell进程。其中VxWorks操作系统的Shell进程是一种允许用户直接跟VxWorks系统交互的 命令行接口。其中通过VxWorks操作系统的启动代码引导VxWorks操作系统,进入VxWorks 操作系统的Shell进程的具体步骤属于现有技术,在此不再赘述。在本发明实施例中,Vxfforks操作系统的启动代码Bootrom —般存储在Boot Flash芯片中,因此,在计算机主板上电后,通过Boot Flash芯片中的启动代码Bootrom弓丨 导VxWorks操作系统,进入VxWorks操作系统的Shell进程。在步骤S102中,在VxWorks操作系统的证ell进程中接收并存储用户输入的 Linux配置参数和环境变量。在本发明实施例中,在进入VxWorks操作系统的Shell进程后,该Shell进程输出 人机交互界面,以使用户通过该人机交互界面配置Linux配置参数和环境变量。在本发明实施例中,当计算机主板为PowerPC或者X86架构时,Linux配置参数包 括但不限于内存大小、控制台设备名、控制台属性参数、挂载文件系统的设备和文件系统的 访问方式。其中内存大小是指计算机主板的内存大小。控制台设备名是指用于用户和系统 交互的接口设备名称,该控制台设备名可以配置为串口终端、显示接口等。控制台属性参数 是指对应的交互接口设备的属性,用于设置接口设备,如显示接口的分辨率、串口的波特率 等。在本发明实施例中,当控制台设备名为串口终端时,控制台属性参数为波特率;当控制 台设备名为显示接口时,控制台属性参数为分辨率。挂载文件系统的设备名是指用于存放 Linux文件系统的设备名称,其包括但不限于内部存储设备、外部存储设备等。其中内部存 储设备包括但不限于ramdisk(虚拟磁盘),其中外部存储设备包括但不限于闪存(Flash)、 CF 卡(Compact Flash)、通用串行总线(Universal Serial Bus, USB)设备、硬盘等。文件 系统访问方式是指Linux访问文件的方式,其包括但不限于只读、可读写等。当计算机主板为PowerPC或者X86架构时,环境变量包括但不限于服务器IP地 址、主板IP地址以及主板介质访问控制(Media Access Control, MAC)地址。在本发明实施例中,当计算机主板为ARM架构或者MIPS架构时,需要输入的Linux 配置参数以及环境变量与计算机主板为PowerPC或者X86架构时的区别仅在于,可以不配 置文件系统的访问方式。在步骤S103中,接收用户输入的Linux启动命令以及启动参数,根据启动参数将 Linux映像文件加载至指定的内存。在本发明实施例中,在配置好Linux配置参数和环境变量后,用户输入Linux启动命令(如bootLinux)以及启动参数。其中Linux启动命令用于指示Siell进程启动Linux 操作系统。启动参数包括但不限于用于存放Linux映像文件的设备标识、Linux映像文件 标识、用于存放加载的Linux映像文件的内存地址等。其中用于存放Linux映像文件的设备标识是指存放Linux映像文件的设备的标 识,该设备标识可以直接采用存放Linux映像文件的设备的名称。其中用于存放Linux映 像文件的设备标识包括但不限于文件传输协议(File TransferProtocol, FTP)、简单文件 传输协议(Trivial File Transfer Protocol,TFTP)、“/ata0/ide0”、“/tfTs0”、“/tyCo/0” 等。其中FTP是指从FPT服务器上下载Linux映像文件。TFTP是指从TFTP服务器上下载 Linux映像文件。“/ataO/ideO”是指从硬盘或者CF卡中加载Linux映像文件。/tffsO”是 指从Flash中加载Linux映像文件。“/tyCo/Ο”是指从串口加载Linux映像文件。Linux映像文件标识是指要加载的Linux操作系统的映像文件的标识,该标识 可以直接采用Linux映像文件的名称,如EEB-3512⑶3N主板对应的Linux映像文件名为 “EEB-3512_uImage”。用于存放加载的Linux映像文件的内存地址是指将Linux映像文件加载至内 存中时,该内存的内存地址,在本发明实施例中,Linux映像文件所存放的内存地址属于 Vxfforks操作系统下的空闲内存范围。这样,根据Linux映像文件存放的设备名和Linux映像文件名即可将需要加载的 Linux映像文件加载到指定的内存中。这样,在VxWorks操作系统的Shell进程下输入Linux启动命令(如“bootLinux”) 和启动参数后,即可从Linux映像文件存放的设备名标识的设备中下载Linux映像文件名 标识的Linux映像文件,并将Linux映像文件存储至指定的内存中。在步骤S104中,从指定的内存中读取Linux映像文件,启动Linux操作系统。在本发明实施例中,当将需要加载的Linux映像文件加载到指定的内存后,即可 跳转到该指定的内存地址,读取Linux映像文件,启动Linux内核,Linux内核根据输入的 Linux配置参数自动挂载Linux文件系统,Linux文件系统加载后,即可进入Linux终端,实 现Linux操作系统的启动。在本发明实施例中,在计算机上电后,通过Boot Flash芯片中的Bootrom启动 代码引导VxWorks操作系统,进入VxWorks操作系统的Shell进程,在VxWorks操作系统 的Siell进程中接收并存储用户输入的Linux配置参数和环境变量,在接收到用户输入的 Linux启动命令和启动参数后,根据启动参数将Linux映像文件加载至指定的内存,再从指 定的内存启动Linux操作系统,从而不需要额外的设备或仪器,也不需要安装特定的软件, 即可实现从VxWorks操作系统引导到Linux系统,从而节省了从VxWorks操作系统切换到 Linux系统的成本。降低了从VxWorks操作系统切换到Linux系统的风险。图2示出了本发明实施例提供的操作系统的切换装置,为了便于说明,仅示出了 与本发明实施例相关的部分。该操作系统的切换装置可以是内置于计算机系统中的软件单 元、硬件单元或者软硬件相结合的单元,或者作为独立的挂件集成到计算机系统中。其中Shell进程引导单元1在计算机上电后,通过VxWorks操作系统的启动代码引导 Vxfforks操作系统,进入VxWorks操作系统的Shell进程。其中VxWorks操作系统的Shell是一种允许用户直接跟VxWorks系统交互的命令行接口。其中通过VxWorks操作系统的启动代码引导VxWorks操作系统,进入VxWorks操 作系统的Shell进程的具体步骤属于现有技术,在此不再赘述。在本发明实施例中,Vxfforks操作系统的启动代码Bootrom —般存储在Boot Flash芯片中,因此,在计算机主板上电后,通过Boot Flash芯片中的启动代码Bootrom弓丨 导VxWorks操作系统,进入VxWorks操作系统的Shell进程。启动参数配置单元2在VxWorks操作系统的Shell进程中接收并存储用户输入的 Linux配置参数和环境变量。在本发明实施例中,在进入VxWorks操作系统的Shell进程后,该Shell进程输出 人机交互界面,以使用户通过该人机交互界面配置Linux配置参数和环境变量。在本发明实施例中,当计算机主板为PowerPC或者X86架构时,Linux配置参数包 括但不限于内存大小、控制台设备名、控制台属性参数、挂载文件系统的设备和文件系统的 访问方式。其中内存大小是指计算机主板的内存大小。控制台设备名是指用于用户和系统 交互的接口设备名称,该控制台设备名可以配置为串口终端、显示接口等。控制台属性参数 是指对应的交互接口设备的属性,用于设置接口设备,如显示接口的分辨率、串口的波特率 等。在本发明实施例中,当控制台设备名为串口终端时,控制台属性参数为波特率;当控制 台设备名为显示接口时,控制台属性参数为分辨率。挂载文件系统的设备名是指用于存放 Linux文件系统的设备名称,其包括但不限于内部存储设备、外部存储设备等。其中内部存 储设备包括但不限于ramdisk(虚拟磁盘),其中外部存储设备包括但不限于闪存(Flash)、 CF 卡(Compact Flash)、通用串行总线(Universal Serial Bus, USB)设备、硬盘等。文件 系统访问方式是指Linux访问文件的方式,其包括但不限于只读、可读写等。当计算机主板为PowerPC或者X86架构时,环境变量包括但不限于服务器IP地 址、主板IP地址以及主板介质访问控制(Media Access Control, MAC)地址。在本发明实施例中,当计算机主板为ARM架构或者MIPS架构时,需要输入的Linux 配置参数以及环境变量与计算机主板为PowerPC或者X86架构时的区别仅在于,可以不配 置文件系统的访问方式。映像文件加载单元3接收用户输入的Linux启动命令以及启动参数,并根据启动 参数将Linux映像文件加载至指定的内存。在本发明实施例中,在配置好Linux配置参数和环境变量后,用户输入Linux启动 命令(如bootLinux)以及启动参数。其中启动参数包括但不限于Linux映像文件所存放 的设备名、Linux映像文件名、Linux映像文件所存放的内存地址等。其中Linux映像文件 所存放的设备名包括但不限于 FTP、TFTP、“/ata0/ide0”、“/tffS0”、“/tyCO/0” 等。Linux 映像文件所存放的内存地址属于VxWorks操作系统下的空闲内存范围。操作系统启动单元4从指定的内存中读取Linux映像文件,启动Linux操作系统。在本发明实施例中,当将需要加载的Linux映像文件加载到指定的内存后,即可 跳转到存储有Linux映像文件的指定的内存地址,读取Linux映像文件,启动Linux内核, Linux内核根据输入的Linux配置参数自动挂载Linux文件系统,Linux文件系统加载后, 即可进入Linux终端,实现Linux操作系统的启动。在本发明实施例中,在计算机上电后,通过Boot Flash芯片中的Bootrom启动 代码引导VxWorks操作系统,进入VxWorks操作系统的Siell进程,在VxWorks操作系统
8的SieIl进程中接收并存储用户输入的Linux配置参数和环境变量,在接收到用户输入的 Linux启动命令和启动参数后,根据启动参数将Linux映像文件加载至指定的内存,再从指 定的内存启动Linux操作系统,从而不需要额外的设备或仪器,也不需要安装特定的软件, 即可实现从VxWorks操作系统引导到Linux系统,从而节省了从VxWorks操作系统切换到 Linux系统的成本。降低了从VxWorks操作系统切换到Linux系统的风险。同时在加载 Linux操作系统时,可以从本地存储设备、网络或者通过串口等方式加载Linux映像文件, 从而为从VxWorks操作系统切换到Linux操作系统提供了方便,同时本发明实施例提供的 方法适用于任何可以支持VxWorks操作系统和Linux操作系统的计算机主板架构。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种操作系统的切换方法,其特征在于,所述方法包括下述步骤在主板上电后,通过VxWorks操作系统的启动代码引导VxWorks操作系统,进入 Vxfforks操作系统的Shell进程;在VxWorks操作系统的Shell进程中接收并存储用户输入的Linux配置参数和环境变量;接收用户输入的Linux启动命令以及启动参数,根据启动参数将Linux映像文件加载 至指定的内存;从指定的内存中读取Linux映像文件,启动Linux操作系统。
2.如权利要求1所述的方法,其特征在于,所述Linux配置参数包括内存大小、控制台 设备名、控制台属性参数、挂载文件系统的设备名和文件系统的访问方式,所述控制台设备 名配置为串口终端或显示接口,当控制台设备名为串口终端时,控制台属性参数为波特率; 当控制台设备名为显示接口时,控制台属性参数为分辨率,所述挂载文件系统的设备名包 括内部存储设备、外部存储设备,所述内部存储设备包括虚拟磁盘ramdisk,所述外部存储 设备包括闪存、CF卡、通用串行总线设备、硬盘,所述文件系统的访问方式包括只读、可读 写。
3.如权利要求1所述的方法,其特征在于,所述环境变量包括服务器IP地址、主板IP 地址以及主板MAC地址。
4.如权利要求1至3任一项所述的方法,其特征在于,所述Linux配置参数包括用于存 放Linux映像文件的设备标识、Linux映像文件标识、用于存放加载的Linux映像文件的内 存地址。
5.如权利要求4所述的方法,其特征在于,用于存放Linux映像文件的设备标识包括 文件传输协议FTP、简单文件传输协议TFTP、“/ata0/ide0,V7tffS0”、“/tyCo/0”,所述FTP 是指从FTP服务器上下载Linux映像文件,所述TFTP是指从TFTP服务器上下载Linux映 像文件,所述“/ataO/ideO”是指从硬盘或者CF卡中加载Linux映像文件,所述/tffsO”是 指从Flash中加载Linux映像文件,所述“/tyCo/O”是指从串口加载Linux映像文件。
6.如权利要求5所述的方法,其特征在于,所述用于存放加载的Linux映像文件的内存 地址属于VxWorks操作系统下的空闲内存范围。
7.一种操作系统的切换装置,其特征在于,所述装置包括Shell进程引导单元,用于在主板上电后,通过VxWorks操作系统的启动代码引导 Vxfforks操作系统,进入VxWorks操作系统的Shell进程;启动参数配置单元,用于在VxWorks操作系统的Shell进程中接收并存储用户输入的 Linux配置参数和环境变量;映像文件加载单元,用于接收用户输入的Linux启动命令以及启动参数,根据启动参 数将Linux映像文件加载至指定的内存;操作系统启动单元,用于从指定的内存中读取Linux映像文件,启动Linux操作系统。
8.如权利要求7所述的装置,其特征在于,所述Linux配置参数包括内存大小、控制台 设备名、控制台属性参数、挂载文件系统的设备和文件系统的访问方式,所述控制台设备名 配置为串口终端或显示接口,当控制台设备名为串口终端时,控制台属性参数为波特率;当 控制台设备名为显示接口时,控制台属性参数为分辨率,所述挂载文件系统的设备名包括内部存储设备、外部存储设备,所述内部存储设备包括虚拟磁盘ramdisk,所述外部存储设 备包括闪存、CF卡、通用串行总线设备、硬盘,所述文件系统的访问方式包括只读、可读写, 所述环境变量包括服务器IP地址、主板IP地址以及主板MAC地址。
9.如权利要求7所述的装置,其特征在于,所述启动参数包括用于存放Linux映像文件 的设备标识、Linux映像文件标识、用于存放加载的Linux映像文件的内存地址。
10.如权利要求9所述的装置,其特征在于,用于存放Linux映像文件的设备标识包括 文件传输协议FTP、简单文件传输协议TFTP、“/ata0/ide0”、“/tffS0”、“/tyCO/0”,所述FTP 是指从FPT服务器上下载Linux映像文件,所述TFTP是指从TFTP服务器上下载Linux映 像文件,所述“/ataO/ideO”是指从硬盘或者CF卡中加载Linux映像文件,所述/tffsO”是 指从Flash中加载Linux映像文件,所述“/tyCo/Ο”是指从串口加载Linux映像文件,所述 用于存放加载的Linux映像文件的内存地址属于VxWorks操作系统下的空闲内存范围。
11.一种计算机系统,其特征在于,所述计算机系统包括权利要求7至10任一项所述的 操作系统的切换装置。
全文摘要
本发明适用于计算机应用领域,提供了一种操作系统的切换方法、装置和计算机系统,该方法包括下述步骤在主板上电后,引导VxWorks操作系统Shell进程;接收并存储用户输入的Linux配置参数和环境变量;接收用户输入的Linux启动命令以及启动参数,根据启动参数将Linux映像文件加载至指定的内存;从指定的内存中读取Linux映像文件,启动Linux操作系统。本发明不需要额外的设备或仪器,也不需要安装特定的软件,即可从VxWorks操作系统切换到Linux系统,成本低、通用性强、风险低。
文档编号G06F9/445GK102135908SQ20101010273
公开日2011年7月27日 申请日期2010年1月25日 优先权日2010年1月25日
发明者陈志列, 高竹红 申请人:研祥智能科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1