Forwarded from Сычевальня в Желтой Комнате
Media is too big
VIEW IN TELEGRAM
Winlator
Сейчас вдруг внезапно появилось очень много разговоров о том, что на мобильниках научились запускать то, о чем раньше нельзя было даже помыслить - полноценные игры с ПК, включая тяжелые эмуляторы вроде RPCS3 (PS3). И дело тут не только в том, что многие современные телефоны уже в несколько раз производительнее чем домашние ПК 20-летней давности. Вам же наверняка интересно как это работает?
Если смотреть многочисленные туториалы по запуску Windows-игр на телефонах, то первым наверняка всплывёт проект Winlator. Но на самом деле он лишь верхушка айсберга.
Как вы возможно помните из моего ролика про Steam Deck, для более современных систем нет нужды прям до винтика эмулировать все части компьютера. Если у компьютеров одна и та же операционная система, то запуск программы сводится к трансляции инструкций одного процессора в другой. При этом даже большинство системных библиотек эмулировать не надо, ОС ведь та же самая, так что можно использовать родные библиотеки, заточенные под устройство, напрямую.
Именно такая ситуация и есть с Android и Linux, ведь в основе Android ядро Linux и серьёзная порция системных библиотек (libc?) просто та же. В общем первый слой, необходимый для запуска x86 и x64 программ на Android - это слой трансляции инструкций. Для macOS подобный слой называется Rosetta. А для Linux существует проект Box86 / Box64.
Это динамический рекомпилятор (или JIT-компилятор) инструкций x86/x64 в соответствующие инструкции ARM64. Примечательно что авторы смогли даже AVX2 транслировать. Графическую часть особо эмулировать не надо, если это совместимая версия OpenGL или Vulkan - мобильные устройства уже многое умеют.
Но так можно запустить только нативные Linux-приложения, к коим большинство игр не относится. И вот тут залетают проекты, которые также обсуждались в ролике - Wine и Proton. Это слои совместимости для запуска Windows программ на Linux. Только вот у них нет порта на ARM. Но почему б не запустить их через Box86 / Box64? Вот собственно этим и занимается Winlator.
То есть это не эмуляция в классическом понимании, а слой трансляции инструкций совмещенный со слоем совместимости. С некоторыми эмуляторами получается ещё веселее - динамический рекомпилятор инструкций какой-нибудь приставки на x86, написанный под Windows, запускается с помощью слоя совместимости для Linux, запущенного на динамическом рекомпиляторе x86 на ARM 😅
А знаете кто ещё подобным занимается? Microsoft! Как выяснили хакеры, обратная совместимость Xbox Original для Xbox One не была написана с нуля. Они запускают эмулятор Xbox Original для Xbox 360, а уже его запускают в эмуляторе Xbox 360 для Xbox One.
Но главное отличие в том, что Winlator, Wine и Box64 / Box86 - полностью открытые проекты под свободными лицензиями. Что не может не радовать.
#эмуляция #winlator #box86 #wine #теория
Сейчас вдруг внезапно появилось очень много разговоров о том, что на мобильниках научились запускать то, о чем раньше нельзя было даже помыслить - полноценные игры с ПК, включая тяжелые эмуляторы вроде RPCS3 (PS3). И дело тут не только в том, что многие современные телефоны уже в несколько раз производительнее чем домашние ПК 20-летней давности. Вам же наверняка интересно как это работает?
Если смотреть многочисленные туториалы по запуску Windows-игр на телефонах, то первым наверняка всплывёт проект Winlator. Но на самом деле он лишь верхушка айсберга.
Как вы возможно помните из моего ролика про Steam Deck, для более современных систем нет нужды прям до винтика эмулировать все части компьютера. Если у компьютеров одна и та же операционная система, то запуск программы сводится к трансляции инструкций одного процессора в другой. При этом даже большинство системных библиотек эмулировать не надо, ОС ведь та же самая, так что можно использовать родные библиотеки, заточенные под устройство, напрямую.
Именно такая ситуация и есть с Android и Linux, ведь в основе Android ядро Linux и серьёзная порция системных библиотек (libc?) просто та же. В общем первый слой, необходимый для запуска x86 и x64 программ на Android - это слой трансляции инструкций. Для macOS подобный слой называется Rosetta. А для Linux существует проект Box86 / Box64.
Это динамический рекомпилятор (или JIT-компилятор) инструкций x86/x64 в соответствующие инструкции ARM64. Примечательно что авторы смогли даже AVX2 транслировать. Графическую часть особо эмулировать не надо, если это совместимая версия OpenGL или Vulkan - мобильные устройства уже многое умеют.
Но так можно запустить только нативные Linux-приложения, к коим большинство игр не относится. И вот тут залетают проекты, которые также обсуждались в ролике - Wine и Proton. Это слои совместимости для запуска Windows программ на Linux. Только вот у них нет порта на ARM. Но почему б не запустить их через Box86 / Box64? Вот собственно этим и занимается Winlator.
То есть это не эмуляция в классическом понимании, а слой трансляции инструкций совмещенный со слоем совместимости. С некоторыми эмуляторами получается ещё веселее - динамический рекомпилятор инструкций какой-нибудь приставки на x86, написанный под Windows, запускается с помощью слоя совместимости для Linux, запущенного на динамическом рекомпиляторе x86 на ARM 😅
А знаете кто ещё подобным занимается? Microsoft! Как выяснили хакеры, обратная совместимость Xbox Original для Xbox One не была написана с нуля. Они запускают эмулятор Xbox Original для Xbox 360, а уже его запускают в эмуляторе Xbox 360 для Xbox One.
Но главное отличие в том, что Winlator, Wine и Box64 / Box86 - полностью открытые проекты под свободными лицензиями. Что не может не радовать.
#эмуляция #winlator #box86 #wine #теория
👍1🔥1🙏1
Forwarded from DTF
Фильм-катастрофа «Смерч 2» показал неожиданно мощный дебютный уикенд в прокате США.
У него лучшие стартовые сборы среди картин жанра, и в 2024 году лучше начинали только «Головоломка 2» и «Дюна 2».
https://dtf.ru/cinema/2837137
У него лучшие стартовые сборы среди картин жанра, и в 2024 году лучше начинали только «Головоломка 2» и «Дюна 2».
https://dtf.ru/cinema/2837137
Forwarded from кколобковость 🫵🤣 (Lоvе)
пацыки, займите 40к пж... мне не хватает на НОВЫЕ ГОЛОСА СУКА ДУРОВ ТЫ ОПЯТЬ ПОШЕЛ НЕ ТУДА НАХУЙ КАКИЕ ♣️ ЗВОЗДЫ СУКА ЕЩЕ РЕЙТИНГ ВЬЕБИ
Forwarded from кколобковость 🫵🤣 (Lоvе)
я затерпел сторисы, я затерпел прем, я затерпел ЕБУЧИЕ СБОИ МИНИМУМ 1-2-3 РАЗА В МЕСЯЦ — ХУЙ С НИМИ, но БЛЯТЬ, сраные ГОЛОСА?????????
жду ПОДАРКИ НАХУЙ БУДЕМ ДРУГ ДРУГУ ДАРИТЬ С ПРИПИСАННЫМИ АНЕКДОТАМИ ДА СУКА
жду ПОДАРКИ НАХУЙ БУДЕМ ДРУГ ДРУГУ ДАРИТЬ С ПРИПИСАННЫМИ АНЕКДОТАМИ ДА СУКА
🙏2
Forwarded from кколобковость 🫵🤣 (Lоvе)
вместо рейтинга ж можно ОЦЕНКИ ВЫСРАТЬ ПАШОК ДАВАЙ ДУМАЙ
https://www.youtube.com/watch?v=uYB2Mqs24ss
ПОЧЕМУ СЕЙЧАС НЕ ДЕЛАЮТ ТАКИХ ПРИКОЛЬНЫХ КЛИПОВ
ПОЧЕМУ СЕЙЧАС НЕ ДЕЛАЮТ ТАКИХ ПРИКОЛЬНЫХ КЛИПОВ
YouTube
Metronomy - A Thing For Me (Official Video)
The Greatest Hits & BBC Sessions out 5 Sept: https://Metronomy.lnk.to/GreatestHitsyo
Taken from our album 'Nights Out': https://Metronomy.lnk.to/NightsOutyo
Join the mailing list: https://Metronomy.lnk.to/SignUpYo
Listen to more Metronomy: https://Metro…
Taken from our album 'Nights Out': https://Metronomy.lnk.to/NightsOutyo
Join the mailing list: https://Metronomy.lnk.to/SignUpYo
Listen to more Metronomy: https://Metro…