هر کاربر یک برنامه (Conversational Monitor System) مخصوص به خود را دارد که یک سیستم عامل تک کاربره محاوره‌ای است.
مزایای این ماشین مجازی عبارتند از:
- در این سیستم دو وظیفه اصلی چند برنامگی و ایجاد واسطه راحت (مستقل از سخت افزار ) از یکدیگر مجزا شده‌اند. مانیتور ماشین مجازی وظیفه چند برنامگی را بر عهده داردو لایه‌ بالای آن وظیفه ایجاد واسطه کاربر با سخت افزار را بر عهده دارد. لذا هریک از این بخشها ساده‌تر شده و از قابلیت انعطاف بیشتری برخوردارند.
- هر ماشین مجازی از سایر ماشین ها کاملاً جداست . بنابراین هیچ مشکل امنیتی وجود نخواهد داشت و برنامه‌های کاربران تداخلی با همدیگر ندارند.
- از آنجا که هر ماشین مجازی کاملاً مشابه سخت افزار واقعی است، هر یک از آنها می‌توانند هر سیستم عاملی را مستقلاً اجراء کند. این امر همچنین باعث می‌شود مراحل تحقیق و توسعه سیستم عاملها راحت تر صورت بگیرد،چرا که دیگر سازندگان سیستم عامل برای تست کردن سیستم عامل تولیدی جدید لازم نیست کل کامپیوتر را در اختیار داشته باشند.
ایده ماشین‌های مجازی امروزه نیز جهت رفع مشکلات عدم سازگاری گسترش زیادی یافته است. به عنوان مثال شرکتهای میکروسیستم یا شرکت DEC که کامپیوترهای غیر intel را می‌سازند مایلند که مشتریهایشان بتوانند برنامه های DOS ( تحت intel) را نیز اجراء کنند. برای این کار یک ماشین مجازی اینتل بر روی پردازنده خودپدید می‌آورند. در این حال ماشین مجازی دستورات اینتل را به دستورات پردازنده جدید تبدیل می‌کند. یا مثلاً کامپیوتر power PC شامل ماشین مجازی Motorola 6800 می‌باشد.
مثال دیگر اجراء شدنDOS تحت محیط ویندوز است,پردازنده‌های 386 به بعد دارای یک مد مجازی هستند. که می‌توانند چندین برنامه تحت DOS تحت ویندوز نیز اجراء شوند البته به شرطی که دستورالعملهای عادی را اجراء کنندو مستقیماً با پورتهای مهم سر و کار نداشته باشند. مثال دیگر از این مفهوم ماشین مجازی زبان جاوا (Java ) می‌باشد. کامپایلر زبان جاوا توسط شرکت sun طراحی شده است یک خروجی بایت کد (byte code) تولید می‌کند. این بایت کدها دستوراتی هستند که بر روی ماشین مجازی جاوا (JVM) اجراء می‌شوند. جهت اجرای برنامه‌های جاوا در یک ماشین , آن کامپیوتر می‌بایست دارای یک JVM باشد. امروزه JVM بر روی بسیاری از انواع کامپیوترها از جمله PC، مکینتاش، SUN مینی کامپیوترها و . مین فریم ها (mainframe) وجود دارد. JVM همچنین در Microsoft Explorer ویندوز پیاده سازی شده است. بدین ترتیب برنامه‌هایی که به زبان Java نوشته شده‌اند به راحتی بر روی انواع کامپیوترها اجراء می‌شوند. فقط کافی است بایت کدها را روی آن، ماشین کامپایل کرد. بدیهی است به علت نیاز به کامپایل شدن بایت کدها برنامه های جاوا سرعت کمتری نسبت به برنامه‌هایی نظیرC دارد. برنامه هایC توسط کامپایلر بومی یک کامپیوتر، برای یک بار تبدیل به زبان ماشین آن کامپیوتر می‌گردد. پس خروجی زبان ماشین کامپایلر Cاز یک نوع کامپیوتر به کامپیوتر دیگر متفاوت است ولی بایت کدهای خروجی جاوا برای همه ماشین ها یکسان است.