Jump to content

Уровень совместимости

В разработке программного обеспечения уровень совместимости — это интерфейс, который позволяет двоичные файлы запускать устаревшей или сторонней системы на хост-системе. Это преобразует системные вызовы для сторонней системы в собственные системные вызовы для хост-системы. При использовании некоторых библиотек для сторонней системы этого часто бывает достаточно для запуска сторонних двоичных файлов в хост-системе. Уровень совместимости оборудования состоит из инструментов, позволяющих эмулировать оборудование .

Программное обеспечение [ править ]

Примеры включают в себя:

  • Hybris , библиотека, которая переводит Bionic в вызовы glibc.
  • Darling — уровень перевода, который пытается запускать двоичные файлы Mac OS X и Darwin в Linux.
  • Подсистема Windows для Linux v1, которая запускает двоичные файлы Linux в Windows через уровень совместимости, который преобразует системные вызовы Linux в собственные системные вызовы Windows.
  • Cygwin POSIX -совместимая среда, которая изначально работает в Windows. [2]
  • 2ine — проект для запуска приложений OS/2 в Linux. [3]
  • Rosetta 2 уровень трансляции Apple , входящий в состав macOS Big Sur, позволяющий запускать эксклюзивные приложения x86-64 на оборудовании ARM.
  • ACL позволяет приложениям Android запускаться на телефонах Tizen, webOS или MeeGoo. [4] [5] [6]
  • Alien Dalvik позволяет приложениям Android работать на MeeGo [7] и Меамо. [8] Alien Dalvik 2.0 также был представлен для iOS на iPad, однако, в отличие от MeeGo и Meamo, эта версия запускалась из облака. [9] [10] [11]
  • TouchHLE — это уровень совместимости (называемый «эмулятором высокого уровня») для Windows и macOS, созданный Андреа «hikari_no_yume» (Швеция) в начале 2023 года для запуска устаревшего 32-разрядного программного обеспечения iOS. Уровень совместимости позволял запускать только одно программное обеспечение — Super Monkey Ball версии 0.1.0. ​​поддержка облегченной версии Super Monkey Ball, а также Crash Bandicoot Nitro Kart 3D и Touch & Go . Начиная с версии 0.1.2 добавлена [12] Она говорит, что фанатам придется «набраться терпения», чтобы чему-то еще можно было подражать. При необходимости она использует трансляцию кода вместе с эмуляцией ЦП и особо заявляет, что не хочет быть совместимой с 64-битным программным обеспечением. [13] Позже был выпущен запрос на добавление поддержки Android, который позволил устройствам Android запускать Super Monkey Ball для iOS. [14]
  • ipasim — это уровень совместимости для Windows, который использует WinObjC для перевода кода из Objective C в собственный код Windows. [15]
  • aah (так в оригинале) — это программа для macOS для запуска приложений iOS на macOS 10.15 «Catalina» на процессорах x86 посредством трансляции программ через платформу Catalyst . [16]
  • brs-emu — это уровень совместимости для запуска программного обеспечения Roku через BrightScript на других платформах: Web, Windows, macOS и Linux. [17]

Уровень совместимости в ядре :

  • Уровень совместимости FreeBSD с Linux , который позволяет двоичные файлы, созданные специально для Linux. запускать на FreeBSD [18] так же, как и собственный уровень API FreeBSD. [19] FreeBSD также имеет некоторые эмуляции Unix-подобных систем, включая NDIS, NetBSD, PECoff, SVR4 и различные версии FreeBSD для ЦП. [20]
  • NetBSD имеет несколько эмуляций Unix-подобных систем. [21]
  • Columbia Cycada , неизданный уровень совместимости, который запускает приложения Apple iOS на Android . системах
  • Подсистема Windows для Linux предоставляет Linux -совместимый интерфейс ядра, разработанный Microsoft. [22]
  • Проект PEACE (также известный как COMPAT_PECOFF) имеет Win32-совместимый уровень для NetBSD. Сейчас проект неактивен.
  • В RSTS/E для PDP-11 серии миникомпьютеров программы, написанные для работы в операционной системе RT-11, могли запускаться (без перекомпиляции) на RSTS через систему времени выполнения RT-11 с установленным флагом EMT, что означает, что RT-11 Инструкция EMT , соответствующая RSTS EMT, перенаправляется в систему времени выполнения RT-11, которая преобразует их в эквивалентный RSTS EMT. Программы, написанные для непосредственного использования преимуществ RSTS (или вызовов RSTS внутри самой системы времени выполнения), сигнализируют об этом, имея вторую инструкцию EMT (обычно EMT 255) непосредственно перед фактическим кодом RSTS EMT.

