Блинк к86-64 емулатор који обећава да ће надмашити КЕМУ

блинк-гцц

Снимак екрана трептања

Недавно је објављена вест да је пројекат Блинк развија нови емулатор к86-64 процесора који омогућава вам да покренете компајлиране Линук апликације статички у виртуелној машини са емулираним процесором.

Помиње се да је еглавни циљ пројекта је да обезбеди могућност покретања Линук програма компајлираних за архитектуру к86-64 на другим оперативним системима (мацОС, ФрееБСД, НетБСД, ОпенБСД) и на рачунарима са различитом хардверском архитектуром (к86, АРМ, РИСЦ-В, МИПС, ПоверПЦ, с390к).

У репозиторијуму пројекта они описују трептање на следећи начин:

блинк је виртуелна машина која покреће статички компајлиране к86-64-линук програме на различитим оперативним системима и хардверским архитектурама. Дизајниран је да ради исту ствар као команда кему-к86_64, осим што (а) уместо да буде бинарни фајл од 4 МБ, Блинк има само ~160 кб отисак; и (б) Блинк је 2к бржи од Кему-а у неким мерилима, као што је емулација ГЦЦ-а. Компромис је у томе што Блинк нема толико функција као Кему. Блинк се савршено уклапа када желите виртуелну машину која је изузетно мала и много брже покреће ефемерне програме. За више детаља о мотивацији за овај алат, прочитајте хттпс://јустине.лол/апе.хтмл.

Вреди напоменути да је пројекат развио аутор развоја као што је библиотека Цосмополитан Ц, порт механизма за изолацију обавеза за Линук и Редбеан универзални извршни систем датотека.

Што се тиче функционалности, Блинк изгледа као наредба кему-к86_64али разликује се од КЕМУ по компактнијем дизајну и значајном повећању перформанси. На пример, извршна датотека Блинк је само 157 КБ уместо 4 МБ за кему-к86_64, и u pogledu performansi у пробном раду на ГЦЦ емулатору, Блинк двапут победи КЕМУ.

Да би се осигурале високе перформансе, користи се ЈИТ компајлер, који конвертује изворна упутства у машински код за циљну платформу у ходу (до сада само к86_64 и аарцх64 подржавају ЈИТ).

Подржано је директно покретање на емулатору извршних датотека у ЕЛФ, ПЕ (Портабле Екецутаблес) и бин (Флат Екецутабле) форматима, компајлираних са стандардним Ц библиотекама Цосмополитан, Глибц и Мусл.

Поред тога, Такође се истиче да има интегрисану подршку за више од сто позива ка Линук систему, укључујући форк() и цлоне(). Подржана је емулација и8086, и386, ССЕ2, к86_64, ССЕ3, СССЕ3, ЦЛМУЛ, ПОПЦНТ, АДКС, БМИ2 (МУЛКС, ПДЕП, ПЕКСТ), Кс87, РДРНД, РДСЕЕД и РДТСЦП скупова инструкција.

Поред тога, пројекат развија услужни програм блинкенлигхтс, који обезбеђује интерфејс за отклањање грешака у програмима на различитим платформама, визуелизацију извршавања програма и анализу садржаја меморије. Карактеристика дебагера је подршка за режим обрнутог отклањања грешака (Реверсе Дебуггинг), који вам омогућава да се вратите у историју извршавања и вратите се на претходно извршену тачку.

блинкенлигхтс је ТУИ интерфејс који се може користити за отклањање грешака к86_64-линук програма на свим платформама. За разлику од ГДБ-а, Блинкенлигхтс се фокусира на визуелизацију извршавања програма. Користи УНИЦОДЕ ИБМ Цоде Паге 437 знакове за приказ бинарних меморијских панела, који се мењају док се крећете кроз асемблерски код вашег програма. Ови меморијски панели се могу померати и повећавати помоћу точкића миша. Блинкенлигхтс такође подржава обрнуто отклањање грешака, где вам померање точкића на екрану склапања омогућава да премотате историју извршења уназад.

Коначно, за оне који су заинтересовани да сазнају више о овом пројекту, требало би да знају да је код пројекта написан у Ц (АНСИ Ц11) и да се дистрибуира под ИСЦ лиценцом. Од зависности, потребна је само либц (ПОСИКС.1-2017).

добити трептај

За оне који су заинтересовани да могу да испробају блинк, требало би да знају да је његова компилација изузетно једноставна, само морају да добију његов изворни код, могу то да ураде са следеће везе или са терминала тако што ће укуцати следећу команду :

git https://github.com/jart/blink.git

И завршили са тим, само морате да уђете у блик директоријум и преведете:

cd blink

make -j4

Ако желите да сазнате више о томе како Блинк функционише, можете то учинити из следећи линк.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. Odgovorni za podatke: AB Internet Networks 2008 SL
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.