我意识到可能没有特殊的转换器程序或任何类似于此类任务的简单程序,但我必须找到一些
方法让16位程序在64位
Windows中运行.由于必须专用于它们的大量资源,仿真器将不是一个好的
解决方案.
我对这个项目的想法是从16位程序中反编译所有代码,复制它,并将其重新编译为64位代码.是否可以使用Eclipse或其他编程环境?
基本上,我想在不使用仿真器的情况下在64位Windows中运行16位程序.我意识到这是一项艰巨的任务,但可以想象吗?
问题不仅仅在于使用64位指令转换16位指令.程序使用ABI(应用程序二进制接口)与系统的其余部分进行通信.一个16位程序可能会使用大量的DOS
调用,并且它也不可能直接尝试访问硬件.这无法
自动翻译.即使存在这样的
解决方案,我也非常怀疑结果会比在虚拟机中运行更有效(实际上效率非常高).此外,为16位环境编写的程序通常不具有很大的可扩展性,并且完全无法处理超出原始目标平台容量的数据量.
所以我想说实际上只有两个现实的解决方案:在虚拟机中运行它.或者,如果没有削减它,从头开始编写一个新的应用程序来做同样的事情.
原文链接:https://www.f2er.com/windows/441250.html