LINUX.ORG.RU

Lua в ядре NetBSD

 ,


1

6

Согласно докладу Марка Балмера (Marc Balmer, разработчик NetBSD) на FOSDEM'13, прошедшего 2 и 3 февраля, в ядро NetBSD-current добавлен скриптовый язык lua. Работы в данном направлении ведутся уже, как минимум, с 2010-го года.

Использование языка lua в ядре позволяет ускорить разработку драйверов, изменения функционала ядра, а также его настройку. Более низкий порог вхождения по сравнению с языком C позволит в будущем упростить разработку и ускорить темпы развития проекта, а также увеличить интерес сообщества к проекту NetBSD и привлечь новых людей.

>>> Доклад

★★★★★

Проверено: mono ()
Последнее исправление: Binary (всего исправлений: 3)
Ответ на: комментарий от border-radius

у меня не было таких штук. начинал программировать я на корвет - а там был бейсик =( спеки у меня тоже не было, первый комп-468

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

Миллионы неотличимых систем - это не взлет.

Ты же не думаешь, что в автомобиле и в самолёте оно совсем одинаковое?

Я думаю, что во всех сотнях тысяч infotaiment-систем машин одной марки оно одинаковое. Насчет самолетов не знаю - читал, что там VxWorks, Lynx, Integrity, Linux, но про QNX не читал; впрочем, Lynx вроде микроядерная.

Но пойнт в том, что все эти автомобили и самолеты - не показатель по одной причине: их мало, не в штуках, а в количестве разных типов. Т.е. это всё одна узкая область применения.

tailgunner ★★★★★
()
Ответ на: комментарий от border-radius

Рантайм? 640К уже не хватит всем, потому что в 200-300К из них будет висеть рантайм Lua?

Причём тут размер кода рантайма??

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

ты видел какое оно там в автомобиле и самолете?

Сомневаюсь, что исходники может увидеть кто-то посторонний. Нет не видел. Даже если оно одинаковое, я не согласен с «не взлетело». Вот перечень только из оборонки, где оно используется:

Unmanned aircraft control systems
Acoustic sensors for tracking tank movements
JTRS wireless military radios
High-capacity data radios
Autonomous underwater vehicles
Guidance systems for anti-tank weapons
Embedded controller for aerospace applications
Wearable GPS/communication systems for ground troops
Transponder landing systems
Military weather satellite test beds

а полный список заказчиков, начиная с циски заканчивая бмв очень внушительный. Вот, линукс на дестопах - это да, не взлетел до сих пор. :)

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

Это ложь. Потоки go не могут выполняться на разных ядрах. Читай официальную документацию.

Там написано совсем не то, что вы утверждаете, вообще-то. А что по дефолту используется одно ядро, не нравится — ручкам говоришь, сколько использовать.

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

причем тут darwin/etc?

Мы разбираемся с терминологией, что можно называть «взлетело», а что нет.

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

Мы говорим о коммерческом продукте или технической концепции? Как коммерческий продукт - да, взлетела. Как техническая концепция... да нет там никакой технической концепции.

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

android тоже в оборонке используют. и винду на атомных пл. и что?

Винду на апл? Это где такое написано? Или ты про смартфоны/планшеты служащих в свободное от службы время?

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

О_О Это выглядит настолько сумесшедше, что вполне может взлететь.

И что тут сумасшедшего? Одни из первых OS были написаны на том же LISP и рулили адски.

Сумашествие это ядро на C или C++. Но народу нравится. Можно найти много студентов, что смогут его пилить.

Вон чувак какой-то драйвер писал на Lua:

http://blog.lukego.com/blog/2013/01/03/snabb-switchs-luajit-ethernet-device-d...

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

И что тут сумасшедшего? Одни из первых OS были написаны на том же LISP и рулили адски.

Не сравнивай. Мощный метаязык и подпертая костылями поделка. Это языки одного уровня что ли?

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

При том, что не каждая программа на луа сожрёт столько, сколько весят иные рантаймы сами по себе. Да и вообще, GC в луа никто не отменял, хотя по сравнению с питоновским он да, фуфловат.

border-radius
()
Ответ на: комментарий от tailgunner

Язычок говно, но идея написания драйверов на чем-то высокоуровневом прикольная.

Ага. Наконец-то и в open source это пришло. И столетия не прошло. После всяких там Singularity, Symbolics и прочих.

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

Не сравнивай. Мощный метаязык и подпертая костылями поделка. Это языки одного уровня что ли?

По сравнению с C - одного уровня. Параллакс, сэр.

rtvd ★★★★★
()

позволит ускорить темпы развития трупа

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

на лисп и железо хотели делать.. но где оно?

К чему это? Это типа какой-то аргумент?

P.S. Не сделали, т.к. и на обычном железе прекрасно работало. Потому разработки канули в лету, как и процессоры, исполняющие JVM байткод.

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

ос надо писать на forth

Да вперёд.

