Chinaunix

标题: 虚拟化系统开发项目--语言(C/汇编) [打印本页]

作者: ngzyl    时间: 2007-03-28 11:15
标题: 虚拟化系统开发项目--语言(C/汇编)
WINDOWS / LINUX / UNIX / MAC OS 多个系统已逐渐被大多数人认可,哪一个取代哪一个成为霸主都是不太可能的事情,在我实际使用中感觉频繁的切换操作系统的繁琐及不便,VMWARE虚拟机做的很不错可以达到这个要求,但是它的速度不尽满意,而且它必须要求有一个操作系统的支持才可以运行。我有此一想法就是如果能够将VMWARE这样的模式直接开发出一个小的操作系统(它控制全局的内存、硬盘、CPU及所有硬件的虚拟化)在此系统之上能够安装多个操作系统,并能够合理的为多个操作系统协调内存及其他设备资源
。这样可以简单的点击一下鼠标就切换了一个操作系统,并能够同时在多个系统运行服务。

这是我的一个想法,就是想和一些朋友共同来开发这样一个操作系统的想法。

我暂时给这一系统取名中文名:诺图斯系统 1.0  英文名 LOTos 1.0

希望能够得到大家的支持。

英特尔计划开发同时运行多个操作系统的芯片,这无疑在硬件方面给我很大的推动,无疑使我的这个想法坚定下来,这样当这样的CPU研究出来后就可以更好支持这一虚拟化系统
作者: ngzyl    时间: 2007-03-28 11:29
自己先顶一个,听取大家的意见
作者: galaxywar    时间: 2007-03-28 11:44
不知道虚拟硬件咋做?LZ有这方面的资料没有?我对这个有兴趣。
作者: mingyanguo    时间: 2007-03-28 11:45
Xen不行么?
作者: ngzyl    时间: 2007-03-28 11:55
原帖由 mingyanguo 于 2007-3-28 11:45 发表
Xen不行么?


对xen不是太了解,不过我用的suse 里面的xen 感觉不行
作者: cugb_cat    时间: 2007-03-28 12:49
楼主的这个东西是不是要让所有操作系统都使用虚拟的设备?如果能够同时运行多个操作系统而速度比只在计算机内装一个操作系统慢不了多少的话,楼主的项目还是很有前景的。
作者: ngzyl    时间: 2007-03-28 13:47
原帖由 cugb_cat 于 2007-3-28 12:49 发表
楼主的这个东西是不是要让所有操作系统都使用虚拟的设备?如果能够同时运行多个操作系统而速度比只在计算机内装一个操作系统慢不了多少的话,楼主的项目还是很有前景的。



呵呵,我就是这意思。。。
作者: chen_gxing    时间: 2007-03-28 15:54
很有前景的项目,关注中。希望能得到更多高手的提示。
作者: langue    时间: 2007-03-28 18:39
标题: 回复 1楼 ngzyl 的帖子
Plex86?UML (User-Mode Linux) ?
作者: flw    时间: 2007-03-28 18:59
VMWare 好像就可以呀。
作者: crook    时间: 2007-03-28 19:03
建议楼主先研究下VMware ESX Server

它本身就是一个linux操作系统, 安装在硬件上面. 然后在ESX Server上可以安装不同的操作系统.

当然是vmware的收费产品, 很贵呵呵.
作者: flw    时间: 2007-03-28 19:04
原帖由 crook 于 2007-3-28 19:03 发表
建议楼主先研究下VMware ESX Server

它本身就是一个linux操作系统, 安装在硬件上面. 然后在ESX Server上可以安装不同的操作系统.

当然是vmware的收费产品, 很贵呵呵.

对,就是这样的~
作者: crspo    时间: 2007-03-28 19:54
呵呵,跟我的项目有点搭边呀,
现在的流行似乎已经是para-virtualization和pre-virtualization
VMWare网站上有很多关于Virtua ESX Server的技术文档和白皮书以及一些论文。
Xen and the art of of virtualization  这篇论文似乎也应该看一看
另外这方面的新方向似乎是软件方法和硬件方法的结合,
可以参考Intel VT,intel的technical journal似乎有一整期是介绍VT的:http://www.intel.com/technology/itj/2006/v10i3/index.htm
这个东西自己做似乎难度比较大,呵呵
作者: ngzyl    时间: 2007-03-29 08:34
谢谢各位的支持,希望能够得到相关更多的这方面的资料,欢迎大家畅所欲言
作者: evaspring    时间: 2007-03-29 09:01
这个项目构思不错。。。

不过要做起来难度很大哦!
作者: cqpp    时间: 2007-03-29 09:16
虚拟一个CPU指令集的?标准化硬件访问接口?
作者: qjybz    时间: 2007-03-29 09:52
标题: 愿意贡献点微薄力量,本人技术不行
如果有打杂的工作,或者文档的编辑等等
作者: cqpp    时间: 2007-03-29 11:46
LZ有详细的计划吗?我愿意加入
作者: ngzyl    时间: 2007-03-29 16:43
正在准备资料,并制定实施计划,欢迎你的加入。难度是非常大的,还希望高手多指教
作者: PCOS    时间: 2007-03-29 19:55
高见!
作者: ilike911    时间: 2007-03-30 14:28
标题: 这个ideal只是一个理想
纯粹的硬件+一个小的“虚拟机系统”这不过是一个设想 若要虚拟硬件 来支持多个操作系统 目前来说做不到

vmware esx 其实也是基于操作系统(Linux)实现

