gpt4 book ai didi

.net - 用于 .NET 的轻量级 x86 模拟器/在托管环境中执行 x86 代码

转载 作者:行者123 更新时间:2023-12-02 08:44:46 25 4
gpt4 key购买 nike

我们公司正在将其整个产品线从 C++ 代码库迁移到 .NET Framework。我们拥有非常庞大的代码库,并且这种迁移是在多年来逐步完成的。

我们希望享受纯托管代码(例如 Silverlight)的一些好处,但是有许多遗留的 C++/x86 模块需要时间让我们移植到 .NET。

我们的一个解决方案是将这些模块加载到在 .NET Framework 中的小型内存沙箱中运行的轻量级 x86 模拟器中。这将使我们能够调用旧版 x86 DLL 代码,同时维护纯托管应用程序。

有人知道这样的项目吗?

真诚的,

最佳答案

我不知道有哪个项目可以实现这一点。

话虽如此,我认为无论如何这都不是一个现实的期望。使用 native 代码不仅仅是能够运行 x86 指令。

更大的问题是关于库代码的利用。这不会移植到模拟器中,因为模拟器可能不仅需要实现 x86 指令,还需要模拟 Windows API 等。

如果 native 代码只是纯数字代码,则移植它可能比在模拟器下测试它更容易。如果它是使用库的复杂代码,我认为这实际上不起作用,即使存在这样的模拟器。

我只会关注您需要真正纯粹管理的功能,并尝试将其迁移。 C++/CLI 使这一过程变得更简单(假设您的 native 代码是 C++ 语言),因为您始终可以在启用 /clr:pure 的情况下尝试一次编译一个文件,然后根据需要修复错误。

对于不需要 100% 托管的事物,C++/CLI 中的互操作是一个很好的垫脚石,直到您可以移植代码库。

关于.net - 用于 .NET 的轻量级 x86 模拟器/在托管环境中执行 x86 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1411311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com