为什么64位操作系统不能运行16位应用程序?

为什么你的64位电脑不能运行旧的16位应用程序?下面是原因,再加上一些你可以使用的变通方法。...

一旦计算机开始使用现代的64位体系结构,用户很快就意识到运行那些旧的16位应用程序是行不通的。为什么64位机器不能运行16位应用程序?

16bit-apps-64bit-os

这个问题的答案可能会令人困惑,这取决于你问谁。首先,运行16位应用程序并非不可能。只是很难。其次,造成这种困难的原因在于CPU体系结构和操作系统。

困惑了吗?别担心,你并不孤单。但是当你读完这篇文章的时候,你就不会再困惑了。

cpu体系结构的历史

我知道,你最不想读的是历史课,对吧?别担心,这个很短。理解为什么64位系统不能以本机方式运行16位应用程序也很重要。

如果你生活在80年代和90年代,那么你可能还记得那些当时所有人都认为是尖端技术的16位恐龙。

why 64-bit can't run 16-bit applicati***

当时,是的。那些旧机器在1978年运行英特尔8086处理器。处理器能够使用16位寻址访问1Mb的地址空间。随着早期的计算机运行64KB的内存,这是一个巨大的进步,并标志着个人计算新时代的开始。

在这种模式下(称为实模式),一部分被保留给RAM,其余的被BIOS和计算机硬件(如图形卡)利用。

不久之后,80286处理器在CPU体系结构上又有了进一步的进步,能够使用16位寻址来寻址16Mb。286体系结构带来了“保护模式”,其特性不仅允许寻址更多内存,还允许多任务处理。在“实模式”下运行旧的16位应用程序并不总是那么容易,但这是可能的。

16位的结尾,有点。。。

1985年,英特尔推出了下一代处理器:英特尔386。这是英特尔的第一个CPU,它一次可以使用32位对内存进行寻址,并且可以访问高达4GB的可寻址内存。当时,这对电脑用户来说似乎是一个重大突破。PC游戏即将进入鼎盛时期。

why 64-bit can't run 16-bit applicati***

随着32位体系结构的出现,出现了保护模式的扩展版本,它不仅允许访问更多内存,而且还包括一组功能,软件可以向系统标记16位还是32位代码。这是由所谓的虚拟86模式实现的,它本质上是一个内置的虚拟8086系统。

正如您所看到的,从CPU体系结构的一个演变到下一个演进,硬件(CPU编程)和软件(操作系统和应用程序)都为所有那些仍然拥有非常旧软件的用户保持向后兼容性,这些用户仍然希望运行这些软件。对于个人电脑用户来说,这是有用的,但对于许多公司和小企业来说,这对于遗留系统来说是至关重要的。

64位体系结构毁了一切

4GB可寻址内存的限制多年来一直是32位系统的支柱。然而,随着64位处理器的发明又有了新的突破。这些系统包括一种新的模式(称为长模式),能够寻址多达1600万TB的内存。这可能需要很长时间才能成为计算机应用的限制因素。

然而,随着这一巨大进步,出现了一个重大的权衡。当用户试图运行需要长期支持的“实模式”或“虚拟8086模式”的16位应用程序时,他们发现一条错误消息,该错误消息如下:程序.exe不是有效的Win32应用程序。“

why 64-bit can't run 16-bit applicati***

这是令人沮丧的,但这不是世界末日。用户可以使用仿真器或安装运行32位体系结构的虚拟机和能够支持传统16位应用程序的操作系统。

因此,虽然64位系统“不可能”运行16位MS-DOS应用程序,但用户使用变通方法也并非不可能。但为什么会这样?

64位体系结构删除了ntvdm

多年来,在每一代32位处理器中,操作系统都投入了大量精力来处理较旧的16位DOS应用程序。它是使用NTVDM或NT虚拟DOS机器完成的。

这个32位应用程序在Windows操作系统中运行,模拟了一个486体系结构,能够使用虚拟8086处理16位寻址。不幸的是,“长模式”寻址不能安全地适应这种情况。相反,它需要模拟一个完整的8086处理器来支持运行DOS应用程序。

why 64-bit can't run 16-bit applicati***

微软显然决定放弃这一努力,以支持其第一个64位操作系统的迅速发布。在其支持页面上,微软明确表示“16位MS-DOS和Microsoft Windows 3.x实用程序将不会启动。”

不道歉。根本不支持。

市场上大量的虚拟化产品无论如何都能实现这一点,微软显然没有感觉到重新投资轮子对它的最大利益。

如何在64位系统上运行16位应用程序

仅仅因为64位Windows系统不支持运行16位DOS应用程序,这并不意味着这是不可能的。你只需要安装一些额外的工具就可以了。

如果你喜欢经典的DOS游戏或使用任何其他复古应用程序从良好的旧的计算,有选择。以下是四种方法,您可以在新的Windows计算机上运行它们。

1与do**ox玩复古游戏

在PC上运行旧的DOS应用程序最简单的方法之一就是使用模拟器。其中最流行的是DOSBox。

克里斯蒂安详细介绍了如何安装和配置DOSBox运行旧的复古游戏在您的Windows机器。

why 64-bit can't run 16-bit applicati***

最棒的是,这些游戏大多太旧了,被认为是废弃软件,所以你可以合法下载并免费玩。

2在virtualbox中运行应用程序

由于像windowsxp和windows7这样的操作系统可以在本机上运行16位的应用程序,因此您可以在64位系统上运行相同的应用程序,方法是在虚拟机上构建一个操作系统。

