LINUX.ORG.RU

Linux в браузере

 ,


0

4

Фабрис Беллард (Fabrice Bellard), основатель FFmpeg, автор QEMU, Tiny C Compiler, QEmacs и других проектов представил свою новую разработку — Linux в виртуальной машине на JavaScript.

Текущая реализация занимает 86КБ и поддерживает только базовые возможности:

  • 32-битный x86-совместимый процессор.
  • Программируемый контроллер 8259.
  • Программируемый таймер 8254.
  • UART 16450.
  • Эмулятор терминала, работающего с UART.

Но этих возможностей достаточно, чтобы запустить полноценное ядро Linux с корнем на ext2, включающим BusyBox, С-компилятор TCC и QEmacs.

Любой желающий может в своем браузере увидеть загрузку ядра Linux, поработать в открывшейся консоли, скомпилировать hello.c и выполнить rm -rf /. После загрузки ядра все операции выполняются в браузере без участия сервера.

Работоспособность подтверждена для браузеров Firefox 4, Seamonkey 2.1, Safari 5 и Chrome 11. По слухам проект не работает в Opera (нет поддержки Typed Arrays, а тестовые сборки, где она есть, выдают ошибку) и Chrome 12 («it does not work with Chrome 12 beta. As far as I know, it is a bug in the browser» — Fabrice Bellard).

Linux в браузере

>>> Подробности



Проверено: post-factum ()
Последнее исправление: post-factum (всего исправлений: 8)
Ответ на: комментарий от FedeX

о, это тоже мегакруто, с удовольствием вспомнил contra и mega man =) правда звук глючит

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от adepto

>Осталось Апач запустить. Получится веб-сервер в браузере!

Запускается. httpd базибоксный. Только вот сети кроме lo нету.

gogi
()
Ответ на: комментарий от I-Love-Microsoft

>rm -rf / это первое что я проверил в этом эмуляторе =)))

mee2 =)

Проект интересный, спасибо, поигрался

Прикольно, мне ещё нравиться денди эмулятор: http://benfirshman.com/projects/jsnes/

А оно нормально идет? У меня что-то как в фф4 так и в айроне жуткие тормоза и низкий фпс.

onix_N ★★
()
Ответ на: комментарий от uju

а как оно работает? УМ не выдает приглашения оболочки (chromium 13).

В 12-ом и 13-ом хроме не работает, предположительно из-за ошибки в самом браузере.

Deleted
()

>Typed Arrays

Таки хотят сделать из жабаскрипта жабу-2?

Deleted
()
Ответ на: комментарий от anonymous

У меня после заливки 200КБ-архива браузер минут пять проглатывал такое количество запхнутых в него кодов. :)

А не проще примонтировать образ ФС и скопировать туда? =)

Deleted
()

И все под рутом сидели? Беда

luke ★★★★★
()

Действительно, в Опере не хочет работать.

anonymous
()

Кстате, в этом эмуляторе все как по учебнику:

1. Emacs тормозит (особенно перемещение курсора)

2. vi все портит. Всмысле, файлы после vi не компилятся tcc'ёй, ей не нравится конец файла, подробно не разбирался

gistart
()
~ # uname -a                                                                    
Linux (none) 2.6.20 #3 Sat May 14 19:08:30 CEST 2011 i586 GNU/Linux

Старовато.

anonymous
()

Прихожу в восторг о этой поделки.

GSA
()

/home

Ну вот, только /home добавить через localstorage и будет суперигрушка.

andrey_pp
()

форк-бомба работает нормально. хром в это время грузит систему процентов на 20

heisenberg ★★
()

Одиозный проект. Хорошо показывает мощь современного JavaScript, и возможности ядра Linux по адаптации и масштабированию к различным задачам. Браво разработчику! Даёшь по Linux на каждом сайте:)

lucentcode ★★★★★
()

Поковырялся в /etc и /bin, увидел там минимальное базовое окружение. В целом проект интересный, может пригодиться для обучения людей использованию основных утилит Linux-окружения. Например изучает человек регулярные выражения, и нужен ему egrep. А он до сих пор альтернативной ОС пользуется. Вот тут то этот проект и пригодится.

lucentcode ★★★★★
()

Нехило мужик пыхнул... Идея вообще прикольная. Если бы JS был слегка менее тормозным плюс поддержка сети (можно и подключения харда с реальной машины, но стремно - решето жесткое будет), то эту штуку можно было бы использовать на манер клиента к линуксовым консольным приложениям с win-машин

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

А еще неплохо для проведения олимпиад для школьников, и вообще для их обучения. Особенно на дому. А то если на олимпиаде еще можно школяра заставить виртуалку поднимать, то без 3-х лет студентку МФЮА точно на изврат с VM не затащить.

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

> студентку МФЮА точно на изврат с VM не затащить
советую попробовать сначала изврат без VM, а там дальше будет видно, стоит продолжать или нет

FollowTheRabbit
()

сетевухи ой как не хватает блин!
Чем не ссш клиент?

FollowTheRabbit
()
Ответ на: комментарий от Deleted

> А не проще примонтировать образ ФС и скопировать туда? =)

Проще. Но не интересно же. А так у меня получилось залить на оригинальную браузерную версию статически слинкованный nethack - все работает, монстры жуются. :) Пришлось для него туда еще termcap и terminfo/vt100 загрузить, иначе он упорно не хотел запускаться.

Меня сейчас вопрос сети мучает. Ведь там же есть uart. А uart + pppd = сеть. Как бы его с хостовой машиной зацепить...

anonymous
()

Охренеть!!!

anonymous
()

Интересная штука :), авто дополнение работает, история команд. А как экран прокручивать? Shift+PageUp/PageDown не работает.

Buy ★★★★★
()

Прикольная штукенция, поигрался. Буду в универе страшным линуксом детей пугать :)

f1xmAn ★★★★★
()

Текстовый редактор nano имхо должен быть! Ели вспомнил как из vi выйти ;).

Buy ★★★★★
()

Как это черт возьми работает?

mio ★★
()

Беларду осталось написать драйвера на джаваскрипте и его можно будет канонизировать наряду с Патриком

argin ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

> впечатляет идея и реализация, но судя по исходному коду эмулятора, там GWT или иной транслятор нормального языка в JavaScript, сильно сомневаюсь в чистом яваскриптовом происхождении сего чуда

Плохого ты мнения об авторе Qemu и FFmpeg

tensai_cirno ★★★★★
()

>A troubling thing is that the PC emulator is about 2 times slower using V8 than Jaeger Monkey (I used the 32 bit version for both). I have no precise explanation yet because I only looked at the Jeager Monkey code so far.


АГА! в8 фигня!! //хомяк (с)

tazhate ★★★★★
()
Ответ на: комментарий от mehanoid

> Чёрт, меня всё время тянет нажать ctrl+w, когда хочу стереть последнее слово.

Так работает же. Вкладка не закрывается, слово удаляется

YAR ★★★★★
()

> Detected 3.333 MHz processor

Мощща )

YAR ★★★★★
()

Эх, знали бы люди, стоявшие у истоков it, как будут беситься с жиру в этой индустрии через весьма короткое время.

PolarFox ★★★★★
()
Ответ на: комментарий от gistart

vi все портит. Всмысле, файлы после vi не компилятся tcc'ёй, ей не нравится конец файла, подробно не разбирался

У меня с vi все работает. Но в vi у них нет синтаксической подсветки, а в emacs есть.

Deleted
()

Беллард сцуко бох. Запилить такую фигню jff.

tailgunner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.