Q

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?
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

Dig deeper on 64-bit Architecture for Windows

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

0 comments

Oldest 

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:

SearchServerVirtualization

SearchCloudComputing

SearchExchange

SearchSQLServer

SearchWinIT

SearchEnterpriseDesktop

SearchVirtualDesktop

Close