URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 87188
[ Назад ]

Исходное сообщение
"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."

Отправлено opennews , 08-Ноя-12 14:24 
Один из разработчиков NetBSD провёл (http://blog.netbsd.org/tnf/entry/kernel_drivers_compiled_to_...) интересный эксперимент, в полной мере продемонстрировавший гибкость средств портирования NetBSD под новые платформы. Используя Emscripten (https://www.opennet.ru/opennews/art.shtml?num=31155), в представление на языке JavaScript было скомпилировано изначально написанное на языке Си ядро NetBSD и набор связанных с ним драйверов. Таким образом была добавлена поддержка новой архитектуры  "sys/arch/javascript", подразумевающей возможность запуска ядра NetBSD под управлением web-браузера.


В отличие от проекта JSLinux (https://www.opennet.ru/opennews/art.shtml?num=30577), в рамках которого написан полноценный эмулятор ПК, способный загрузить Linux, порт NetBSD имеет определённую практическую направленность. Целью разработки является обеспечение компиляции в JavaScript отдельных драйверов NetBSD с возможностью обращения к их функциям из JavaScript-приложений. Например, можно создать web-сервис, способный напрямую работать с образами файловых систем, используя скомпилированные в JavaScript драйверы NetBSD.


Для демонстрации озвученной идеи подготовлен рабочий прототип подобного web-сервиса, способный работать с системными образами в формате FFS. Выполняемый в браузере демонстрационный образ ядра NetBSD с поддержкой FFS, Tmpfs и kernfs, а также минимальное системное окружение NetBSD можно загрузить на данной странице (http://ftp.netbsd.org/pub/NetBSD/misc/pooka/rump.js/) (5 Мб). Прототип сервиса может быть выполнен в любом современном web-браузере, за исключением Internet Explorer. Сервис позволяет передавать запущенному в браузере ядру произвольные команды и просматривать результат их выполнения. При запуске демонстрации осуществляется  загрузка образа файловой системы FFS (rump.data), запуск ядра NetBSD и монтирование FFS-раздела, после чего можно выполнить произвольные команды в интерактивном режиме.


Ядро собрано в режиме RUMP (http://www.netbsd.org/docs/rump/) (Runnable Userspace Meta Program), позволяющем организовать выполнение частей ядра в адресном пространстве пользователя. В частности, Rump позволяет в виде оформленного в стиле микроядра серверного процесса выполнять в пространстве пользователя драйверы, изначально работающие на уровне монолитного ядра системы. По сути rump-ядро является частично паравиртуализированным ядром, запускаемым поверх высокоуровневного гипервизора. Указанная возможность позволяет легко портировать NetBSD под различные  системы, так как по сути для обеспечения работы rump-ядра достаточно подготовить для платформы только соответствующий небольшой гипервизор. В рассмотренном эксперименте rump-гипервизор был написан для браузерного JavaScript движка (гипервизор был написан на Си на базе стандартного POSIX-гипервизора), после чего гипервизор, ядро и компоненты NetBSD были преобразованы в JavaScript в автоматическом режиме при помощи компилятора Emscripten.

URL: http://blog.netbsd.org/tnf/entry/kernel_drivers_compiled_to_...
Новость: https://www.opennet.ru/opennews/art.shtml?num=35268


Содержание

Сообщения в этом обсуждении
"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 14:24 
Вот уж реальные извращенцы

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Zenitur , 08-Ноя-12 14:29 
А видел работающий 8-битный процессор с памятью и монохромным монитором, смоделированный в Minecraft?

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 14:59 
А еще был 8-битный процессор (AtMega) с запущенной на нем убунтой, которую ты так нежно любишь своим фругуртом :)

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 21:40 
А что такое «фругурт»?

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 23:52 
> А что такое «фругурт»?

Это то что у некоторых возникает при упоминании некоторых кейвордов как условный рефлекс. Политкорректная версия названия :)


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено iFRAME , 09-Ноя-12 07:18 
У меня для Вас плохие новости: http://ru.wikipedia.org/wiki/%D0%91%D1%8...

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено metallic , 12-Ноя-12 11:54 
На аьмеге убунту запускали? Как?

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 20:56 
Годно!

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено шестиклассник , 12-Ноя-12 15:49 
> 8-битный процессор с памятью и монохромным монитором, смоделированный в Minecraft

Где, где его можно посмотреть?


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено iCat , 14-Ноя-12 05:10 
...и ту пришёл поручик Ржевский и заявил: "А давайте запустим wine на Dart!"

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено x0r , 08-Ноя-12 14:34 
А что я считаю тем же USB драйверам для всяких "свистков" не место в ядре и они должны быть максимально переносимыми между разными ОС...

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 15:00 
> А что я считаю тем же USB драйверам для всяких "свистков" не
> место в ядре и они должны быть максимально переносимыми между разными ОС...

Считайте. И пишите наздоровье так как считаете нужным, флаг вам в руки и барабан на шею.


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено x0r , 08-Ноя-12 17:48 
спасибо) а еще надо формат USB драйверов (каком нибудь python/lua) протащить как ietf стандард.

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 23:53 
> спасибо) а еще надо формат USB драйверов (каком нибудь python/lua) протащить как ietf стандард.

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


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено lucentcode , 08-Ноя-12 16:07 
Не только к свисткам. Драйвера ко всему должны быть в USER-space...

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Elhana , 08-Ноя-12 16:20 
Это может и правильно, но получается медленнее чем в ядре.

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено filosofem , 08-Ноя-12 17:07 
>но получается медленнее чем в ядре.

