Virtual Control Program Interface
Das Virtual Control Program Interface bzw. kurz VCPI ist ein Standard für DOS-Extender, der von Phar Lap Software und Quarterdeck Office Systems in einem joint development agreement[1] ab 1987 gemeinsam entwickelt wurde.[2][3] VCPI benötigt einen 80386-kompatiblen x86-Prozessor.[4] VCPI wurde von den meisten DOS-Extendern übernommen und im April 1989 als Industriestandard akzeptiert[3], bevor es nach 1990 vom DOS Protected Mode Interface (DPMI) weitestgehend abgelöst wurde. Zur Wahrung der Kompatibilität mit bestehender DOS-Software unterstützen die meisten DOS-Extender weiterhin VCPI.
Entwicklung
[Bearbeiten | Quelltext bearbeiten]Quarterdeck nutzte für dessen grafischen Aufsatz für DOS, DESQview/386, den Speichermanager QEMM-386. Um auch in DESQview von den erweiterten Fähigkeiten des 80386 Gebrauch machen zu können, musste der DOS-Extender von Phar Lap fit für den Betrieb unter Multitasking-Bedingungen gemacht werden.[1]
Ab 1989 wurde daraus das Virtual Control Program Interface (VCPI), das auch von anderen DOS-Extendern als Industriestandard implementiert wurde. Per VCPI sind Protected-Mode-Programme untereinander kompatibel und können mit Speichermanagern wie 386Max und QEMM auch unter reinem DOS verwendet werden.[3]
Schwächen und Nachfolge
[Bearbeiten | Quelltext bearbeiten]Einer der Nachteile von VCPI ist, dass es nicht im 16-Bit-Protected-Mode des 80286 verwendet werden kann. Daher sind DOS-Extender wie DOS/16M nicht VCPI-kompatibel. Es ist auch nicht voll Multitasking-fähig und daher inkompatibel zum „386 Erweiterten Modus“ von Windows 3.x und Windows 9x.[5] Obwohl viele DOS-Programme, die einen DOS-Extender nutzen, Kompatibilität mit VCPI herstellten, wurde es ausgerechnet von Microsoft nicht unterstützt.[3]
Gerade als an einer zweiten VCPI-Generation gearbeitet wurde, „Extended VCPI“ (XVCPI), stellte Microsoft die erste Testversion von Windows 3.0 mit inkludiertem DPMI vor. Um eine Fragmentierung des DOS-Extender-Marktes zu verhindern gab Microsoft die Spezifikation von DPMI frei, woraufhin die Unterstützer von XVCPI zu DPMI überwechselten.[6]
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ a b Ed Scannell: Desqview update offers simultaneous program use. In: Computerworld. Band 11, Nr. 45, 9. September 1987, ISSN 0010-4841, S. 140 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “…Desqview/386 reportedly will be able to run 32-bit programs on the 80386 because it works with a 386-version of Phar Lap, Inc.’s DOS-Extender. Desqview/386 running Ansa Software Co.’s Paradox 386 data base along with other popular DOS-compatible programs at Comdex/Fall ’87. Paradox 386 is the first to use DOS-Extender. … Through a joint development agreement with Phar Lap, Quarterdeck has built into Desqview/386 the support necessary to run multiple 386/DOS-Extender programs simultaneously with DOS programs…”
- ↑ Byteweek, Band 2. In: Byteweek. Band 2. Byte Publications, 1989 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “… VCPI (Virtual Control Program Interface) was jointly developed by Phar Lap and Quarterdeck in 1987 …”
- ↑ a b c d Ray Duncan: Power Programming – An Introduction to The DOS Protected Mode Interface. In: PC Magazine. Band 10, Nr. 3. Ziff Davis, 12. Februar 1991, S. 365 ff., S. 366 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “VCPI was developed in 1987 by Phar Lap Software and Quarterdeck Office Systems with a fairly narrow objective: to allow 80386 protected-mode DOS extender applications coexist with 80386-specific memory managers and expanded memory (EMS) emulators such as Qualitas’s 386-to-the-Max and Quarterdeck Office Systems’s QEMM-386. In spite of (or because of) its limited goals, the VCPI was quite successful. It became an accepted industry standard in April 1989, and by 1990 virtually every 80386-specific software product on the market supported or was capable of using the VCPI interface—except for Microsoft’s products.”
- ↑ Marcus Johnson: PC Programmer's Guide to Low-level Functions and Interrupts. Sams Publishing, 1994, ISBN 0-672-30475-9, S. 889 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “VCPI (Virtual Control Program Interface) is an extension of EMS that provides a minimal set of services so that a 80386+ protected-mode master supervisor program can retain control of the system …”
- ↑ Ray Duncan: Power Programming – An Introduction to The DOS Protected Mode Interface. In: PC Magazine. Band 10, Nr. 3. Ziff Davis, 12. Februar 1991, S. 365 ff., S. 366 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “In the context of the problems it was design to solve, the VCPI works extremely well, but it is an inadequate platform for the multitasking of DOS extender applications. … Another, somewhat less important drawback of the VCPI is that it is fundamentally based on the concept of 80386 hardware paging and therefore can't be implemented on 80286 machines.”
- ↑ Ray Duncan: Power Programming – An Introduction to The DOS Protected Mode Interface. In: PC Magazine. Band 10, Nr. 3. Ziff Davis, 12. Februar 1991, S. 365 ff., S. 366 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “The creators of VCPI were well aware of its limitations and were already hard at work on a second generation specification called Extended VCPI (XVCPI), when Microsoft barged onto the scene with the beta-test versions of Windows 3.0 and its DPMI. For a few months, it appeared that the fledgling DOS extender market would fragment into two mutually exclusive directions … Luckily cooler heads prevailed. Microsoft turned control of the DPMI specification over to an industry committee with open membership, and the backers of the XVCPI effort decided to join forces behind the DPMI.”