BIOS в OLPC на нем написан, если не изменяет память. Можно и ОС написать. Но всё это из области фантастики.

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

Это типа какой-то аргумент?

нет вообще ни разу. наоборот жалко. а на fpga нельзя такого сделать? ну схему там например?

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

Lynx вроде микроядерная.

Нет. В lynxos-178 есть юзерспейсный сетевой стек, но на этом вроде бы всё.

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

лол у меня в win 3.1 был trumpet winsock - тоже юзерспейсный сетевой стек. оказывается я тогда сидел под микроядерной ос

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

Наконец-то и в open source это пришло. И столетия не прошло. После всяких там Singularity,

А не подскажешь, когда Singularity пришла в ядро венды?

Symbolics и прочих.

...исполнявшихся на специальном железе.

В общем, грамотный троллинг требует знания матчасти, которым ты не обладаешь.

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

На моем Sun Blade 1000 был даже дебаггер знатный встроен в OpenBoot, если память не изменяет.

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

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

Дело не в размере, а в вопросе «будет ли сей рантайм дёргать malloc в ходе работы драйвера».

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

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

border-radius
()
Ответ на: комментарий от special-k

Мм.. т.е. ты еще и против тестирования.. интересно..

неумение читать - это тяжело, да

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

А не подскажешь, когда Singularity пришла в ядро венды?

А зачем её туда пихать? Как и прочие подобные работы, это был proof of concept. В Windows её не пихали и думаю даже не планировали.

...исполнявшихся на специальном железе.

Прикинь, в то время почти всё железо было «специальное». Как говорил в свое время CEO IBM (?), во всём мире есть рынок где-то для пяти компьютеров.

Ты только забыл упомянуть, что потом весь этот софт чудесно запускался на попсовом железе. Но мало кому это было интересно лет так десять после AI Winter.

В общем, грамотный троллинг требует знания матчасти

Ага

которым ты не обладаешь.

На себя посмотри.

P.S. В отличии от тебя, я не троллю.

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

Для любого ИНТЕРПРЕТИРУЕМОГО языка. Хочешь подобное сделать для сишечки - придется писать интерпретатор сишечки.

это ж надо быть таким идиотом :D

«интерпретируемый язык» и REPL - вещи ортогональные

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

нет вообще ни разу. наоборот жалко. а на fpga нельзя такого сделать? ну схему там например?

Можно, но зачем? И так отлично работает.

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

«интерпретируемый язык» и REPL - вещи ортогональные

Сейчас на тебя набросится безграмотная школота и порвёт на куски.

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

Прикинь, в то время почти всё железо было «специальное».

В начале 80-х? Нет, тогда почти всё железо было уже ширпотребным.

Как говорил в свое время CEO IBM (?), во всём мире есть рынок где-то для пяти компьютеров.

Ага, за 30+ лет до Symbolics.

P.S. В отличии от тебя, я не троллю.

После

rtvd> Наконец-то и в open source это пришло. И столетия не прошло. После всяких там Singularity

rtvd> В Windows её не пихали и думаю даже не планировали.

В это невозможно поверить.

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

Ускорение разработки драйверов в 6 раз на лицо.

Не путай скорость разработки и скорость набора кода, зависимость там далеко не прямая.

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

Это всё-таки не язык программирования.

Не язык программирования, да. Но язык описания аппаратного интерфейса устройства. Мой комментарий был скорее ответом гражданам в этом треде, которые говорили «о, а как же из скриптового языка писать в порты/io-обасти???777». Ну и как пример хорошего высокуровневого описания аппаратного интерфейса.

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

А теперь расскажи это погромистам на с/с++ где даже многие стандартные функции принимают в качестве аргумента не значение а указатель (ибо скорость нах, и пох на ошибки!)

Кому-кому? Если выразить моё мнение об этих языках в частности и о динамической линковке, нежданно негаданно подменяющей системные либы при установке пользовательского ПО (с чем в винде боролись а в линуксе это рулёз: покупайте рхел десктоп + набор компиляторов если не хотите чтобы обновления поломали ваш бизнес), в целом, то культурный вариант фразы будет звучать слишком витеевато.

Napilnik ★★★★★
()
Последнее исправление: Napilnik (всего исправлений: 1)
Ответ на: комментарий от tailgunner

В это невозможно поверить.

Очень даже возможно, даже в самой MS есть нестыковки между подразделениями (планировал ли MSSQL использовать WinFS?), а это вообще ресерч...

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

а зачем тогда лисп машины хотели делать тогда ещё?

pawnhearts ★★★★★
()

NetBSD-6.0.1-dreamcast.iso

Эх... Операционки под дримкаст сейчас найти проще самих дримкастов...

border-radius
()

Кто нибудь писал на Lua что-нибудь низкоуровневое? А я писал, и скажу, что на сях минимум в 5 раз легче.

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

это смотря какой объем кода. Писать простые циклы и подпрограммы естенственно проще на сях. А если нужно поддержать железку типа модема с его кучей состояний и залипами, то простите...

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

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

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