Достойно скапитанил.


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Анонимчег , 08-Ноя-12 18:15 
сумничаю: а почему не реализовать сразу "пакетные операции"...

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено rshadow , 08-Ноя-12 23:02 
В 96 мы с Линусом завалились по пьяни к Ванге. Так она нам пророчила: в 2012 появится некий Анонимчег! Он сделает драйвера в юзерспейсе с пакетным режимом! Так что вы двое пока так не делайте...

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено VoDA , 09-Ноя-12 00:02 
> В 96 мы с Линусом завалились по пьяни к Ванге.

Да, забористая была трава ;)))


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 23:54 
> Не только к свисткам. Драйвера ко всему должны быть в USER-space...

Ну раз вам должны - попробуйте стребовать долги через суд. Правда боюсь что придется предоставить какие-то доказательства того что вам кто-то что-то задолжал.


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 08-Ноя-12 14:37 
Однако, новые горизонты открываются. Мне кажется, это можно применить в распределённых вычислениях, ну или в ботнетах :)

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено anonymous , 08-Ноя-12 14:40 
Будущее уже сейчас. Ваш браузер заражен ботнетом...))

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Нету имени , 08-Ноя-12 14:59 
Прототип сервиса может быть выполнен в любом современном web-браузере, за исключением Internet Explorer.

Наличие слов современном и web-браузере уже как бы намекает, что про IE тут речи не ведётся.


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено denis111 , 08-Ноя-12 15:10 
A IE10? :)

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Андрей , 08-Ноя-12 15:27 
туда же)))

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Антон , 08-Ноя-12 15:56 
"IE10 - теперь скачивание Firefox (Chrome) стало еще удобнее!"

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено an. , 08-Ноя-12 19:39 
Ну осталось только поверх это NetBSD запустить Xen, в котором уже, например, запустить Linux или даже Windows... :)

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 09-Ноя-12 00:00 
> Ну осталось только поверх это NetBSD запустить Xen, в котором уже, например,
> запустить Linux или даже Windows... :)

В котором запустить еще какой нибудь виртуализатор, в котором... wait, oh sh--!


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Aleks Revo , 09-Ноя-12 03:22 
А в нём запустить браузер с транслированными в JS... ))

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено cbs , 09-Ноя-12 18:44 
"...в доме, который построил Джек."

"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено YetAnotherOnanym , 08-Ноя-12 21:25 
> прототип подобного web-сервиса

... с которого можно будет загрузить образ NetBSD, работающей в браузере
(чтобы понять рекурсию, надо сначала понять рекурсию)


"Ядро и драйверы NetBSD скомпилированы в JavaScript для запус..."
Отправлено Аноним , 09-Ноя-12 19:26 
Ох уж этот финн, Анти... Не сидится всё ему на месте. То rump, то теперь это...