兼容层
讓舊版或外部系統可以在宿主系統上執行程式的介面。這會將外部系統的系統呼叫翻譯為宿主系統的原生系統呼叫
(重定向自相容層)
在软件工程领域,兼容层是一个允许面向旧或异质系统的二进制文件运行在特定主机系统上的接口。这意味着将面向异质系统的系统调用转换为面向主机系统。有些函式庫会面向异质系统,这通常是为主机系统提供运行异质二进制文件的能力。而硬件兼容层工具允许硬件仿真。
软件编辑
一些例子:
- Wine,允许在类Unix系统上使用一个程序加载器和是现在DLL中的Windows API运行部分微软Windows二进制文件。
- Windows的应用程序兼容层(Application Compatibility Toolkit)能尝试运行编写拙劣或者为早期平台编写的应用程序。[1]
- Lina,在Windows、Mac OS X和类Unix系统上以原生外观和体验运行某些Linux二进制文件。
- KernelEx,在Windows 98/Me运行Windows 2000/XP程序。
- Executor,在Windows、Mac OS X和Linux中运行基于68k的“经典”Mac OS程序。
- Columbia Cycada,在Android系统上运行Apple iOS程序。
- Hybris,转换Bionic到glibc调用的函数库。
- Darling,在Linux上尝试运行Mac OS X和Darwin二进制文件的转换层。
- 内核中的兼容层
- FreeBSD的Linux兼容层,允许专为Linux构建的二进制文件在FreeBSD以与原生FreeBSD API层相同的方法运行[2][3]FreeBSD还有一些类Unix系统的仿真,包括NDIS、NetBSD、PECoff、SVR4和FreeBSD对不同CPU的版本。[4]
- NetBSD有一些类Unix系统仿真。[5]
- Mach和Darwin二进制文件兼容,为NetBSD/powerpc和NetBSD/i386 (页面存档备份,存于互联网档案馆)。
- Windows Subsystem for Linux提供一个Linux兼容的内核接口,微软开发它并且不包含Linux代码,Ubuntu用户模式二进制文件运行在它上面。[6]
- PEACE项目(也称COMPAT_PECOFF)为NetBSD提供Win32兼容层。此项目目前不活跃。
一个兼容层可以避免完全硬件仿真的复杂性和速度损失,某些程序更可能比原来运行更快。例如,某些Linux应用程序运行在FreeBSD的Linux兼容层上时,有时有可能会原运行在红帽Linux上更快;运行在Wine上的性能基准偶尔也可以比拟它在Windows操作系统的运行效率。[7]
即使在类似的系统上,实现一个兼容层的细节也可能是相当复杂和麻烦;一个好例子是在NetBSD MIPS架構版本中的IRIX二进制兼容层。[8]
兼容层需要主机系统的CPU能(向上)兼容异质系统。举例来说,微软Windows的兼容层不可能在PowerPC硬件上运行,因为Windows需要x86的CPU;对于这种情况,只能进行完全仿真。
硬件编辑
参见编辑
- Hypervisor
- 半虚拟化
- 仿真器
- 跨平台虚拟化
- 系统平台
- Shim
参考资料编辑
- ^ Charlie Russel, Microsoft MVP for Windows Server and Tablet PC. Application Compatibility in Windows XP. 2002-02-18 [2016-06-14]. (原始内容存档于2006-12-06).
- ^ Linux emulation in FreeBSD. [2016-06-14]. (原始内容存档于2020-08-01).
- ^ Emulation. freebsd.org. [2014-03-16]. (原始内容存档于2020-08-01).
- ^ A look inside.... freebsd.org. [2014-03-16]. (原始内容存档于2020-08-01).
- ^ NetBSD Binary Emulation. netbsd.org. [2014-03-16]. (原始内容存档于2020-10-29).
- ^ BASH Running in Ubuntu on Windows - MSDN. [2016-06-14]. (原始内容存档于2017-11-30).
- ^ BenchMark-0.9.5 (页面存档备份,存于互联网档案馆) - The Official Wine Wiki
- ^ Emmanuel Dreyfus. IRIX Binary Compatibility, Part 1. onlamp.com. August 8, 2002 [2014-03-16]. (原始内容存档于2017-10-21).
外部链接编辑
- Windows XP应用程序兼容技术(英文)(微软公司Dave Morehouse和Todd Phillips,2001年6月1日)
🔥 Top keywords: Baike: 首页Special:搜索胖猫跳江事件背着善宰跑九龍城寨之圍城逆天奇案2璩静淚之女王歌手2024Energy (組合)新生 (网络剧)习近平匈牙利邊佑錫劉俊謙 (香港)金智媛神耆小子塞尔维亚金秀賢 (男演員)母亲节猩球崛起:王國誕生九龍寨城馴鹿寶貝家族榮耀之繼承者Seventeen (組合)六四事件不夠善良的我們张维为楊佩潔TripleS支配物种庆余年郭葦昀洪若潭命案金惠奫2024年英雄联盟季中邀请赛春色寄情人BABYMONSTER笑看風雲乘風2024排球少年!!角色列表破墓徐巧芯中华人民共和国中華民國打天下2WIND BREAKER—防風少年—习明泽排球少年!!彭丽媛磁暴ILLIT贾斯汀·比伯逆天奇案BOYNEXTDOOR猿人爭霸戰:猩凶革命張書偉我的婆婆怎麼那麼可愛我獨自升級怪獸8號謝坤達IVE (組合)與鳳行關於我轉生變成史萊姆這檔事角色列表黃道十二宮福建號航空母艦虽然不是英雄葉乃文五月天張員瑛草榴社区張文傑2024年花蓮地震极光香緹·摩爾迷宮飯呂家愷搜查班長1958日本劉德華海莉·鮑德溫蕭景鴻越位 (足球)葬送的芙莉蓮周處除三害 (電影)毛泽东願榮光歸香港林峯周雨彤伍允龍羅毓儀香港Baike: 分類索引沒有秘密猩球崛起:終極決戰角質層唐振剛柯佳嬿文化大革命