The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"В ядро NetBSD добавлена поддержка расширений на языке Lua"
Отправлено opennews, 18-Окт-13 23:35 
В состав ядра текущей экспериментальной ветки NetBSD, на базе которой формируется выпуск NetBSD 7, включен (http://mail-index.netbsd.org/source-changes/2013/10/16/msg04...)  модуль с реализацией виртуальной машины Lua, добавляющий в ядро поддержку встраиваемого скриптового языка программирования, отличающегося  эффективной работой с памятью, компактностью и высокой производительностью (применяется JIT-компиляция). Поддержка Lua в ядре позволит (https://archive.fosdem.org/2013/schedule/event/lua_in_the_ne...) разрабатывать динамически загружаемые расширения, изменяющие поведение существующих систем или создающие новые возможности.

Использование расширений на языке Lua оправдано в ситуациях когда важна скорость создания готового решения и не требуется высокая производительность. Например, модуль будет полезен при необходимости  быстро реализовать нужную функциональность,  опробовать на практике запланированные к реализации идеи или подготовить скрипты для отладки подсистем ядра. В качестве примеров расширений упоминаются (http://netbsd-soc.sourceforge.net/projects/luakern/) скрипты для опробования разных алгоритмов работы планировщика задач, механизмов QoS, создание расширенных обработчиков сетевых пакетов и изощрённых сетевых фильтров, определение собственных правил управления энергопотреблением процессора, создание прототипов драйверов устройств.

<center><a href="https://archive.fosdem.org/2013/schedule/event/lua_in_the_ne... src="https://www.opennet.ru/opennews/pics_base/0_1382123741.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>


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


URL: https://news.ycombinator.com/item?id=6562611
Новость: https://www.opennet.ru/opennews/art.shtml?num=38203

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру