The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Первый выпуск Blink, высокопроизводительного эмулятора систем x86-64

05.06.2023 09:34

Опубликован первый значительный выпуск проекта Blink, развивающего эмулятор процессоров x86-64, позволяющий запускать статически и динамически собранные Linux-приложения в виртуальной машине с эмулируемым процессором. При помощи Blink cобранные для архитектуры x86-64 Linux-программы можно запускать в других POSIX-совместимых операционных системах (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin) и на оборудовании с другой аппаратной архитектурой (x86, ARM, RISC-V, MIPS, PowerPC, s390x). Код проекта написан на языке Си (ANSI C11) и распространяется под лицензией ISC. Из зависимостей требуется только libc (POSIX.1-2017).

По функциональности Blink напоминает команду qemu-x86_64, но отличается от QEMU более компактным исполнением и значительным приростом производительности. Например, исполняемый файл Blink занимает всего 221 КБ (при урезанной сборке - 115 КБ) вместо 4 МБ у qemu-x86_64, а по производительности в некоторых тестах, таких как запуск в эмуляторе GCC и выполнение математических операций, обгоняет QEMU примерно в два раза.

Для обеспечения высокой производительности применяется JIT-компилятор, на лету преобразующий исходные инструкции в машинный код для целевой платформы. Поддерживается прямой запуск в эмуляторе исполняемых файлов в форматах ELF, PE (Portable Executables) и bin (Flat executable), собранных со стандартными Си-библиотеками Cosmopolitan, Glibc и Musl. Реализована встроенная поддержка 180 системных вызовов Linux и эмуляция около 600 процессорных инструкций x86, охватывающих наборы инструкций i8086, i386, SSE2, x86_64, SSE3, SSSE3, CLMUL, POPCNT, ADX, BMI2 (MULX, PDEP, PEXT), X87, RDRND, RDSEED и RDTSCP.