VirtualBox是最著名、最易于安装的应用程序之一。我们有一个关于如何设置和使用VirtualBox的完整指南,所以您现在就可以开始使用这种方法了。

why 64-bit can't run 16-bit applicati***

只要确保选择正确的操作系统安装。坚持使用Windows7或更早版本,您可以立即在虚拟系统上下载并安装旧的DOS应用程序。

三。使用linux

不管你怎么说Linux,大多数Linux发行版都有一点是正确的,那就是对16位应用程序的支持。使用PAE内核的发行版,您不局限于4GB的32位系统,因此在您的系统上运行适当的Linux发行版作为双引导是另一种选择。

why 64-bit can't run 16-bit applicati***

有两种选择:双引导解决方案或虚拟机。或者你可以完全抛弃Windows,然后使用Linux。任何对你有用的东西。

4使用模拟器

DOSBox并不是唯一可用于运行旧DOS应用程序的仿真器。有很多很好的仿真器也可以工作。如果你是一个游戏玩家,这一点尤其正确。

Christian已经介绍了如何在任何PC上模仿准将Amiga、Raspberry Pi、Android,甚至经典的SNES。

why 64-bit can't run 16-bit applicati***

这只是冰山一角。如果你在网上搜索,你会发现有一个不同的仿真器库,可以让你运行任何你能想象的复古应用程序。微软可能已经放弃了旧的16位应用程序,但你仍然有选择。

不要放弃16位

您没有理由认为在64位机器上运行16位应用程序是不可能的。这可能是不可能的,但正如你所看到的,有很多解决方案来完成这项任务。

  • 发表于 2021-03-26 10:39
  • 阅读 ( 265 )
  • 分类:IT

你可能感兴趣的文章

如何在linux上玩windows游戏

...行16位的应用程序。随着windows95的出现,Windows转向了32位操作系统,它仍然保持了与16位应用程序的向后兼容性。直到WindowsVista出现,提供64位版本的Windows,与16位应用程序的兼容性才中断。不过,Linux用户有一个很好的解决方案...

  • 发布于 2021-03-17 09:07
  • 阅读 ( 218 )

如何确保您的计算机可以运行Windows10

...您应该注意到这个问题。更新已经结束。如果没有更新,操作系统就会失去安全补丁。 ...

  • 发布于 2021-03-19 03:52
  • 阅读 ( 183 )

如何在64位pc上运行真正老的软件:6种方法

...玩你的老游戏。但是你知道DOSBox可以运行完整的windows3.1操作系统吗?Windows3.1基本上是一个很大的MS-DOS程序,这意味着它可以很好地与DOSBox仿真环境配合使用。 ...

  • 发布于 2021-03-21 15:52
  • 阅读 ( 256 )

32位和64位windows有什么区别?

...你就不能运行老式的16位软件。您将不得不转向模拟32位操作系统。 ...

  • 发布于 2021-03-22 08:49
  • 阅读 ( 240 )

为什么linux发行版会终止32位版本(这对您意味着什么)

...与硬件通信,以便利用这一差异。因此,虽然32位版本的操作系统可以在64位PC上运行,但它不能利用所有额外的电源。另一方面,64位版本的操作系统根本不能在32位PC上运行。 ...

  • 发布于 2021-03-24 17:24
  • 阅读 ( 476 )

为什么一些mac应用程序图标被划掉了?

...这会带来一定的安全风险。在某个时候,旧的应用程序或操作系统中的安全漏洞将不再被修补,这使得机器成为未来恶意软件的成熟目标。 在虚拟机中运行旧版本的macOS:由于虚拟化软件(如Parallels-Lite),可以在最新版本的macO...

  • 发布于 2021-04-01 17:19
  • 阅读 ( 326 )

为什么总是要安装64位windows

...的上网本和平板电脑。 带有64位CPU的计算机可以运行32位操作系统,但它们真的没有理由再这样做了。即使在64位操作系统上,也可以很好地运行32位应用程序。 为什么要安装64位版本 32位版本的Windows内存限制在4gb以内,这是一...

  • 发布于 2021-04-06 11:54
  • 阅读 ( 235 )

windows中的“program files(x86)”和“program files”文件夹有什么区别?

...:32位和64位Windows有什么区别? 最初,Windows只能作为32位操作系统使用。在32位版本的Windows上,甚至32位版本的windows10,今天仍然可用,您只能看到一个“C:\programfiles”文件夹。 此程序文件文件夹是建议您安装的程序存储其可执...

  • 发布于 2021-04-07 06:03
  • 阅读 ( 201 )

32位和64位windows有什么区别?

...2拥有64位处理器整整5年之久,消费者级的64位CPU和附带的操作系统甚至还没有出现在公众的视线中。 消费者对64位对他们意味着什么的困惑,以及**商对驱动程序支持不佳,严重阻碍了在21世纪的大部分时间里向64位PC的推进。2001...

  • 发布于 2021-04-07 17:25
  • 阅读 ( 227 )

为什么大多数程序在64位版本的windows上仍然是32位的?

...使你运行的每个应用程序都是32位的应用程序,运行64位操作系统仍然会更加安全可靠。 但是,那些应用呢?事情变得有点棘手了。首先要知道的是,64位版本的Windows可以运行32位的应用程序,但是32位版本的Windows不能运行64位...

  • 发布于 2021-04-07 17:26
  • 阅读 ( 196 )
kjzght73951
kjzght73951

0 篇文章

相关推荐