精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>嵌入式开发>>google上关于vmware的一些问题的讨论(转)

主题:google上关于vmware的一些问题的讨论(转)
发信人: zelor(无良小叔张作乐)
整理人: wenbobo(2003-03-03 20:48:42), 站内信件
google上关于vmware的一些问题的讨论 
后8项 
跳到 [ 最新回应 ] 
Message 1 in thread 
寄件者:Bin Chen ([email protected]
主旨:About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-21 17:30:06 PST 


Hello, 
Now I want write some infomation into a vmware virtual disk file,but I 
found that the format of the virtual disk file is not the same as a 
real disk.For example ,the fist 512 bytes of the file is not the mbr 
or boot sector! 

So I am curious about the format of the virtual disk. 

Any help appreciated! 

Best Regards, 
Chen Bin 
Post a follow-up to this message 

Message 2 in thread 
寄件者:Tuukka Toivonen ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 00:15:06 PST 


In article <[email protected]>, Bin Chen wrote: 
> Now I want write some infomation into a vmware virtual disk file,but I 
> found that the format of the virtual disk file is not the same as a 
> real disk.For example ,the fist 512 bytes of the file is not the mbr 

I would guess that it has some header, after which is the raw data. Could 
you try looking for the MBR in the rest of the bytes? 
Post a follow-up to this message 

Message 3 in thread 
寄件者:Kasper Dupont ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 01:37:46 PST 


Tuukka Toivonen wrote: 

> I would guess that it has some header, after which is the raw data. Could 
> you try looking for the MBR in the rest of the bytes? 

It is not that simple. Some other emulators use a virtual disk in that 
format. DOSEMU has a 128 byte header, and all PC emulators I have seen 
for Amiga used another format with a 512 byte header. 

But VMware is more complicated. In fact initially the VMware diskfile 
is smaller than the emulated disk, but I guess it will have to grow as 
data gets written to the disk. 

-- 
Kasper Dupont -- der bruger for meget tid p? usenet. 
For sending spam use mailto:[email protected] 
char *mybuf[1==1]; (2==3)[mybuf]="Hello World!"; 
Post a follow-up to this message 

Message 4 in thread 
寄件者:M?ns Rullg?rd ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 03:06:31 PST 


Kasper Dupont writes: 

> > I would guess that it has some header, after which is the raw data. Could 
> > you try looking for the MBR in the rest of the bytes? 

> It is not that simple. Some other emulators use a virtual disk in that 
> format. DOSEMU has a 128 byte header, and all PC emulators I have seen 
> for Amiga used another format with a 512 byte header. 

> But VMware is more complicated. In fact initially the VMware diskfile 
> is smaller than the emulated disk, but I guess it will have to grow as 
> data gets written to the disk. 

VMware uses some copy-on-write mechanism, similar to the VM in most 
OSes. There must be something equivalent to a page table somewhere in 
the file, most likely near the start. Has anyone tried asking for 
specs on the file format? 

-- 
M?ns Rullg?rd 
[email protected] 
Post a follow-up to this message 

Message 5 in thread 
寄件者:Kasper Dupont ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 04:33:49 PST 


M?ns Rullg?rd wrote: 

> VMware uses some copy-on-write mechanism, similar to the VM in most 
> OSes. There must be something equivalent to a page table somewhere in 
> the file, most likely near the start. 

I looked on a VMware file once, and the start of the file did look 
like some kind of tables, so I guess you are right about that. 

> Has anyone tried asking for specs on the file format? 

Yes, Bin Chen just did that. But I guess you mean has anyone tried 
asking the authors of VMware about the format. I have not tried. 

-- 
Kasper Dupont -- der bruger for meget tid p? usenet. 
For sending spam use mailto:[email protected] 
char *mybuf[1==1]; (2==3)[mybuf]="Hello World!"; 
Post a follow-up to this message 

Message 6 in thread 
寄件者:Robert Kaiser ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 02:15:48 PST 


In article , 
Tuukka Toivonen writes: 
> In article <[email protected]>, Bin Chen wrote: 
>> Now I want write some infomation into a vmware virtual disk file,but I 
>> found that the format of the virtual disk file is not the same as a 
>> real disk.For example ,the fist 512 bytes of the file is not the mbr 

> I would guess that it has some header, after which is the raw data. Could 
> you try looking for the MBR in the rest of the bytes? 

It's not _that_ simple. I looked into this once (but not very deeply). 
It looks as if it somehow skips unused blocks in the "disk". And it may 
also compress data. For instance, I have a virtual disk which Win98 says 
is 1.94 GB, 898 MB used, but the corresponding Linux file is only ~711 MB. 

Rob 

-- 
Robert Kaiser email: rkaiser AT sysgo DOT de 
SYSGO AG http://www.elinos.com 
Klein-Winternheim / Germany http://www.sysgo.de 
Post a follow-up to this message 

Message 7 in thread 
寄件者:Bin Chen ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 18:28:14 PST 


[email protected] (Robert Kaiser) wrote in message news:... 
> In article , 
> Tuukka Toivonen writes: 
> > In article <[email protected]>, Bin Chen wrote: 
> >> Now I want write some infomation into a vmware virtual disk file,but I 
> >> found that the format of the virtual disk file is not the same as a 
> >> real disk.For example ,the fist 512 bytes of the file is not the mbr 
> > 
> > I would guess that it has some header, after which is the raw data. Could 
> > you try looking for the MBR in the rest of the bytes? 

> It's not _that_ simple. I looked into this once (but not very deeply). 
> It looks as if it somehow skips unused blocks in the "disk". And it may 
> also compress data. For instance, I have a virtual disk which Win98 says 
> is 1.94 GB, 898 MB used, but the corresponding Linux file is only ~711 MB. 

> Rob 

If the machanism of VM disk file is the same as described above,I will 
be very disappointed about VMWare. 

Are there any other good X86 emulator that can be easily extended by 
user? 
Post a follow-up to this message 

Message 8 in thread 
寄件者:Richard Pitt ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-22 23:55:13 PST 


On Fri, 22 Nov 2002 18:28:13 -0800, Bin Chen wrote: 

[email protected] (Robert Kaiser) wrote in message 
> news:... 
>> In article , 
>> Tuukka Toivonen writes: 
>> > In article <[email protected]>, Bin 
>> > Chen wrote: 
>> >> Now I want write some infomation into a vmware virtual disk file,but 
>> >> I found that the format of the virtual disk file is not the same as 
>> >> a real disk.For example ,the fist 512 bytes of the file is not the 
>> >> mbr 
>> > 
>> > I would guess that it has some header, after which is the raw data. 
>> > Could you try looking for the MBR in the rest of the bytes? 
>> 
>> It's not _that_ simple. I looked into this once (but not very deeply). 
>> It looks as if it somehow skips unused blocks in the "disk". And it may 
>> also compress data. For instance, I have a virtual disk which Win98 
>> says is 1.94 GB, 898 MB used, but the corresponding Linux file is only 
>> ~711 MB. 
>> 
>> Rob 

> If the machanism of VM disk file is the same as described above,I will 
> be very disappointed about VMWare. 

> Are there any other good X86 emulator that can be easily extended by 
> user? 

has anyone else ever dealt with a "sparse" disk? 

blocks which contain all "null" blocks don't take up 'real' space. 

richard 

-- 
Richard C. Pitt C.E.O. Belcarra Technologies 
[email protected] direct: 604-644-9265 www.belcarra.com 
Software Systems - design and implementation: Internet, Linux, Communications 
USB, RNDIS, ATM, E-mail, SQL, Encryption, Security, Web, Embedded Systems 
Post a follow-up to this message 

Message 9 in thread 
寄件者:M?ns Rullg?rd ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 06:06:32 PST 


Richard Pitt writes: 

> has anyone else ever dealt with a "sparse" disk? 

> blocks which contain all "null" blocks don't take up 'real' space. 

That's not exactly right. Blocks that have never been written to 
don't use any disk space. They do read as zeros. If anything, even 
zeros, is written to them there will be physical space allocated. 

-- 
M?ns Rullg?rd 
[email protected] 
Post a follow-up to this message 

Message 10 in thread 
寄件者:Kasper Dupont ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 06:27:11 PST 


M?ns Rullg?rd wrote: 

> Richard Pitt writes: 

> > has anyone else ever dealt with a "sparse" disk? 
> > 
> > blocks which contain all "null" blocks don't take up 'real' space. 

> That's not exactly right. Blocks that have never been written to 
> don't use any disk space. They do read as zeros. If anything, even 
> zeros, is written to them there will be physical space allocated. 

Why does VMware implement that? I think it could just rely on 
sparse files implemented by the underlying filesystem. 

-- 
Kasper Dupont -- der bruger for meget tid p? usenet. 
For sending spam use mailto:[email protected] 
char *mybuf[1==1]; (2==3)[mybuf]="Hello World!"; 
Post a follow-up to this message 

前10项 
跳到 [ 开始回应留言 ] 
Message 11 in thread 
寄件者:M?ns Rullg?rd ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 09:26:18 PST 


Kasper Dupont writes: 

> > > has anyone else ever dealt with a "sparse" disk? 
> > > 
> > > blocks which contain all "null" blocks don't take up 'real' space. 
> > 
> > That's not exactly right. Blocks that have never been written to 
> > don't use any disk space. They do read as zeros. If anything, even 
> > zeros, is written to them there will be physical space allocated. 

> Why does VMware implement that? I think it could just rely on 
> sparse files implemented by the underlying filesystem. 

I was talking about sparse file in Linux (and most Unixes). VMWare 
probably duplicates the functionality because VMWare is also available 
for Windows, and Windows doesn't have sparse files. I guess the 
virtual disk format is the same in the windows and linux versions of 
VMWare and that would be the reason for not using sparse files on 
linux. As usual we all have to suffer from the drawbacks of windows, 
even if we don't use it ourselves. 

-- 
M?ns Rullg?rd 
[email protected] 
Post a follow-up to this message 

Message 12 in thread 
寄件者:Bruce Stephens ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 06:22:35 PST 


[email protected] (Bin Chen) writes: 

[...] 

> Are there any other good X86 emulator that can be easily extended by 
> user? 

VMware isn't an emulator, it's a virtualizer. Bochs is an emulator 
(and so will run on non-ix86 hardware, which VMware won't). plex86 
is a project to develop 
an open source virtualizer, but I don't know that it works yet. 

valgrind also includes an x86 emulator; a performance comparison 
between valgrind and bochs might be interesting. 
Post a follow-up to this message 

Message 13 in thread 
寄件者:Kasper Dupont ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 14:23:24 PST 


Bruce Stephens wrote: 

[email protected] (Bin Chen) writes: 

> [...] 

> > Are there any other good X86 emulator that can be easily extended by 
> > user? 

> VMware isn't an emulator, it's a virtualizer. 

Why do you say it is not an emulator? Isn't a virtualizer just an 
emulator taking advantage of large similarities between the host 
architecture and the emulated architecture? 

-- 
Kasper Dupont -- der bruger for meget tid p? usenet. 
For sending spam use mailto:[email protected] 
char *mybuf[1==1]; (2==3)[mybuf]="Hello World!"; 
Post a follow-up to this message 

Message 14 in thread 
寄件者:Bruce Stephens ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 17:17:51 PST 


Kasper Dupont writes: 

> Bruce Stephens wrote: 
>> 
>> [email protected] (Bin Chen) writes: 
>> 
>> [...] 
>> 
>> > Are there any other good X86 emulator that can be easily extended by 
>> > user? 
>> 
>> VMware isn't an emulator, it's a virtualizer. 

> Why do you say it is not an emulator? Isn't a virtualizer just an 
> emulator taking advantage of large similarities between the host 
> architecture and the emulated architecture? 

It's not an emulator in the sense that Bochs most definitely is. 
That's all I meant. I think that you're right that the difference is 
probably one of degree rather than kind---both bochs and VMware have 
to emulate (or trap, anyway) some instructions. 
Post a follow-up to this message 

Message 15 in thread 
寄件者:Bin Chen ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 18:23:31 PST 


Bruce Stephens wrote in message news:<[email protected]>... 
[email protected] (Bin Chen) writes: 

> [...] 

> > Are there any other good X86 emulator that can be easily extended by 
> > user? 

> VMware isn't an emulator, it's a virtualizer. Bochs is an emulator 
> (and so will run on non-ix86 hardware, which VMware won't). plex86 
> is a project to develop 
> an open source virtualizer, but I don't know that it works yet. 

> valgrind also includes an x86 emulator; a performance comparison 
> between valgrind and bochs might be interesting. 

So what is the difference between an emulator and a virtalizer? 
Post a follow-up to this message 

Message 16 in thread 
寄件者:TCS ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 19:50:16 PST 


In article <[email protected]>, Bin Chen wrote: 
>Bruce Stephens wrote in message news:<[email protected]>... 
>> [email protected] (Bin Chen) writes: 
>> 
>> [...] 
>> 
>> > Are there any other good X86 emulator that can be easily extended by 
>> > user? 
>> 
>> VMware isn't an emulator, it's a virtualizer. Bochs is an emulator 
>> (and so will run on non-ix86 hardware, which VMware won't). plex86 
>> is a project to develop 
>> an open source virtualizer, but I don't know that it works yet. 
>> 
>> valgrind also includes an x86 emulator; a performance comparison 
>> between valgrind and bochs might be interesting. 
>So what is the difference between an emulator and a virtalizer? 

One is a real word, the other is made up. 

Same thing otherwise. 
Post a follow-up to this message 

Message 17 in thread 
寄件者:David Konerding ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 22:01:35 PST 


In article <[email protected]>, Bin Chen wrote: 
> Bruce Stephens wrote in message news:<[email protected]>... 
>> [email protected] (Bin Chen) writes: 
>> 
>> [...] 
>> 
>> > Are there any other good X86 emulator that can be easily extended by 
>> > user? 
>> 
>> VMware isn't an emulator, it's a virtualizer. Bochs is an emulator 
>> (and so will run on non-ix86 hardware, which VMware won't). plex86 
>> is a project to develop 
>> an open source virtualizer, but I don't know that it works yet. 
>> 
>> valgrind also includes an x86 emulator; a performance comparison 
>> between valgrind and bochs might be interesting. 

> So what is the difference between an emulator and a virtalizer? 

An emulator completely emulates the host architecture. You 
can emulate an Alpha chip on an x86 chip: the operating system or 
application instructions are converted from the native format to 
the host format and executed in the host instruction set. 
In a virtualizer, the guest OS or application is run directly on 
the host CPU, with little or no translation. Typically, all I/O 
operations are trapped by the virtualization software and converted 
to host OS operations. 

VMware is a virtualizer; if you run a CPU-bound code, 
nearly all the instructions run directly on the CPU. 
I think bochs is a host emulator, and every instruction 
is apparently converted by the hosting application, into a collection 
of application instructions. CPU-bound operations run at native 
speed in VMware, and I/O ops run a good fraction of the native 
speed. 
Post a follow-up to this message 

Message 18 in thread 
寄件者:Tim Roberts ([email protected]
主旨:Re: About VMware's 'virtual disk' file format? 


View this article only 
新闻群组:comp.os.linux.development.system 
日期:2002-11-23 22:47:22 PST 


[email protected] (Bin Chen) wrote: 
>Bruce Stephens wrote: 
>> [email protected] (Bin Chen) writes: 
>> 
>> > Are there any other good X86 emulator that can be easily extended by 
>> > user? 
>> 
>> VMware isn't an emulator, it's a virtualizer. Bochs is an emulator 
>> (and so will run on non-ix86 hardware, which VMware won't). plex86 
>> is a project to develop 
>> an open source virtualizer, but I don't know that it works yet. 
>> 
>> valgrind also includes an x86 emulator; a performance comparison 
>> between valgrind and bochs might be interesting. 

>So what is the difference between an emulator and a virtalizer? 

Bochs, which is an emulator, reads the individual bytes in a program and 
interprets them as an x86 processor would. When it reads an "add" 
instruction, it modifies a variable stored in a structure in memory. 

In VMWare, on the other hand, the x86 instructions are actually being 
executed by the native processor. Only when an interrupt or an I/O port or 
a device register gets accessed does VMWare itself actually get involved in 
the process. 

The difference is large. 
-- 
- Tim Roberts, [email protected] 
Providenza & Boekelheide, Inc. 
Post a follow-up to this message 


-------------------------------------------------------------------------------- 


[已被 sunwen 编辑过,在 2002-11-24 21:34]



----
驾长车,踏破富士山缺。      

[关闭][返回]