Уровень совместимости позволяет избежать как сложности, так и снижения скорости полной аппаратной эмуляции . Некоторые программы могут работать даже быстрее, чем оригинал, например, некоторые приложения Linux, работающие на уровне совместимости FreeBSD с Linux, могут работать лучше, чем те же приложения в Red Hat Linux. Время от времени на Wine запускаются тесты производительности для сравнения его с операционными системами на базе Windows NT. [23]

Даже в подобных системах детали реализации уровня совместимости могут быть весьма сложными и хлопотными; Хорошим примером является IRIX уровень двоичной совместимости архитектурой MIPS с в версии NetBSD . [24]

Уровень совместимости требует, чтобы ЦП хост-системы был (вверх) совместим с процессором сторонней системы. Например, уровень совместимости с Microsoft Windows невозможен на оборудовании PowerPC , поскольку для Windows требуется процессор x86 . В этом случае необходима полная эмуляция.

Аппаратное обеспечение [ править ]

Уровни совместимости оборудования включают инструменты , позволяющие эмулировать оборудование . Некоторые уровни совместимости оборудования включают коммутационные коробки , поскольку коммутационные коробки могут обеспечить совместимость с определенными компьютерными шинами , которые в противном случае несовместимы с машиной.

См. также [ править ]

Ссылки [ править ]

  1. ^ Чарли Рассел, Microsoft MVP для Windows Server и Tablet PC (18 февраля 2002 г.). «Совместимость приложений в Windows XP» .
  2. ^ «Сигвин» . www.cygwin.com . Проверено 23 ноября 2019 г.
  3. ^ «Проект: 2ine | Патреон» .
  4. ^ «На ОС Tizen будут работать приложения Android — с небольшой помощью стороннего программного обеспечения (Видео)» .
  5. ^ «OpenMobile ACL для webOS возрожден на Kickstarter, мы надеемся перенести приложения Android на HP Touchpad» .
  6. ^ «OpenMobile демонстрирует ACL для MeeGo, обещает 100-процентную совместимость с приложениями Android (Видео)» .
  7. ^ «Множество «Alien Dalvik» запускают приложения Android на любом телефоне... Начиная с MeeGo (Видео)» .
  8. ^ «Практическое занятие по Myriad Alien Dalvik (Видео)» .
  9. ^ «Запуск приложений Android на iPad с помощью Alien Dalvik от Myriad» . Ютуб .
  10. ^ «Практическое знакомство с Alien Dalvik 2.0 от Myriad на iPad (видео)» .
  11. ^ «Приложения Android для запуска на iPad с Alien Dalvik 2.0» .
  12. ^ «TouchHLE: высокоуровневый эмулятор приложений для iPhone OS» . Гитхаб .
  13. ^ «Высокоуровневый эмулятор iOS touchHLE работает на Windows и Mac и призван сохранить старые игровые приложения для iOS» .
  14. ^ «Разработчик портирует эмулятор iOS на Android, но вам не стоит из-за этого волноваться» . 24 апреля 2023 г.
  15. ^ Йонеш, январь (27 июня 2019 г.). «Эмулятор iOS для Windows» . hdl : 20.500.11956/108316 .
  16. ^ «Ааа» . Гитхаб .
  17. ^ «BRS-EMU: Эмулятор BrightScript» . Гитхаб .
  18. ^ «Эмуляция Linux во FreeBSD» .
  19. ^ «Эмуляция» . freebsd.org . Проверено 16 марта 2014 г.
  20. ^ «Взгляд внутрь…» freebsd.org . Проверено 16 марта 2014 г.
  21. ^ «Двоичная эмуляция NetBSD» . netbsd.org . Проверено 16 марта 2014 г.
  22. ^ «Сравнение WSL 1 и WSL 2» . 20 марта 2023 г.
  23. ^ BenchMark-0.9.5. Архивировано 9 декабря 2010 г. на Wayback Machine - Официальная Wine Wiki.
  24. ^ Эммануэль Дрейфус (8 августа 2002 г.). «Двоичная совместимость IRIX, часть 1» . onlamp.com. Архивировано из оригинала 21 октября 2017 г. Проверено 16 марта 2014 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2caa20d66fcd4bb6da6d7ca00e0a3464__1709990400
URL1:https://arc.ask3.ru/arc/aa/2c/64/2caa20d66fcd4bb6da6d7ca00e0a3464.html
Заголовок, (Title) документа по адресу, URL1:
Compatibility layer - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)