所以LZ需要建造OS+VM才可以做到所需要的功能,那和Xen+Linux有什么区别? 不过Xen做的还不够好,甚至相当差,所以如果你足够NB比他做的更好,或者去改进他,那么这是个好东西。
作者: ngzyl    时间: 2007-03-30 14:49
原帖由 ilike911 于 2007-3-30 14:28 发表
纯粹的硬件+一个小的“虚拟机系统”这不过是一个设想 若要虚拟硬件 来支持多个操作系统 目前来说做不到

vmware esx 其实也是基于操作系统(Linux)实现

所以LZ需要建造OS+VM才可以做到所需要的功能,那和Xe ...



你说的不错,就是要实现一个全局控制虚拟硬件的os,在此基础上安装其他的系统,
当然这个os其实就相当于一个地球,人们可以在上面随意建自己的房屋
另外这个地球相对于太阳系是很小的
作者: cjaizss    时间: 2007-03-30 15:50
无论如何,关注!
支持一把!
虽然,难度是大的,困难是有的。
作者: loserwn    时间: 2007-03-30 19:42
楼主可以关注一下KVM和openvz
都是基于OS级别的虚拟化技术,属于生产环境。效率比VM要高很多。不过要是平日调试软件的话开发类似VM的硬件虚拟化平台还是比较有意义的。
遇见仅供参考
作者: hongmuniao    时间: 2007-03-30 23:16
跟你有类似的想法,
另外,不知道MAC跟WINDOWS XP之间的快速切换算不算是多个系统之间切换呢?
作者: 醉卧水云间    时间: 2007-03-31 14:22
C板牛人真多啊, 这个项目我只能做点勤杂了,底层不够熟悉.
作者: 资深菜鸟    时间: 2007-03-31 20:24
既然lz的想法跟vmware esx 相似,是不是lz认为esx的os层仍然太厚了?

如果这样的话,也许可以直接把vm建立在某个micro kernel的Service层?
作者: nkchenz    时间: 2007-04-01 04:46
vm的宿主为win或者linux,楼主的意思是不是要重新做一个软件或者os,它不需要宿主,或者可以说其本身就是宿主,然后可以安装多个os比如linux,win等,这几个操作系统可以同时运行,很方便的进行切换?

如果是这样一种想法,倒是有可能做出跟vm现有的虚拟机制完全不同的东西来。把一个cpu虚拟出多个来,一套硬件虚拟出多个来,让客户os以为自己独享一套硬件。另外,好像ibm有类似的大型机,拥有同时运行多个异构操作系统的能力,可以研究一下。

如果仅是因为性能的原因则似乎没有必要。因为如果要多个系统都同时运行,就需要同时驻留内存,分享同一颗cpu,其性能似乎注定比单机性能慢吧?虚拟机制的主要卖点是提供便捷地同时运行多个os的能力,利用单机的过剩资源,而不是说虚拟出来的系统比单机的性能还高。


一点拙见,不对的地方敬请指正!
作者: yyprick    时间: 2007-04-01 12:49
价值不太大,因为这种系统在实际中没法用吧?更多的现在用VM的人,是在装有一个操作系统进行主要工作的情况下装有VM来进行一些其它工作的开发。
本来如果有一个系统能够将所有这些东西都包容进去确实是个不错的想法,可效率呢?如果在不能保证效率的情况下,那么就没有过多的实用价值,相反的,我觉得比如说像wine这样的项目更有前景些。
作者: ngzyl    时间: 2007-04-01 19:11
原帖由 yyprick 于 2007-4-1 12:49 发表
价值不太大,因为这种系统在实际中没法用吧?更多的现在用VM的人,是在装有一个操作系统进行主要工作的情况下装有VM来进行一些其它工作的开发。
本来如果有一个系统能够将所有这些东西都包容进去确实是个不错的想 ...



效率当然是很重要的,我所想要做到的也就是多个操作系统运行时的速度都和单独一个系统运行时差别小于10%,如果硬件再好点,再加上intel的新的cpu技术,我感觉是可行的
作者: lhlzy    时间: 2007-04-02 15:20
意义很大,支持
但光是处理好千奇百怪的物理硬件就是一个很大问题!!

还有,比如我要一个6个串口的scounix虚拟机,你怎么做??
要知道scounix本身只支持标准的两个串口,其他的4个要加多功能卡,但是虚拟环境里并不能直接装多功能卡驱动程序!vm也不行
希望你将来的虚拟机能做到能识别真实的物理设备,而不仅仅是虚拟的!!
作者: thinkinnight    时间: 2007-04-02 20:07
这个看起来很难啊,不过确实很有意义,有时希望不重新启动而进行系统间的切换,应该就是这个功能吧。
作者: 地球杀手    时间: 2007-04-03 09:56
原帖由 ngzyl 于 2007-3-28 11:15 发表
WINDOWS / LINUX / UNIX / MAC OS 多个系统已逐渐被大多数人认可,哪一个取代哪一个成为霸主都是不太可能的事情,在我实际使用中感觉频繁的切换操作系统的繁琐及不便,VMWARE虚拟机做的很不错可以达到这个要求,但 ...

你肯定作不出来。所以不需要多说了。

作出来的也没有人会用。知道吗?

速度肯定具慢。别人怎么大的公司开发出来的,都慢的可以了。何况你开发,MS自己开发的调用的是自己的API。你看看什么速度。就你们几个???菜鸟??算了吧

[ 本帖最后由 地球杀手 于 2007-4-3 09:58 编辑 ]
作者: rag    时间: 2007-04-10 13:41
方案是可行的,不过搞出来的东西,企业用的会比较多,个人用户用的几率应该比较小,除了个别发烧级的用户,自己想使用多个OS。
个人觉得,这个系统做出来,要做得好,肯定需要 硬件的强力支持。
作者: ngzyl    时间: 2007-04-10 13:45
只有想不到,没有做不到
我相信可以




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2