linux虚拟机

有关linux虚拟机的问题,我发现有很多朋友都有疑问,也可能是linux虚拟机这几个字容易产生歧义造成的。

目前linux虚拟机主要是指运行在linux操作系统环境下的virtual mashine, 例如最为常见的vmware,有针对linux环境的版本。

vmare for linux

linux虚拟机还有一种理解,就是运行在windows下linux环境,例如cygwin

cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多好东西,著名的还有eCos,不过现已被Redhat收购)。它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用gnu工具集在windows上进行嵌入式系统开发,非常有用。随着嵌入式系统开发在国内日渐流行,越来越多的开发者对cygwin产生了兴趣。

cygnus当初首先把gcc,gdb,gas等开发工具进行了改进,使他们能够生成并解释win32的目标文件。然后,他们要把这些工具移植到windows平台上去。一种方案是基于win32 api对这些工具的源代码进行大幅修改,这样做显然需要大量工作。因此,他们采取了一种不同的方法——他们写了一个共享库(就是cygwin dll),把win32 api中没有的unix风格的调用(如fork,spawn,signals,select,sockets等)封装在里面,也就是说,他们基于win32 api写了一个unix系统库的模拟层。这样,只要把这些工具的源代码和这个共享库连接到一起,就可以使用unix主机上的交叉编译器来生成可以在windows平台上运行的工具集。以这些移植到windows平台上的开发工具为基础,cygnus又逐步把其他的工具(几乎不需要对源代码进行修改,只需要修改他们的配置脚本)软件移植到windows上来。这样,在windows平台上运行bash和开发工具、用户工具,感觉好像在unix上工作。

关于cygwin实现的更详细描述,请参考http://cygwin.com/cygwin-ug-net/highlights.html.


欢迎转载本文,请注明来自:http://www.linuxsense.org

TAG: VMware vmware linux虚拟机 cygwin
发布: 2008-3-04 23:11    作者: admin    来源: 本站原创    查看: 99次

推荐给好友 上一篇 | 下一篇

 

评分:0

我来说两句

seccode