Ask the Expert

What's the difference between 16 bit and 32 bit memory addressing?

Could you possibly outline the difference between 16 bit and 32 bit memory addressing and explain how older 16 bit programs work on modern 32bit operating systems?

    Requires Free Membership to View

Whole books can be written on topics like this. Basically, what Windows 2000 does is implement a complete virtual machine (VM) in NTVDM.EXE (NTVDM == NT Virtual DOS Machine). That provides the loader and executer for the 16-bit programs. Unlike cross machine VMs, NTVDM is a little simpler in that it does not have to provide the execution engine because it can just pass the instructions right on to the CPU to execute. From what I gather in talks with people on the Windows team at Microsoft, NTVDM is essentially a complete copy of Windows 3.1.

This was first published in October 2001

There are Comments. Add yours.

TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: