Why a new VM is created when I start win32 console app which is supposed to run in a system VM?
Win32 PE Console Programs DO NOT run in a VM.
DOS programs only run in a DOS environment. The Virtual 8086 provided by 80x86 processors allows Windows a clean and safe way to be backward compatible with MZ executables and *.com binaries.
PE programs are loaded into a 4GB linear memory map. They access the Win32 API. When windows loads a PE console executalbe, it automatically creates a console window for it. A PE executable that is not a console app can use the Win32 API to Allocate a Console.
I recommend that you read:
• About The 80x86 modes of operation
• Iczelion's Tutorial
• Stuff on PE and MZ executables
• www.google.com
• Win32AsmCommunity Seach Feature
DOS programs only run in a DOS environment. The Virtual 8086 provided by 80x86 processors allows Windows a clean and safe way to be backward compatible with MZ executables and *.com binaries.
PE programs are loaded into a 4GB linear memory map. They access the Win32 API. When windows loads a PE console executalbe, it automatically creates a console window for it. A PE executable that is not a console app can use the Win32 API to Allocate a Console.
I recommend that you read:
• About The 80x86 modes of operation
• Iczelion's Tutorial
• Stuff on PE and MZ executables
• www.google.com
• Win32AsmCommunity Seach Feature