Дополнительно на базе Blink разрабатывается утилита blinkenlights, предоставляющая интерфейс для визуализации хода выполнения программы и анализа содержимого памяти. Утилита может применяться в качестве отладчика, поддерживающего режим реверсивной отладки (Reverse-Debugging) и позволяющего перемещаться назад в истории выполнения и возвращаться к уже ранее выполненной точке. Проект развивает автор таких разработок, как Си-библиотека Cosmopolitan, порт механизма изоляции pledge для Linux и система универсальных исполняемых файлов Redbean.



 
  1. Главная ссылка к новости (https://github.com/jart/blink/...)
  2. OpenNews: Выпуск свободного эмулятора классических квестов ScummVM 2.7.0
  3. OpenNews: Выпуск эмулятора игровых консолей RetroArch 1.15
  4. OpenNews: Новые версии эмуляторов Box86 и Box64, позволяющих запускать x86-игры на системах ARM
  5. OpenNews: Выпуск эмулятора QEMU 8.0
  6. OpenNews: Redbean 2.0 - платформа для web-приложений, упакованных в универсальный исполняемый ZIP-архив
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/59247-blink
Ключевые слова: blink, emelator
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (140) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 09:41, 05/06/2023 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     

  • 1.2, Аноним (3), 09:45, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +30 +/
    Blink это движок Хрома. Что уже слова закончились чтобы новые проекты называть? Дожили называется...
     

     ....большая нить свёрнута, показать (45)

  • 1.7, svsd_val (ok), 10:00, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Отличная вещь =)
     
  • 1.9, Аноним (9), 10:11, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Прикольно.
    Полезная штука.
    Дело coLinux живет и побеждает! )
     
     
  • 2.36, Shevchuk (ok), 12:57, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > coLinux

    Воспоминание разблокировано

     

  • 1.10, Аноним (10), 10:12, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • –2 +/
    Гы) Странная штуковина - вот сборка утилиты bat с musl работает... А ffmpeg static например нет... но тут конечно хост непростой - macos arm64
     
     
  • 2.53, Аноним (53), 13:52, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Так эмулируется же базовый набор вызовов, а не специфичные аппаратные инструкции (какие там sse-специфичные и другие оптимизации в ффмпег есть?).
    Все (работает) как заявлено, кмк.
     

  • 1.15, Ю.Т. (?), 10:21, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Поясните, это штука вроде Bochs, только для х86_64?
     
     
  • 2.24, n80 (?), 11:26, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    Скорее, как отладчик (несколько улучшенный) от Bochs без самого Bochs (вот так вот странно). Плюс, основная ниша тут — всё-таки отладка приложений, а не прошивок/ядер ОС, хотя bare-metal приложения под этим отлаживать тоже можно в какой-то мере.

    В общем, странный проект, но в каких-то случаях заметно удобнее имеющихся.

    И, да, Bochs поддерживает x86_64 примерно всю дорогу, или к чему это уточнение было?

     
     
  • 3.31, n00by (ok), 12:21, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Тут фишка в визуализации при отладке кода. Косвенно можно судить, что исполняется в данный момент. Правда сначала придётся с годик попялиться в картинку.
     

  • 1.16, Ю.Т. (?), 10:22, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +2 +/
    ...нет, отбой, "linux-приложения"
     
     
  • 2.21, пох. (?), 10:56, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    а ты...сообразительный!
     

  • 1.18, Аноним (8), 10:27, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Чего-то unit-тесты не проходят make check blink syscall c 1396 54777 asse... большой текст свёрнут, показать
     
  • 1.19, Аноним (19), 10:31, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +1 +/
    Хорошая работа. Но какое применение ?
     
     
  • 2.20, анон (?), 10:44, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    в браузере настоящий линукс запускать, с приложения из репозиториев
     
  • 2.22, Аноним (134), 10:57, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +4 +/
    Запускать Steam на FreBSD?
     
  • 2.23, Аноним (23), 11:12, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +4 +/
    запустить хоть что-нибудь на маке. уверен, у авторши мак
     
  • 2.94, Аноним (94), 21:38, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Перейдя на E2K или как там энтот ваш Эльбрус обзывают иметь возможнсть запустить Widnows x86 приложение. Хотя вопросов пока и к самому движку и к запуску эмулятора(wine64) другим
    эмулятором (blink) вопросов очень много. Проще уж тогда поднять вируталку с Widnows.
     
     
  • 3.118, n00by (ok), 07:52, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    В Эльбрусе такое реализовано в железе. Двоичная трансляция называется.
     

  • 1.25, Aalexeey (?), 11:40, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Было-бы интересней еслиб оно ARM на x86-64 эмулировало с высокой производительностью, и без systemГ
     
     
  • 2.35, Димон (??), 12:47, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Вы что-то путайте, дорогой мой. Описанная вами задача никому не сдалась, а вот запускать x86_x64 софт на ARM ноутбуках и планшетах, было бы очень полезно. Например, в этом году вышел замечательный Windows планшет Huawei MateBook E GO (2023) на базе свежего Qualcomm Snapdragon 8cx Gen3. Было замечательно на него накатить Linux с возможностью без существенных потерь потом запускать x86_x64 софт.
     
     
  • 3.39, Perlovka (ok), 13:09, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    В смысле не сдалась? Вообще-то так собирают бинари под арм на x86. Crosscompile.
     
     
  • 4.74, Аноним (74), 17:51, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Кросс-компиляция не использует эмуляцию чужой ISA.
     
  • 3.40, n80 (?), 13:10, 05/06/2023 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +/
    > Описанная вами задача никому не сдалась

    А как же отладка/реверс и даже использование проприетарных приложений с Android и, быть может, iOS? Другое дело, что и для этого существующих инструментов хватает, ИМХО.

     
     
  • 4.57, Аноним (57), 14:29, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    На андроиде инструментов для разработки под андроид нет. Как и нормального энвайрмента для запуска стандартных линух приложений. Иначе они бы давно уже заткнули огрызки и были вперде планеты всей.
     
     
  • 5.66, _kp (ok), 15:58, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    Андроид целенаправленно сделан импотентной ОС. Если бы был запуск нативных Линукс приложений, без тормозных прокладок(с которыми сейчас нет практической пользы), так тогда маркет недоприложений с троянами и недоигр пошел бы лесом, или куда то в том же направлении.
    Думаю Убунту-Тач по этой причине и придушили.
     
     
  • 6.68, Аноним (122), 16:12, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Придушили? Ахаха, оно даже не смогло взлететь чтобы его душить.
     
  • 6.72, Аноним (72), 17:22, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    Два чая этому господину.
     
  • 6.76, Илья (??), 18:01, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    А кто придушил то UT? Canonical и придушили. Благо, UT живет сейчас худо-бедно, но и взлёта ей не требуется.
     
     
  • 7.83, _kp (ok), 19:56, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    То что сейчас UT, это как сравнить мороженное, и стаканчик с дерьмом, на котором написано мороженное, то есть только название.

     
  • 6.97, Аноним (97), 22:20, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Чтобы что-то при-душить, это сначало надо от-душить, чтобы оно начало дышать. Нельзя при-душить то что не дышало.
     
     
  • 7.127, _kp (ok), 10:46, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Это Вы смотрите с позиции сегодняшнего дня. А на своё время UT имела большой потенциал, запускала и Линукс и Андроид приложения из коробки, без эмуляции, давало легкость написания по для смартфонов, как и простого портирования ПО, чего и сейчас никто не в состоянии дать.  Проблемы?  Общая для смартфонов педерестичность загрузчиков, блобы, и в итоге не на всякое железо поставить, и тем более на свежее, куда хочется.
    Напомню, именно в начале прошлого десятилетития, оно было на то время круто, тогда и Кде4 только ходил под под стол жидко жидко, Системд не снился в кошмарах, совместимость с актуальным ПО была отличная.  


     
  • 3.44, User (??), 13:23, 05/06/2023 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +2 +/
    Вот прям стесняюсь спрашивать - какой x86_64 LINUX софт вы на нем хотите "запускать"?
     
     
  • 4.59, Димон (??), 14:41, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • –2 +/
    Хоть браузер, хоть редакторы разные, хоть игры... мало ли софта, которого под ARM нет? Каждый из низ сейчас на данный момент имеет на своем компе хотя бы одну приложуху от которой нет ARM версий вообще.
     
  • 3.84, Аноним (84), 19:57, 05/06/2023 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +/
    Забудьте о таких идеях. Huawei/Honor вендорлочат свои железязки, чтобы вы не накатывали туда свои LineageOS и прочее. Bootloader безнадёжно залочен, ключи на разлочивание не выдают. Железяка активно сопротивляется всему, что не родное. На будущее помните, что всё из этих брендов брать категарически запрещено.
     
     
  • 4.104, Аноним (104), 23:03, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > чтобы вы не накатывали туда свои ...

    А смысл? На этих альтернативных прошивках почти ничего не будет работать из переферии. Даже банальная звонилка может не запуститься, не говоря уж о всяких там камерах, вифи и синезубе. Да и управление питанием будет работать так, что аккумулятор садится на глазах. Выводы мои обоснованы личным опытом - специально ради эксперимента купил пару десятков разных (!!!) б\у телефонов и планшетов с авито, у которых нет проблем с загрузчиком. Все без исключения работают криво с этими вашими LineageOS.

    Не всё так просто в этой жизни.

     
     
  • 5.130, _kp (ok), 11:22, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >> почти ничего не будет работать из периферии.

    Если периферия кустарная, то конечно проблемы с ней заложены ещё до производства.
    Число устройств на которых ещё и вменяемое железо и драйвера, крайне мало, если не стремится к нулю.

     
  • 5.139, torvn77 (ok), 00:55, 07/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >На этих альтернативных прошивках почти ничего не будет работать из переферии. Даже банальная

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

     
  • 3.85, a_kusb (ok), 20:37, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Игры от Android
     
  • 3.105, Аноним (105), 23:07, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    > Huawei MateBook E GO

    Ну и смысл ЭТО покупать, когда за те же деньги, даже дешевле, можно купить самый топовый айпэд?

     
     
  • 4.132, Аноним (132), 16:28, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Меня, наверное щаминусят, но за нормальный внешний вид, за компактность и мощь! Потому что как Windows/Linux планшет, так обязательно либо страхолюдное **бище, либо нормальный внешний вид, но начинка дно. Здесь удачно сложился красивый внешний вид и актуальная топовая начинка (проц).
     
  • 3.116, Aalexeey (?), 07:30, 06/06/2023 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +/
    На бытовом уровне, Viber и WhatsApp без зомбофона активировать, например. Вменяемых эмуляторов кроме Genimotion так и не появилось. У всех проблемы с WEB камерами.
     
     
  • 4.126, Аноним (57), 10:16, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Viber и WhatsApp без зомбофона

    По какой накурке ты решил, что они сами не являются зомбофонами? И их таргет - спамрассылки зомбифермами для зомбипланктона

     
     
  • 5.129, Aalexeey (?), 11:07, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Под Linux в них нет никаких спамссылок.
     
  • 3.142, фф (?), 11:14, 08/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    дык если на нем запустится ядро линукса и компилятор, то всё остальное можно просто перекомпилировать. Где там еще в приложухах остались ассемблерные вставки?
    LFS не зря придумывали.
     
  • 2.58, Аноним (58), 14:39, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Архитектурно более простой CPU на более оверинжениренном с высокой производительностью? Оч сумнительно.
     
     
  • 3.114, Аноним (112), 06:11, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Кто там простой? ARM простой?
    лол
     

  • 1.26, Аноним (26), 12:06, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Мне бы что-нибудь вроде гибрида QEMU + bochs, но быстрый и с подгружаемыми модулями эмуляции аппаратуры, чтобы можно было отлаживать код инициализации оперативной памяти и чипсета в биосах.
     
     
  • 2.38, n80 (?), 13:08, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Мне бы что-нибудь вроде гибрида QEMU + bochs, но быстрый и с подгружаемыми модулями эмуляции аппаратуры, чтобы можно было отлаживать код инициализации оперативной памяти и чипсета в биосах.

    Так в Bochs это есть и скорость исполнения в таких задачах не то что бы критична, для кое-каких железок им и пользовался, хотя его отладчик и делает больно. А для остального хватало QEMU и к нему тоже можно модули писать, есть даже тулзы для упрощения этого дела, но там GDB и он делает больно по-другому.

    Весь вопрос в том, откуда возьмёшь достаточно точные модели (модули эмуляции) частей аппаратуры, там где они есть по работе, в ходу Simics или SimNow. Они ещё и быстрые, но это уже не свободное ПО.

     

  • 1.28, Аноним (26), 12:11, 05/06/2023 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

  • 1.29, Аноним (29), 12:13, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Интересно, может ли эмулировать SSE3 на процессорах x86 без их поддержки? Так можно было бы и браузеры поновее запускать на олдовых железках. Не спрашивайте "зачем", здесь здоровый спортивный интерес.
     
     
  • 2.32, n00by (ok), 12:33, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    В Android-x86 эмулировались некоторые команды SSSE3 и SSE4.1. Для чего в ядре модифицировали обработчик невалидного опкода в ядре https://sourceforge.net/p/android-x86/kernel/ci/39cb2a3aa79affbd18194bfece3124 (старая версия, есть ли новая, не искал).
     
  • 2.42, soarin (ok), 13:16, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    > Интересно, может ли эмулировать SSE3 на процессорах x86 без их поддержки?

    Скорее всего можно.
    Всё можно, только это будет добавлять прилично тормозов.
    Так что смысла ноль.

     
  • 2.75, Аноним (74), 17:55, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    https://software.intel.com/en-us/articles/intel-software-development-emulator

    Только запускать это можно либо в рамках тестирования, либо, действительно, из спортивного интереса. Производительность будет никакая.

     
  • 2.91, Ананас4к (?), 21:15, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Внимание вопрос - что ты хочешь запускать на процессоре который вышел до 2004 года? Он физически не осилит современное ПО
     
  • 2.128, Аноним (86), 11:04, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Эмуляцию FPU застали? Я когда-то на 386 DX 40 (без сопроцессора) запустил рендеринг простого текстурированного кубика в POVRay. Трудился он над этим порядка 12 часов.
    Вот примерно так это и будет работать.
     

  • 1.30, Аноним (30), 12:20, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    >pledge для Linux

    в Linux есть landlock

     
  • 1.34, ыы (?), 12:42, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]      [к модератору]
  • +1 +/
    как у него с частотой процессора? частоту эмулирует?
     
  • 1.41, Срыватель покровов (?), 13:10, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +1 +/
    Странные люди делают странные вещи. Ничего странного.
     
     
  • 2.45, ыы (?), 13:26, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    а я вот ищу эмулятор, который позволяет эмулировать и частоту процессора в том числе... и вот чтото плохо с этим...
     
     
  • 3.95, Аноним (94), 21:40, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Надеюсь хотите больше чем есть эмулировать =)
     
     
  • 4.100, ыы (?), 22:31, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    меньше
     
  • 4.115, Аноним (112), 06:14, 06/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    А потом внутри эмулировать ещё раз, и потом внутри ещё раз, и прогресс в железе перестанет быть потребным.

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

     
  • 3.147, Прыгающий Ленивец (?), 15:19, 12/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    А зачем это эмулировать? Максимальная частота буста указывается в настройках системы что в винде, что в linux. Еще можно множитель какой нужен поставить в uefi чтобы без вот этих всех адаптивных бюстов, а просто фиксирования частота была
     

  • 1.46, Аноним (9), 13:32, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    Этот блинк надо использовать как виртуализацию (контейнеризацию) линукс-бинарей без хостового линукс-ядра.

    Прямо контейнеризация как она должна (была) быть.

    И для винды это мб лучше и удобнее, чем нынешний вариант wsl. Кому нужна тру-виртуализация, запустят в виртуалке.

    Ну ведь удобно же.
    Главное, чтобы оставалось компактным и не разрасталось в попытке объять необъятное (как один менеджер, который нельзя упоминать всуе) =)

     
     
  • 2.48, ыы (?), 13:42, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    поможет ли это запускать докеры в винде без проф лицензии?
     
     
  • 3.96, Аноним (94), 21:40, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    В теории да, а на практике портируют косынку только =)
     

  • 1.47, Аноним (9), 13:35, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +3 +/
    Но вообще это ржака (или ирония, если на языке зумеров) — тула для виртуализации линуксового посикса.

    Вдуматься только, линуксовый посикс настолько уже сам в себе, что такой же посикс, только другой (ну, фришный, например) уже не подходит.

     
     
  • 2.49, ыы (?), 13:43, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +3 +/
    действительно, смешно - команды одного процессора не выполняются на другом... хоят если подумать - и там и там электрические сигналы...разница в напрящении и все...
     
     
  • 3.51, Аноним (53), 13:48, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Ну и при чем тут архитерктура/команды, если из описания Блинка следует то, что это работает как прослойка трансляции посикс-вызовов линукса в посикс-вызовы целевой операционной системы?

    Как-то выходит, что нет буквы P для линуксового посикса ;(

     
     
  • 4.56, ыы (?), 14:10, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    а в каком месте стандарта посикс эмулирует процессор?
     
     
  • 5.60, Аноним (9), 14:55, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Чем-то ты не тем или не там читаешь )
    Никто и не пишет о том, что тут про эмуляцию инструкций. Тут про эмуляцию вызовов — странно ожидать, что будет работать на другом проце с другим instruction set, если оригинальный эмалируемый бинарь хочет специфичных инструкции.
     
     
  • 6.61, ыы (?), 15:08, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    разработчики утверждают что:
    "implements about 600 x86 instructions and 180 Linux system calls"

    где здесть НЕ сказано про эмуляцию инструкций?

     
  • 6.62, Аноним (62), 15:14, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Там не написано про POSIX линукса. Возьми тот же AIX, вещь весьма в себе и с кучей костылей. И она внезапно несовместима с HP-UX. Но если взять то, о чём ты говоришь, то на разных системах POSIX бывает разных ревизий и реализаций, со своими особенностями. Больше всего проблем доставляют те части, что не стандартизированы, конечно. В итоге адовая солянка из кода разных систем будет работать в линуксе, но на конкурирующие проприетарные поделки компоненты никто не портировал (если они вообще там способны работать).
     
  • 2.92, Ананас4к (?), 21:17, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Ну да базированный рофл, я кенту в тг скинул а он сказал что это кринж, меня это шеймит как то
     

  • 1.50, Аноним (53), 13:46, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    Блинк – пример дружеской (отрезвляющей) пощечины (при-)хлебателям всякого раста.
    "Write once, run anywhere"?
    Для нормально спроектированного (люди ДУМАЛИ) языка и среды выполнения – да.
    Да даже для сишечки (пример, когда человек, умеющий думать и в код сделал вещь) – да.

    А для раста (и других nih-велосипедов)?
    Запустится ли раст-бинарь, скомпилированный в каком-нибудь Gentoo, в макоси? ;)

    Джава – да.
    Сишечка – (теперь) да.

    А что там в модных, стильных, молодежных языках с (розово-зеленым) синтаксисом не как у всех?

    p.s. js не предлагать

     
     
  • 2.64, Аноним (62), 15:40, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Это только привет мир запустится. Это же касается и жавы с додиезом. Если разрабы (и разрабы всех задействованных компонентов тоже) не позаботились о такой теоретической возможности, то чёрта с два ты там запустишь несмотря на всю кроссплатформенность.
     
     
  • 3.93, Yesnot (?), 21:28, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    "Джава – да." - жаба-то здесь причем? Речь про линуксовые бинарники. И чем автору так Rust насолил?  Прикручиваем к растишке MinGW или еще проще cross(only x86_64) если нужна кросскомпиляция. Это прям как любитель выпиливать лобзиком по фанере люто ненавидит лазерные станки, ведь они работают на электричестве и нужно уметь в моделирование. Для каждой задачи есть свой подходящий инструмент. Холивары - удел нубов.
     
  • 2.79, Аноним (79), 19:20, 05/06/2023 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +1 +/
    Golang собирает один самодостаточный бинарник который будет работать в любом дистрибутиве. Если собирать без CGO то даже с libc не линкуется и тогда не важно будет ли система на основе Glibc или например Musl.
     
     
  • 3.82, Аноним (62), 19:38, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Это потому что переключение в сишный код на нём хреновое. У всех остальных то нормальные либы в основе.
     
  • 2.106, Аноним (107), 23:38, 05/06/2023 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Пофиксил, не благодари Ну запусти приложения J2ME на маке венде пингвине ... большой текст свёрнут, показать
     

  • 1.52, Аноним (52), 13:50, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Нужно сравнение производительности с exagear
     
  • 1.55, Golangdev (?), 13:53, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +4 +/
    > POSIX-совместимых операционных системах (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin

    Не знал, что Цигвин - это операционная система. =)

     
     
  • 2.69, Аноним (122), 16:14, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Считай шинда.
     

  • 1.71, Анон8812 (?), 17:06, 05/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Нельзя jit к qemu добавить было? Чувствую поддерживать это низкоуровневое чудо не просто будет.
     
     
  • 2.73, Аноним (72), 17:27, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    73к строк си кода.
    Думаю при добавлении jit в qemu пришлось бы добавить не меньше строк, но побольше костылей.
     
  • 2.98, Совершенно другой аноним (?), 22:25, 05/06/2023 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Тут пишут, что уже есть:

    https://www.qemu.org/docs/master/system/introduction.html?highlight=jit

    Просто известен под именем TCG.

     

  • 1.131, Аноним (131), 13:41, 06/06/2023 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Линукс и есть эмулятор ОС.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру