基于虚拟机技术搭建嵌入式Linux系统开发环境黄
(荆楚理工学院
炜
448000)
湖北·荆门
摘要本文提出了一种利用虚拟机技术搭建嵌入式Linux系统的实现思路和设计方法,基于虚拟机的开发环境进行了系统功能的拓展研究,利用虚拟机技术开发嵌入式系统,实现了嵌入式Linux系统的开发,提升了开发的效率,满足了实际工作的需要
关键词嵌入式Linux系统TP316中图分类号:0引言
利用虚拟机技术进行嵌入式系统的开发具有很多方面的
优势,因为虚拟机技术不会对原来测试的环境造成任何破坏,在运行完虚拟机之后进行完测试还可以恢复原来的运行环境,因此不会对系统的运行做出任何方面的更改,在系统运行的过程中虚拟机所提供的是一种独立而可靠的运行环境,在这种可靠的运行环境之中,客户对虚拟机的操作并不会对主机产生任何破坏,主机的运行环境也不会因而产生更多破坏。虚拟机所具备的高度的可移植性是特别丰富的,只要具备了方便而高度的可执行性,就无需备份虚拟机的文件就可以进行规范的操作,有时候只需要将一种文件移植到另一种计算机之上就可以进行简单的操作,不需要完善所有的底层产品设计,虚拟机是一种嵌入式系统的开发过程,可以为嵌入式系统的开发提供非常广阔的应用前景,使得一台计算机之中可以运行多种嵌入式系统。利用Linux系统进行嵌入式系统软件的开发不仅价格低而且可以利用丰富的系统资源,但是实现的技术设计路径非常复杂,开发出一种嵌入式的Linux系统需要调试跨平台的开发环境,进行嵌入系统的研究面临着很多难题,虚拟机技术是一种新兴的Linux系统应用技术,在一台已经安装有操作系统的计算机当中构建一个可以安装Linux系统的虚拟机,涉及到如何进行Linux系统开发的问题,如何利用Linux系统进行环境开发涉及到很多现实问题。
1进行嵌入式系统开发的环境嵌入式系统的优势非常广泛不仅成本较低可以节省大量项目资源,而且开发方便,技术路径不复杂。嵌入式系统进行开发的环境往往是受到多种限制的,因此直接利用嵌入式软件系统的平台进行硬件上的直接程序编写是困难的,目前多采用利用计算机程序进行编程的方法,利用计算机平台进行交叉编译,形成二进制代码之后再复制到目标平台的特定位置存储,根据交叉开发环境的要求,进行嵌入式软件的开发需要特殊的环境要求,进行交叉软件语言编译和文件链接是调整嵌入式软件应用开发环境的必然要求,进行嵌入式应用软件的开发和目标计算机的开发需要借助目标计算机的帮助,需要借助到宿主机。
宿主机通常是一台普通的计算机,宿主机通过串口和网络接口与外界进行连接,通常宿主机的硬件配置比较高端,一般包含有一个功能齐全的操作系统和可利用的丰富开发软件,通常条件较好的宿主机有利于应用软件的开发,宿主机一般在应用软件开发的过程中使用,嵌入式系统可以在嵌入式应
开发系统软件
虚拟机技术
A文献标识码:
用软件的实际环境中运行,目标机上具有一套可以替代实际运行的操作系统的模仿系统,因而目标机的硬件资源通常不
如宿主机那么先进。
2嵌入式软件环境的搭建方案
常见的嵌入式系统软件的开发环境大都是电子计算机加上Windows操作系统或者Linux系统,通常Windows系统的内核进行代码编写的时候通常会涉及到项目进程,利用Linux系统进行软件开发涉及到调试问题和编译的交叉问题,因此采用Linux系统加Windows系统进行软件开发更为适合计算机作为宿主机的工作。除了上述两种开发环境之外,还可以尝试利用更多的计算机来进行软件和测试环境的开发,提供了良好的开发环境之后,在调试程序的时候不再奔波于多台宿主计算机之间,可以方便的实现资源共享,只要一个合格的网络环境,就可以在不占用过多硬件资源的情况下,方便地使用各种软件资源,在进行程序调试的时候通常需要调用各种软件资源,如果硬件的占用比较大,利用起来将会非常不方便,在节省了资源和成本的情况下,不需要频繁的在Windows系统和Linux系统之间进行调换,就能把大部分工作完成,方便开发人员集中精力完成其他工作任务,在节省工作时间的同时提升了工作的效率。经过试验探究之后,笔者发现虚拟机技术可以完美的解决系统调用的问题,虚拟机技术可以实现在传统计算机平台上调用多种虚拟的计算机环境,可以进行多种网络环境情况下的开发工作,开发人员的工作效率也能提升,从而开发人员可以进行更高效率的开发调试工作。
3虚拟机技术利用虚拟机技术可以在多台计算机之间进行虚拟计算机系统的轮换操作,可以利用多台虚拟计算机的操作系统实现操作软件的封装,模仿出多台虚拟计算机之后,可以将虚拟计算机在物理机器上实现存放,在开发者实现最大限度的利用计算机之后,可以更好地利用硬件资源,虚拟计算机主要由如下几种产品,第一,使用MAC系统的virtualPC,可以再MacOS上安装有Windows系统或者Linux系统,第二在运行Win-dows系统的计算机之上再运行Linux或者NETWARE系统,第三,还可以是VirtualServer,通过建立服务器专用的虚拟机服务器,模拟出虚拟的PC计算机,可以尝试在一台机器上虚拟出多种操作系统。常见的virtualPCforWindows虚拟机有VMWare和VirtualPC,这两者的功能都比较强大,安装程序也非常简单,这两种软件的区分在于VMWare可以不用模拟出显卡,但是需要通过VMWaretools来提升分辨率和色彩艳
269
—科教导刊(电子版)·2018年第26期/9月(中)—
科|学|技|术
丽度,通过尝试利用VGA,在VIRTUALPC上面模拟出一种比较通用的显卡S3,因此这种软件的通用性比较强大,可以通过显示VMWare.connectix.com网站,利用新版的VIRTUALPC软件,该软件可以支持基本上所有的X86系统,可以尝试Virtual操作的方法和VMWare的操作方法基本上多种操作。
是差异很大的,VMWare可以通过虚拟网卡实现网络功能的互相,但是通过VIRTUALPC可以实现往卡上绑定virtualPC在运行的过程中可以随时对客户机进行简单的操作,不用担心实际操作环境因为主机的更换而发生任何改变。可以尝试在虚拟机运行的时候进行网络协议和通信协议的测试或者封装,在虚拟机进行过备份之后可以尝试更为方便的操作,提高
移植的效果和可信度。由于Linux系统是一种开放源代码的操作系统,因此该系统在众多操作系统中一枝独秀发展迅速,可以通过掌握这种系统的开发技术,降低软件开发的成本,本的服务的功能,从而实现网络功能的共享。虚拟机技术的应用为嵌入式系统的开发带来了很多便利条件,例如虚拟机可以还原测试后的系统镜像,不用对原生的系统进行更改,就可以恢复到系统原来的环境,虚拟机提供的是独立的运行环境,在这个环境之中用户的操作不会更改虚拟机的设置,在主机与虚拟机之间不用进行文件的配置就可以轻松地创建应用场景,不需要更改系统软件的底层设计,虚拟机为软件的开发设置了良好环境,可以提供给系统开发者研究嵌入式系统的初始条件。
4虚拟机所需要的环境的开发
虚拟机可以实现将两台计算机才能够完成的工作集中到一台计算机当中,因此对计算机软件运行的环境的硬件要求特别高,主要是对CPU的要求特别高,同时硬盘容量和内存大小都需要满足一定的条件,虚拟机可以将两台电脑的执行任务集中到一台电脑之中,目前的电脑CPU都是I7以上,并且内存都在4G左右,硬盘在500G大小左右,还是可以满足运行虚拟机的要求的。笔者进行实验所选用的电脑为I5CPU的电脑,选用的是320G的硬盘,加上4G大小的内存,虚拟机软件选用的是VIRTUALPC5.0,所采用的宿主操作系统是Windows7,所选用的客户机所安装的是Debian系统,可以充分利用win7系统所提供的服务和Debian系统所包含的丰富
的软件包,为了使得虚拟机获得更好的运行效果,Debian系统所选用的知识最简单的ARM工具链,而放弃了GUI,同时为
了使得实际实验的效果没有延迟,选用了根据自身要求所开发的REDHat软件,作为操作系统所采用的开发软件,如果进行GUI的开发可能需要更高的电脑配置,笔者实验所用的电脑可能还未达到运行GUI程序的要求。进行Virtual的安装非常简便,本文不再详细描述,需要注意的是在安装的时候需要采用静态IP分配的安装方法,如果所用的IP分配方法是动态的IP分配方法,即通常所称的DHCP,那么运行VirtualPC则需要设置相同的配置方案,在运行简单的平台计算机构件的时候,需要采用成本比较低的网卡就行,因为Windows7系统本身并没有过高要求,如果采用比较高端的网卡,在未进行联网的情况下网络有可能处于断开的状态,设定好的IP地址也会出现变化,变化后的网址有可能不能再次用于网络数据的传输。解决上述软件IP地址分配方法的可行方案包括将网络连接到集线器之上,或者是对运行的WINDOWS操作系统进行网卡的热插拔,可以考虑安装Microsoft的loopback软件网卡,这样就能实现网络共享的目标。
5结语
使用虚拟机进行嵌入式系统的开发具有多方面的优势,因为虚拟机是一种可还原的技术,因此进行原模式的发展之后可以尝试对测试环境进行更改和转换,帮助系统快速的恢复原来的运行环境,虚拟机提供的是一种独立而自然的环境,270
—科教导刊(电子版)·文所介绍的正是利用一种虚拟机技术进行以Linux系统为开发环境的嵌入式系统开发的方法,利用的是一种Linux软件的开发环境,可以为软件开发人员提供便捷可靠的实用性环境。本文所提供的不仅是一种虚拟技术的搭建方法,也是一种利用Linux进行环境开发的设计思路和实现路径,通过本文探讨了如何构建基本的开发环境,实现相应系统的扩展功能,应用嵌入式系统在虚拟技术开发之中,可以降低项目成本,满足项目需求,提高测试开发的实际效率。参考文献
[1]程广辉.基于微内核的操作系统设计以及嵌入式虚拟化应用的研究[D].兰
州:兰州大学,2013.
[2]马汝辉.基于多核的虚拟化技术研究[D].上海:上海交通大学,2011.
[3]雷鸿.基于虚拟机架构下嵌入式开发环境搭建的研究与实现[J].信息通信,
2011(04):11-13.[4]
田军营,韩建海.利用Vmware整合嵌入式系统开发环境[J].自动化与仪器仪表,2006(05):86-88.
[5]张晓华,黄布毅.基于虚拟机技术搭建嵌入式Linux系统开发环境[J].郑州
轻工业学院学报,2005(01):25-27.
2018年第26期/9月(中)—
因篇幅问题不能全部显示,请点此查看更多更全内容