Why Int 4Bh?

Int 4B Section of Ralf Brown's Interrupt List HTML Version - Release 61
pw0519.exe Virtual DMA Services (VDS)
vds.exe Virtual DMA Services (VDS) Version 1.00 spec from Microsoft

   I was tripping out with Jolt, and I ran into the Virtual DMA Services (VDS). After I picked myself up, I read that IBM needed to control DMA with busmasters, and it had to use Int 4Bh.
   Remember at the time that the AT bus could NOT reliably perform the busmaster functions. (well, it could, but there was no stampede of developers.)
   Finally the use of Int 4Bh makes sense, why would IBM tie a bunch of things to what the rest of the world didn't care about?
   Because reliable busmaster operation depends on VDS. The circle is complete. I have self-actualized. I can divide by zero. I can write in Sanskrit.

   A reading from a book of the Holy, "The Undocumented PC", Frank Van Gilluwe, Addison-Wesley, Reading, MA, 1994, ISBN 0-201-62277-7. VDS starts on 851, goes to 852.

   "A major problem occurs with the DMA translation method just discussed if an adapter card provides its own DMA controller, commonly referred to as a busmaster DMA controller. The virtual memory manager only has knowledge of the two DMA controllers on the motherboard.
   Fortunately, the problem was detected early on by IBM when adding SCSI support to the PS/2 line. They developed the Virtual Device Standard (VDS) as the solution.
   VDS is a set of Int 4Bh functions provided by the VDS implementor (the memory manager) to communicate the physical and virtual relationships to the busmaster DMA's driver."

   Further, "All of the major memory managers, like 386Max, Memory Commander, QEMM, and the versions of EMM386 provided with DOS 5 and later all provide VDS support. So does the Windows enhanced mode virtual DMA Device (VDMAD) VxD."

Supposedly, the full VDS spec is free and available from Microsoft and IBM Virtual DMA Services, ver 1.00 (no date), Redmond, WA Microsoft Corp. Part #098-10869, 25 pages.

Tim Clarke sez:
   It's also in the PDF of the PC & PS/2 BITR (BIOS Interface Tech. Ref.) on the PW CD, if you want more info. Specifically, in ps2bios2.pdf, physical page 157 (2-IN4B-1).

I finish things up with:
   Karen Hazzah's book Writing Windows VxDs and Device Drivers, (second edition), R&D Publishing, ISBN 0-87930-438-3, cover price $49.95. She explains how to setup and manage DMA transfers, amongst other topics. Her articles in Windows Developer Journal may also be of interest.


9595 Main Page