这和微软 Windows 操作系统的发展历史有关 .Win 16 就是说操作系统是16位的(一个字16bit) ,Win 32就是说操作系统是32位的(一个字32bit) .在80286以前是基于Win 16的 .以成为历史了 .在Win 16内存模式下 ,所有的应用程序都运行于同一个4GB 的地址空间 ,他们彼此看到别的程序的内容 ,这极易导一个应用程序破坏另一个应用程序 ,甚至是操作备闷系统的数据和代码 ,在Win 16模式下把代码分成DATA ,CODE 等 .在Win 32模式下 ,Windows 把每一个 Win32 应用程序放到分开的虚拟地址空间中去运行,也就是说每一个应用程序都拥有裂滚团其相互独立的 4GB 地址空间,当然这倒不是说它们都拥有 4GB 的物理地址空间,而只是说能够在 4GB 的范围内寻址。操作系统将会在应肆橘用程序运行时完成 4GB 的虚拟地址和物理内存地址间的转换。WIN32 只有一种内存模式,即 FLAT 模式,意思是"平坦"的内存模式,再没有 64K 的段大小限制,所有的 WIN32 的应用程序运行在一个连续、平坦、巨大的 4GB 的空间中。这同时也意味着您无须和段寄存器打交道,您可以用任意的段寄存器寻址任意的地址空间,这对于程序员来说是非常方便的,这也使得用32位汇编语言和用C语言一样方便。
相关文章
-
怎么还原被Adware.Win32.Agent.cmd改成EXE格式的照片文件夹?
2023-11-10 15:38 阅读(591) -
backdoor.win32.hupigon.frtj是什么
2023-10-09 21:24 阅读(564) -
RootKit.Win32.agent.bgib是什么病毒
2023-08-19 10:37 阅读(566)