?

Log in

No account? Create an account
nyaload

Журнал Пушыстого

Журнал Пушыстого

Previous Entry Share Next Entry
JS Linux
nyaload
_winnie
Поразительная штука, http://bellard.org/jslinux/index.html

Это эмулятор unix внутри браузера, на javascript.

Я раньше натыкался на эту ссылку в блогах, но поигрался только сегодня.
Поредактировал файл в vi, скомпилировал местным компилятором tcc ( в этом эмуляторе есть компилятор C ), выяснил что скомпилированный dot-product перемножает и складывает миллион целых чисел за секунду или около 2000 float (код)

Что работают всякие шелловские конвееры cat | grep | tr | wc

Если раньше делали __asm вставки в коде С++, то в будущем будут делать JavaScript вставки для оптимизации медленного C++ :)


  • 1
(Deleted comment)
Теперь ассемблер - это JavaScript :)

Каким браузером смотрел? У меня он так жжот только в гуглохроме.

это не эмулятор компьютера?

Кстати к хрому вообще приделали возможность выполнения нативного кода, немного допиленного. Под которым уже запустили DOS Box: http://www.naclbox.com/gallery

Скоро и правда уже не разберешься что на чем выполняется - javascript на x86, или x86 на javascript на каком-нибудь ARM.

ага, я тоже сразу про NaCl вспомнил который вроде как более внятная альтернатива ;)
Он кстати уже по дефолту включен в бете хрома, значит в течение нескольких месяцев появится в релизе. Если гугл будет его активно пропихивать - то у него есть шансы отжать популярность у флеша.

И автор этого чуда тот же, что и у qemu. Он же победитель IOCCC (кажется даже неоднократный)

он же автор самого быстрого алгоритма подсчета знаков pi, установил рекорд на количество вычисленных знаков pi на своем лаптопе, автор ffmpeg итп

это не "эмулятор unix", а эмулятор x86 с минимальным образом linux

забавная игрушка ) только вот какой в ней практический смысл? :)

Запускать старые программы, типа есть в больнице или гос-учреждении какая-то програмка написаная для DOS 30 лет назад, и хочется её выполнять внутри браузера iphone.

Интересно, как это он с целыми работает быстрее, когда в JS все числа - double?

Емнип "внутре" int-ы используются для оптимизации
т.е. в коде вида
for (var i=0; i<100;++i)
у i есть все шансы быть представленной в виде int
Это по результатам давнего поверхностного разбирательства с V8, так что могу быть неправ.

Интересно бы ещё спортировать Линукс на новую архитектуру — JavaScript. Чтобы «нативно» выполнялся.

  • 1