Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:docs:mvm:index [2024/05/08 02:05] – prokushev | en:docs:mvm:index [2024/11/27 16:17] (current) – prokushev | ||
---|---|---|---|
Line 11: | Line 11: | ||
==== Virtual Device Drivers (VDD' | ==== Virtual Device Drivers (VDD' | ||
- | A VDD is like a plugin for MVM Server, and it can communicate with outside programs via request API (DosRequestVDD for OS/2 programs). On the other side, from the VM point of view, the VDD emulates some BIOS services/ | + | A VDD is like a plugin for MVM Server, and it can communicate with outside programs via request API (DosRequestVDD for OS/2 programs). On the other side, from the VM point of view, the VDD emulates some BIOS services/ |
- | Originally, the MV(D)M were used to emulate a 8086 machine with BIOS and DOS/Win 3.1. But now it is a trend for many OS'es to have the kernel virtual machines, like kvm in Linux or VirtualPC in WinNT. Our MVM personality is our solution of the same kind, but it not so monolithic like qemu/kvm -- it decomposed to several parts, in best IBM solutions design traditions. The VDD's are like plugins for MVM server, allowing to extend the MVM environment. They' | + | Originally, the MV(D)M were used to emulate a 8086 machine with BIOS and DOS/Win 3.1. But now it is a trend for many OS'es to have the kernel virtual machines, like kvm in Linux or VirtualPC in WinNT. Our MVM personality is our solution of the same kind, but it not so monolithic like qemu/kvm -- it decomposed to several parts, in the best IBM solutions design traditions. The VDD's are like plugins for MVM server, allowing to extend the MVM environment. They' |
Also, as we're told previously, to share the screen with OS/2 apps and apps of other personalities, | Also, as we're told previously, to share the screen with OS/2 apps and apps of other personalities, | ||
- | This is done with a special VDD's, like VVIDEO (VVGA, VSVGA, etc) implementiing | + | This is done with a special VDD's, like VVIDEO (VVGA, VSVGA, etc.) implementing |
For windowed WinOS/2 sessions, it existed the solution of using a so-called PM shield (seamless.dll) and WinOS/2 shield (winsheld.exe). The 1st one is an " | For windowed WinOS/2 sessions, it existed the solution of using a so-called PM shield (seamless.dll) and WinOS/2 shield (winsheld.exe). The 1st one is an " | ||
Line 31: | Line 31: | ||
==== The DOS emulation kernel (doskrnl) ==== | ==== The DOS emulation kernel (doskrnl) ==== | ||
- | The DOS emulation kernel is a special rehosted DOS kernel working via OS/2 (or PN ((Personality Neutral))) services. For example, file system API's of int 21h are implemented via OS/2 (or PN) file API's. Access to OS/2 API's done via [[en: | + | The DOS emulation kernel is a special rehosted DOS kernel |
==== Instruction Set Translator (IST) ==== | ==== Instruction Set Translator (IST) ==== | ||
Line 37: | Line 37: | ||
The IST is a DLL, emulating the instructions of Guest hardware via Host CPU instructions. It exports a set of entry points, each corresponding the emulated instruction. | The IST is a DLL, emulating the instructions of Guest hardware via Host CPU instructions. It exports a set of entry points, each corresponding the emulated instruction. | ||
- | The similar component | + | The similar component |
==== VM86 on Intel, and Hardware-assisted virtualization ==== | ==== VM86 on Intel, and Hardware-assisted virtualization ==== | ||
Line 51: | Line 51: | ||
==== Other kernels ==== | ==== Other kernels ==== | ||
- | It is possible to rehost other kernels, like CP/M-86, to MVM enviroment. It can be achieved via SVC interface, | + | It is possible to rehost |
==== API ==== | ==== API ==== |