<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx</link><description>Inside of Virtual PC we provide a number of 'emulated' devices - like the S3 Trio video card and the Intel 21140 network card. People regularly ask me why we emulate these specific devices - and there are a number of reasons. It is important to know that</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#361384</link><pubDate>Thu, 27 Jan 2005 07:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:361384</guid><dc:creator>Anonymous Coward</dc:creator><description>I don't think the performance angle is as clear cut as you say.  Firstly you can offload to devices or optimised code sequences on the host computer.  One example would be drawing ellipses on the graphics card.  If the card you emulate cannot draw them, then the guest OS will sit there drawing it pixel by pixel.  On the other hand if the emulated card can draw ellipses you can recognise that instruction and tell the host card to draw an ellipse.  In all cases, the host CPU or the host graphics card drawing the ellipses will be faster than the guest OS drawing them pixel by pixel.  (BTW I think you got the video card right in VPC).&lt;br&gt;&lt;br&gt;Similar things will apply for other hardware (eg TCP checksums on network cards).  For disk controllers you'd want to emulate a card that can be supplied multiple outstanding large requests so you can hand that off to the host operating system to deal with. The host is way better at scheduling the real CPU, memory, hard disk and other peripherals and can do concurrently.&lt;br&gt;&lt;br&gt;You also have the option of emulating two devices.  One can be based on real hardware meeting the criteria you give above, and the other can be optimised for VPC and require specific guest device drivers.  VMWare do this for network cards (although bizarrely only for the Linux hosted version, not the Windows hosted version).  You can set whether each emulated network card is the emalated AMD PCNet 32 or the vmxnet one.</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#361727</link><pubDate>Thu, 27 Jan 2005 18:57:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:361727</guid><dc:creator>Robert Aitchison</dc:creator><description>Was performance the reason you emulated the Intel 21140 instead of an Intel 8255x (say a Pro 100B)? &lt;br&gt;&lt;br&gt;As the 8255x family is probably the most common PCI network card in existence.  I had never seen nor heard of an Intel 21140 before messing with Virtual Server.&lt;br&gt;&lt;br&gt;I like the idea of a choice of hardware emulation, it seems like it might make migrating from physical hardware to a virtual machine easier.</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#362126</link><pubDate>Fri, 28 Jan 2005 04:18:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:362126</guid><dc:creator>Anonymous Coward</dc:creator><description>The 21140 predecessors were also packaged up by DEC (prior to becoming Compaq prior to becoming HP).  I encountered many many of them as real hardware.&lt;br&gt;&lt;br&gt;Note that I wasn't advocating choosing between two real pieces of hardware.  It was between one real piece and one virtual (never existed) where the latter requires VPC specific device drivers.  That gives you a choice between maximum compatibility and maximum performance.</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#362191</link><pubDate>Fri, 28 Jan 2005 07:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:362191</guid><dc:creator>Shin</dc:creator><description>I have one specific question about the emulated sound card . Many DOS games require the information which interrupt&amp;amp;port&amp;amp;DMA the sound card is using. We're either required to set a environment variable &amp;quot;BLASTER&amp;quot; or given a setup tool to select from a list of choices. So what is these settings to the VPC sound card?&lt;br&gt;Also is there a DOS driver for the emulated sound card? </description></item><item><title>The choice was quite clever</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#362276</link><pubDate>Fri, 28 Jan 2005 11:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:362276</guid><dc:creator>SvOlli</dc:creator><description>try this one:&lt;br&gt;set BLASTER=A220 I5 D1 H5 P330 T6&lt;br&gt;I even got the SB16 Driver for Windows 3.1x to work, so that I could run WinPlay3 for listening to an mp3. :)&lt;br&gt;&lt;br&gt;And I also think the choise of the DEC 21x4x is very nice, too because now I can run the QNX 1.44 Floppy Challenge. A full Operating System (QNX 4), a GUI, a Webbrowser and Webserver on one floppy disk. The network version supports three nic's: 3c509, ne2k and dec 21x4x. And it's quite fun to surf the net for a while with it, even though it's from about '98/'99. It's a bit hard to get, since QNX has stopped it's distribution, but it's available on the Ultimate Boot CD (&lt;a target="_new" href="http://www.ultimatebootcd.com"&gt;http://www.ultimatebootcd.com&lt;/a&gt;).</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#363058</link><pubDate>Sat, 29 Jan 2005 14:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:363058</guid><dc:creator>Shin</dc:creator><description>That's very useful information. Many thanks SvOlli</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#365765</link><pubDate>Wed, 02 Feb 2005 22:13:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:365765</guid><dc:creator>th2</dc:creator><description>Here's a question.  Why not emulate Intel graphics, so there can be Direct3D and OpenGL support as well (only the most basic of course...)?</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#366113</link><pubDate>Thu, 03 Feb 2005 08:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:366113</guid><dc:creator>Virtual PC Guy</dc:creator><description>Robert -&lt;br&gt;&lt;br&gt;The DEC 21140 chipset is an older chipset and as a result has better support for legacy platforms.&lt;br&gt;&lt;br&gt;Th2 - &lt;br&gt;&lt;br&gt;This comes back to the performance issue - and Intel graphics chipset is much more complex than the S3 Trio - and hence overall performance would be slower.&lt;br&gt;&lt;br&gt;Cheers,&lt;br&gt;Ben</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#366389</link><pubDate>Thu, 03 Feb 2005 18:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:366389</guid><dc:creator>eddie</dc:creator><description>As far as networks are concerned, I don't really mind which hardware is emulated.  Unfortunately, I cant find one that does 100-baseTX or Gbit.&lt;br&gt;&lt;br&gt;Any chance an upgrade?</description></item><item><title>re: Why we emulated the devices that we do?</title><link>http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/26/361361.aspx#372474</link><pubDate>Mon, 14 Feb 2005 19:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:372474</guid><dc:creator>Th2</dc:creator><description>Okay, if Intel Graphics is too much, then why not do an ATI MACH64?  Or perhaps an 8 MB Matrox Millenium card?  Why not emulate 3D graphics (Direct3D and OpenGL), so that legacy games will not run too fast in a modernized computer system?</description></item></channel></rss>