The OpenNET Project / Index page

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

Lunatik - инструментарий для создания в ядре Linux обработчиков на языке Lua

22.04.2024 09:10

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

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

В Lua-скриптах можно использовать подмножество библиотечных функций и возможностей, ограниченное в силу специфики работы внутри ядра. Например, в коде не поддерживается выполнение операций с плавающей запятой, нельзя использовать библиотеки io и os, а также недоступны многие функции библиотеки math. В C API не поддерживаются функции luaL_Stream, luaL_execresult, luaL_fileresult, luaopen_io и luaopen_os.

Среди возможностей утилиты командной строки можно отметить команды для загрузки, выгрузки и перезагрузки модулей Lunatik в ядре, вывод состояния загруженных модулей, просмотр списка выполняемых в ядре скриптов, запуск скриптов, создания и остановка runtime-окружений Lua в ядре, использование интерактивной оболочки REPL (Read–Eval–Print Loop).

Проектом также предоставляется набор примеров, позволяющих оценить возможности Lunatik. Например, доступны скрипты с реализацией драйвера символьного устройства, сетевого сниффера с возможностью ведения журнала с MAC-адресами, БД для хранения данных в виде ключ/значение, сервера для протокола ECHO, кейлоггера для ведения лога нажатых клавиш, блокировщика клавиатуры (после нажатия "↑ ↑ ↓ ↓ ← → ← → LCTRL LALT" ядро перестаёт обрабатывать нажатия клавиш вплоть до повторного ввода данной последовательности), драйвера для мониторинга за системными вызовами, сервиса маршрутизации, различных надстроек над подсистемами Netfilter и XDP.

  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
  2. OpenNews: Открыт код Luau, варианта языка Lua с проверкой типов
  3. OpenNews: Релиз языка программирования Lua 5.4
  4. OpenNews: Компания Microsoft опубликовала реализацию Lua VM, написанную на языке Go
  5. OpenNews: Представлена распределённая ОС Node9, сочетающая технологии Inferno и язык Lua
  6. OpenNews: В ядро NetBSD добавлена поддержка расширений на языке Lua
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/61040-lunatik
Ключевые слова: lunatik, kernel, linux, lua
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (171) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, M (?), 09:22, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –20 +/
    lua - непригодный язык. Лучше бы WASM-интерпретатор или jit в ядро засунули.
     
     
  • 2.2, Аноним (2), 09:28, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +12 +/
    > lua - непригодный язык. Лучше бы WASM-интерпретатор или jit в ядро засунули.

    Нормальный lua, просто не место в ядре всякой шляпе, ониб ещё JS туда затолкали!

     
     
  • 3.155, Аноним (155), 01:48, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты не поверишь...
    https://github.com/mildsunrise/node_bpf
     
     
  • 4.205, Аноним (-), 21:30, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Ты не поверишь...
    > https://github.com/mildsunrise/node_bpf

    - Новый продукт - Node WTF!
    - WPF?!
    - BPF!

     
  • 3.191, YetAnotherOnanym (ok), 21:51, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Извини, но разница между счётным множеством и континуумом - принципиальна и неустранима, поэтому язык, в котором изначально отсутствует целый тип (который позже примотали изолентой) не может считаться нормальным.
     
     
  • 4.193, n00by (ok), 09:52, 24/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В нормальных алгорифмах Маркова нет целого типа. Зато возможна длинная арифметика, которую к целым типам прикручивают изолентой.
     
  • 2.6, Аноним (6), 09:36, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Зато безопасный. Неизвестно что в твой васм запихнут, а Джит это дыра в безопасности бай дизайн.
     
     
  • 3.77, scriptkiddis (?), 12:29, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да ну да, а ebpf это нормально это можно.
     
     
  • 4.165, Аноним (-), 11:34, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну да ну да, а ebpf это нормально это можно.

    Ну так и сделай транслятор WASM -> EBPF, и хрен кто такой ход конем оспорит, прикинь? :))

     
  • 2.18, EULA (?), 09:59, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Java, Java должна быть в ядре.
    И Qml
     
     
  • 3.126, Аноним (126), 17:46, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Помню в 90х даже были пк-приставки к телеку-монитору на джаве

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

     
     
  • 4.149, Я (??), 21:51, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    иногда даже быстрее, но памяти в любом случае больше кушает.
     
  • 4.152, Ivan_83 (ok), 00:13, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это не так работает В том смысле что эволюционно так получилось что есть язык... большой текст свёрнут, показать
     
     
  • 5.158, Аноним (158), 04:03, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ты устарел, Иван 83. Вроде версия большая, а реальности не понимаешь.

    Язык высокого уровня - питон, а низкого - tensorflow.

     
     
  • 6.175, Аноним (-), 13:53, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Ты устарел, Иван 83. Вроде версия большая, а реальности не понимаешь.
    > Язык высокого уровня - питон, а низкого - tensorflow.

    И как, хорошо на этом ядерные модули писать получается? Примеров дадите?! :)

     
  • 5.166, Аноним (-), 11:37, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Универсального языка для всего сразу как то не получается, в основном потому что
    > ультимативная производительность предполагает ручное управление ресурсами и почти
    > отсутствие абстракций над железом.

    Ну вот хруст на горизонте нарисовался. Может в высокоуровневые конструкции, но при острой нужде позволяет и околосишные фокусы откалывать. И без окаменевших сишных глупостей типа "угадай какого вообще размера int и корректно ли на этой платформе вообще работает тот код?!"

     
     
  • 6.187, Ivan_83 (ok), 17:02, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Гниль имеет слишком сложный синтаксис, и расвесистую систему зависимостей как у нодыжс, тяжёлый космпелятор не везде работающий.
    Это всё огромные минусы, а какого размера int мало кого интересует.
     
     
  • 7.206, Аноним (-), 21:54, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот как бы да Но все остальные оказались еще хуже - а дожать сишку до кондиц... большой текст свёрнут, показать
     
  • 6.196, Аноним (196), 09:23, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ок, а какие-то реальные достоинства будут? ООП там?
     
  • 2.27, Ivan_83 (ok), 10:19, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +9 +/
    LUA очень даже годный.
    Там порядка 10к строк всего на С, без всяких лишних зависимостей.
     
     
  • 3.153, Аноним (153), 01:13, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Дело не в реализации, а в самом языке. Массивы с единицы и производительность улитки на списках.
    Разве что не пользоваться структурами Lua
     
     
  • 4.160, Ivan_83 (ok), 04:22, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    В Visual Basic были массивы с 1 по дефолту, и ничего От LUA не требуется боль... большой текст свёрнут, показать
     
     
  • 5.163, Аноним (163), 09:51, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    где теперь Visual Basic Бывают языки, на которых удобно программировать А ... большой текст свёрнут, показать
     
     
  • 6.186, n00by (ok), 15:49, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    VB умер, поскольку MS его заменила на C#. И какие там проблемы перевести строковое представление шестнадцатеричного числа в целое, кроме неумения написать тривиальный цикл? На VBS наверняка и сейчас что-то пишут, просто потому что он есть в Windows из коробки и может больше чем JS в том же WSH.
     
     
  • 7.189, Ivan_83 (ok), 17:10, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    VBA остался в оффисе неизменным, VBS это немного другое всё же.
     
     
  • 8.194, n00by (ok), 10:06, 24/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    VBA это не VB, насколько понимаю VBS действительно другое - по сути встроенный ... текст свёрнут, показать
     
  • 6.188, Ivan_83 (ok), 17:09, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    VB закопали в пользу C# и Vb.net, не надо думать что VB умер сам из за каких то деффектов.

    Первой ласточкой было то что VB6 имел не встроенную справку а она какая то отдельная была, надо было найти и скачать, а особых профитов по сравнению с VB5 там не было.

    Что касается парсинга чисел - это ваше мнение.
    Для меня и в С такого парсинга нет, я свой наколхозил и забыл про такую проблему уже 20 лет как.

    Питон тоже обречён.
    Прототипировать в нём легко но эксплуатировать такое нельзя, оно просто не поддерживаемое.
    Тот же хом асистант почти не ставят отдельно, только в докере или сразу образ ОС, потому что это поделие работает только на машинах разрабов.

     
     
  • 7.195, Аноним (195), 01:06, 25/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Для меня и в С такого парсинга нет, я свой наколхозил

    strtol, C89.

     
  • 7.201, randomize (?), 10:02, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Питон тоже обречён.

    Прототипировать в нём легко но эксплуатировать такое нельзя, оно просто не поддерживаемое.
    А поподробнее?

     
  • 4.190, Аноним (190), 20:56, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Массивы с единицы

    Как будто что-то плохое.

    > производительность улитки на списках.

    «Чи-гоо б…?!?» ©

    На всякий, в Lua нет списков. Есть таблицы. И они ОЧЕНЬ шустрые. Особенно когда это не key-value, а  массив. Так что либо давай поподробнее (с чем сравнивать и что вообще сказать хотел) и с пруфами, либо балабол.

     
  • 2.38, Аноним (38), 10:35, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >jit в ядро засунули

    Уже засунули. eBPF называется.

     
  • 2.65, Аноним (65), 11:38, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И пакетный менеджер для NPM сразу в ядро, чтоб сам пакеты обновлял.
     
  • 2.72, Бывалый Смузихлёб (ok), 11:47, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    многие лютейшие дыры начинаются именно с JIT
    Луа и сама по себе годится разве что для игровых скриптов, а уж с джитом да в линухоядре. Зачем так париться, проще уж один на всех логин-пароль для рута гвоздями прибить
     
     
  • 3.82, Аноним (82), 12:59, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    тебе же в новости написали: для создания кейлоггеров. чтобы битки твои тырить проще было
     
  • 2.84, _kp (ok), 13:20, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Lua отличный язык как внутренний скниптовый движок, и для встраиваемых устройств, не тяжелый, и не совсем примитивный.
    В тоже время Lua имеет несовместимости, делающие его неудобным для обшего использования.

    Что же касается интерпритаторов в ядре, а не в системе, это наверное последстия легализации марихуаны, и иных нехороших излишеств.

    Как пример, где Lua похоронил весь проэкт, это Minetest, вроде бы быстрый движок на с++, что могло пойти не так.. А то что с самими играми, которые как раз на Lua, тормозит не по детски на топовом железе. Да и стабильность Lua смехотворная, именно из за несовместимости версий скриптов, о чем сказано в самом начале.


     
     
  • 3.113, Аноним (113), 16:11, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вообще-то игры на lua в движке Minetest достаточно быстро работают (не все но многие). Я говорю как тот кто сам активно в них играет. В любом случае Lua точно не "похоронил" Minetest. Minetest хоть и не ориентрован на топовое оборудование но в последнее время эта ситуация улучшается.
     
  • 3.197, Аноним (196), 09:31, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Чтоб все так жили как Minetest "похоронили". Наверное в настоящий момент это open-source игра с самым большим и активным комьюнити. И про производительность чушь полная, нужно наверное сотню модов навешать чтобы кора дуба стала тормозить.
     

     ....большая нить свёрнута, показать (36)

  • 1.8, Аноним (8), 09:38, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +15 +/
    > после нажатия "↑ ↑ ↓ ↓ ← → ← → LCTRL LALT" ядро

    Сделает фаталити

     
     
  • 2.11, Аноним (11), 09:41, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Сделает фаталити

    так что это конами код, а не фаталити

     
  • 2.176, Аноним (-), 13:56, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> после нажатия "↑ ↑ ↓ ↓ ← → ← → LCTRL LALT" ядро
    > Сделает фаталити

    А что, как раз - только представь себе что у тебя в самый интересный момент отвалилась клава в системе! Теперь попробуй угадать как ее включить назад без нажатия ресета! :)

     

  • 1.10, Fracta1L (ok), 09:39, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Видимо, с притоком свежих программистов на сишке всё очень плохо.
     
     
  • 2.12, KroTozeR (ok), 09:44, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну, это ж больно, это ж думать надо.
     
     
  • 3.20, Аноним (20), 10:09, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как случайно очередное rce в ядро протащить?
     
  • 3.22, Аноним (-), 10:13, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну-ну.
    Чтобы заставить работать любой нормальный язык в связке с сишкой, думать нужно на порядок больше, чем велосипедить очередной сплит строк на чистой сишке.
    Тут скорее вопросы, хотя, это даже не вопросы, к сишникам - "почему они не могут осилить ничего кроме сишки" и "когда перестанут выходить за границы буфера"?
     
     
  • 4.28, Ivan_83 (ok), 10:20, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вот LUA можем.
    C+LUA и больше особо ничего не надо.
    Даже make системы есть на LUA.
    Так что у нас всё самодостаточно.
     
     
  • 5.36, KroTozeR (ok), 10:25, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Можно просто отдать ЯП право управления компилятором и задачу прекомпилятора. Сейчас пока такое умеет только Zig, но это не значит, что им всё ограничится. Там вообще ничего кроме самого ЯП и его окружения не нужно.
     
     
  • 6.46, Ivan_83 (ok), 10:55, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не уверен что правильно понял "отдать ЯП право управления компилятором".

    Помнится quick basic, Visual Basic - вполне себе и ЯП и компилятор были в одном флаконе что называется. У последнего ещё и code style с принудительным автоформатером был, потому даже самые "одарённые" писали так что при чтении кровь из глаз не текла ручьём.

     
     
  • 7.62, KroTozeR (ok), 11:31, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Все операции, вызываемые обычно через системы сборки, умещаются в исходник на Zig с применением конструкций языка. В такой ситуации CMake — попросту ненужный бесполезный громоздкий наворот.
     
  • 6.57, n00by (ok), 11:19, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Можно просто отдать ЯП право управления компилятором и задачу прекомпилятора. Сейчас пока
    > такое умеет только Zig

    В смысле, Nemerle помер?

     
     
  • 7.61, KroTozeR (ok), 11:28, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А он ещё жив? К тому же, .Net — это же никак не про фундаменталку.
     
     
  • 8.67, n00by (ok), 11:39, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не знаю, жив ли, но появился задолго до Zig Ну и на Net вполне написали соверш... текст свёрнут, показать
     
  • 8.90, Аноним (65), 13:45, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Mono в ядро Зато сколько сразу языков ... текст свёрнут, показать
     
  • 7.168, Аноним (168), 12:35, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> Можно просто отдать ЯП право управления компилятором и задачу прекомпилятора. Сейчас пока
    >> такое умеет только Zig
    > В смысле, Nemerle помер?

    Нельзя убить то что никогда не жило. Эта штука всегда была где-то рядом с singularity, микроядрами и прочими концепт-карами. Много вы концепт каров на улице видели?

     
     
  • 8.183, n00by (ok), 15:31, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Я не понял, к какому из языков это относится Разработка языка Nemerle началась ... текст свёрнут, показать
     
  • 4.37, KroTozeR (ok), 10:31, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем для задач Си применять что-то кроме него, если самого Си хватает с головой? Поделие, которое очень плохо вылизано под такие задачи не должно иметь приоритета только за счёт "новизны". Понятно, что у самого Си есть проблемы, которые в разной степени купируются проектами GoLang, Rust, Zig, Num  и т.п., но когда предлагают замещать Си Python-ом, это уже какой-то испанский стыд...
     
  • 4.97, Аноним (126), 14:36, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >почему они не могут осилить ничего кроме сишки

    А зачем еще что-то кроме сижки? Си это идеальный язык, минималистичный
    Но с большой силой приходит и большая ответсвенность
    То что некоторые допускают уязвимости в своих программах, сугубо ответсвенность писарей этих самых программ
    Ей богу, надоело уже слушать эти все колкости в сторону языка

     
     
  • 5.101, Аноним (-), 14:48, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, от палки-копалки наши предки отказались, лопата осталась, но добавился еще э... большой текст свёрнут, показать
     
     
  • 6.105, Аноним (105), 15:11, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это ты точно про Си, а не про раст А язык тут причем Все вопросы к автору комп... большой текст свёрнут, показать
     
     
  • 7.117, Аноним (117), 16:50, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Конечно Скажи спасибо комитету за UB и ID Так разрабы компилятора все делали п... большой текст свёрнут, показать
     
     
  • 8.154, Аноним (154), 01:37, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо им, что есть стандарт У некоторых и такого нету, а потому там любое пов... текст свёрнут, показать
     
  • 6.109, Аноним (105), 15:28, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > С кодом, который на разных версиях компиляторов выдает разные результаты.

    Можно пример?

     
     
  • 7.116, Аноним (117), 16:40, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да легко - берешь любой код с сишным UB или implementation defined и приехали.

    int main()
    {
        int i=7;
        i = i++ * i++;
        return i;
    }

    По ссылке godbolt.org/z/s3Kve4chY 6 компиляторов и целых 3 (ТРИ) разных результата.
    GCC 4.8 - 56, GCC 4.7 - 51.
    И ведь все по "стандарту" сделано, компиляторы только какие-то ворнинги сыпет, и то, не все компиляторы.

     
     
  • 8.119, Аноним (105), 17:15, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ля, я думал там что-то настоящее, то что имеет место быть в реальном коде и даёт... текст свёрнут, показать
     
     
  • 9.121, Аноним (-), 17:32, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вот тебе пример настоящего и вполне реального кода opennet ru opennews art shtml... большой текст свёрнут, показать
     
     
  • 10.123, Ivan_83 (ok), 17:41, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    То что вы показали это фикс для use-after-free, никак не UB ... текст свёрнут, показать
     
  • 9.130, Аноним (-), 18:02, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А т е все ок, никаких проблем нет Я правильно понял Ахаха, а то что Компи... текст свёрнут, показать
     
     
  • 10.132, Аноним (105), 18:09, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Я не понимаю что ты пытаешься сказать, сорри То что в расте overflow проверяетс... текст свёрнут, показать
     
     
  • 11.136, Аноним (-), 18:22, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема не в том, проверяется он или нет А в том что поведение неопределенное ... текст свёрнут, показать
     
     
  • 12.138, Аноним (105), 18:27, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    потому что простота реализации и лаконичность ... текст свёрнут, показать
     
     
  • 13.139, Аноним (-), 18:34, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Бот что-то лютует Хз чего он скрыл твой коммент Простота реализации и лакон... текст свёрнут, показать
     
  • 11.137, Аноним (-), 18:26, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    1 UB и прочие каки в стандарте приводят к ошибкам 2 Такой код пишется в прод... текст свёрнут, показать
     
     
  • 12.151, Аноним (151), 23:54, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы был такой безопасный язык, который ломал обратную совместимость с Си ров... текст свёрнут, показать
     
  • 9.131, Аноним (-), 18:08, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вот тебе без UB int main int i -42 i i 5 return i Rig... текст свёрнут, показать
     
     
  • 10.141, n00by (ok), 19:01, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Порадуете примером из жизни, где бы такое понадобилось Что бы не считать за неп... текст свёрнут, показать
     
  • 10.198, Аноним (196), 09:44, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    И что из написанного здесь тебе не понятно ... текст свёрнут, показать
     
  • 8.120, Аноним (105), 17:25, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ясно, ссылку можно даже не открывать Именно, что по стандарту и результат соотве... текст свёрнут, показать
     
     
  • 9.122, Аноним (-), 17:41, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Я выше скинул ссылку на реальную уязвимость из ХОрга СТАНДАРТ 1 Образец, к-ром... большой текст свёрнут, показать
     
     
  • 10.128, Аноним (105), 17:47, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ок, напиши такой же код на расте и проверим на разных версия раста Хотя дава... текст свёрнут, показать
     
  • 8.125, Аноним (105), 17:43, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ага, а в расте ваще нету префикс постфикс инкремента То есть ваще нету Preincre... текст свёрнут, показать
     
     
  • 9.133, Аноним (-), 18:12, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А тут уже философский вопрос Добавить фичу и заодно сделать UB, который в общ... текст свёрнут, показать
     
     
  • 10.135, Аноним (105), 18:21, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, я что сказать то хотел Спасибо, что не грубишь, как большинство тут ... текст свёрнут, показать
     
  • 8.177, Аноним (-), 13:58, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Как это - по стандарту Если в стандарте сказано что эт UB и компилеря варнининг... текст свёрнут, показать
     
     
  • 9.178, Аноним (-), 14:14, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А если не сыплят Потому что в стандарте про варнинги ничего не сказано Если ... текст свёрнут, показать
     
     
  • 10.181, Аноним (-), 14:48, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А если рельсу c суровые сибирские мужики vs лесопилка Потому что господа ... текст свёрнут, показать
     
     
  • 11.184, Аноним (-), 15:37, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так это просто еще одна проблема ИСО стандраты на который так неистово нафа... текст свёрнут, показать
     
     
  • 12.207, Аноним (-), 23:54, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А что, я могу это хрустикам вернуть с gccrs который пока еще без боров-чекера ... большой текст свёрнут, показать
     
  • 6.169, Аноним (-), 12:54, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да вот блин, вскопать грядку большим экскаватором - можно, но дестроя многовато ... большой текст свёрнут, показать
     
     
  • 7.174, Аноним (-), 13:40, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Так копай маленьким Они же тоже существуют А еще есть мотоблоки Тоже оптимиза... большой текст свёрнут, показать
     
     
  • 8.179, Аноним (-), 14:19, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, вот, хруст какой - может и имеет шансы вписаться в эту нишу Время покажет ... большой текст свёрнут, показать
     
  • 3.91, Fracta1L (ok), 13:46, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    При программировании на сишке нужно выполнять уйму ручной работы.

    А уйма ручной работы как раз оставляет меньше времени на думанье.

     
     
  • 4.134, Аноним (-), 18:14, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А уйма ручной работы как раз оставляет меньше времени на думанье.

    Проблема не только в думаньи. А во внимательности, которая тоже ресурс.
    Большая часть дыр в ядре, если отбросить теории заговора, это просто невнимательность.
    Но пока что не изобрели усилитель внимательности для мясных мешков
    (вещества не предлагать, такое ощущение что половина ядра под ними написана)

     

     ....большая нить свёрнута, показать (50)

  • 1.16, Аноним (16), 09:52, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Кто сказал NetBSD?
     
     
  • 2.33, Аноним (33), 10:23, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В какой БЗДе используют Lua? В НетБЗДе? Там он навроде системный комфигуратор?
     
     
  • 3.40, Сообщество (?), 10:40, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    https://www.opennet.dev/opennews/art.shtml?num=38203
     
  • 3.60, Аноним (105), 11:25, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    https://man.netbsd.org/intro.3lua
     
  • 3.63, n00by (ok), 11:32, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    https://github.com/luainkernel/lua-netbsd
     
  • 3.124, Ivan_83 (ok), 17:42, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В FreeBSD LUA используется в загрузчике, кажется вместо фортрана :)
     
     
  • 4.142, n00by (ok), 19:02, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вроде бы там был Форт?
     
     
  • 5.144, Аноним (105), 19:52, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    уже больше 10 лет как нету
     
     
  • 6.146, Аноним (146), 20:40, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > уже больше 10 лет как нету

    Какой у вас там, в будущем, курс битка?
    https://github.com/lattera/freebsd/blob/master/sys/boot/forth/menusets.4th
    https://man.freebsd.org/cgi/man.cgi?loader(8)


     
     
  • 7.147, Аноним (105), 21:23, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Хм... а я что-то помнил, что переписали загрузчик на Си и форт вообще выкинули из базовой системы. Ок, все по-прежнему значит :)
     
     
  • 8.148, Аноним (146), 21:47, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, луа для скритухи те же загрузочные менюшки с 12 версии по умолчанию, а фор... текст свёрнут, показать
     
     
  • 9.156, Аноним (154), 01:48, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Просто Линукс -- активно развиваемое ядро, а не погрызанный копролит В таком по... текст свёрнут, показать
     
     
  • 10.159, Ivan_83 (ok), 04:13, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не в этом дело, а в длительной поддержке У вас это есть в редхэте за деньги ... текст свёрнут, показать
     
  • 5.170, Аноним (-), 13:05, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Вроде бы там был Форт?

    Форт, фортран... некроманская языка - цука сложная, хрен прочухаешь, поразвели, понимаешь, названий!

     
     
  • 6.185, n00by (ok), 15:39, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Оба эти языка классика. ВсеЗнают™ первый из курса истории ЯП, а второй из анекдота:

    Речи тайна Йоды магистра раскрыта - на Форте программист просто старый оказывается он.

     

  • 1.17, Аноним (17), 09:59, 22/04/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –3 +/
     
     
  • 2.21, Аноним (6), 10:12, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +3 +/
     
  • 2.25, ХрюХрю (?), 10:16, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
     
  • 3.42, Пряник (?), 10:50, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
     
  • 4.54, n00by (ok), 11:15, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 4.199, Аноним (196), 09:54, 26/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 5.204, Пряник (?), 11:50, 26/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.96, Аноним (96), 14:31, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.100, Аноним (105), 14:47, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 4.157, Аноним (154), 01:53, 23/04/2024 Скрыто ботом-модератором     [к модератору]
  • +3 +/
     
     
  • 5.192, Аноним (192), 23:42, 23/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 6.200, Аноним (196), 09:57, 26/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.172, Аноним (-), 13:10, 23/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 2.31, Ivan_83 (ok), 10:22, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +3 +/
     
     
  • 3.51, Аноним (17), 11:05, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.127, Ivan_83 (ok), 17:46, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
     
  • 5.143, morath (?), 19:50, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 6.145, Аноним (105), 19:55, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.47, Пряник (?), 10:58, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.86, Аноним (65), 13:26, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 2.182, Аноним (182), 15:17, 23/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     

     ....ответы скрыты (20)

  • 1.19, nonon (?), 10:04, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    после нажатия "↑ ↑ ↓ ↓ ← → ← → LCTRL LALT" ядро перестаёт обрабатывать нажатия клавиш

    Это типа с любого места можно ввести?
    Геймеры негодуют

     
     
  • 2.23, Аноним (6), 10:13, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да.
     

  • 1.24, Аноним (24), 10:13, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Залипание клавиш по удержанию шифт куда привычнее.
     
  • 1.26, Ivan_83 (ok), 10:17, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Годнота!
    Все ограничения - мелкие и не существенные по сравнению с тем что доступно.
     
     
  • 2.43, Аноним (6), 10:50, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Где применишь такое добро, мне может тоже надо.
     
     
  • 3.49, Ivan_83 (ok), 11:00, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Пока ни где, я не пользователь линуха в явном виде.

    Но это будет серьёзый буст и для линуха и для луа, они оба от этого выиграют.

     
     
  • 4.74, нах. (?), 12:13, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    да, троянцев можно понаписать вагон и маленькую тележку.
    (тем более что уже готовы в общем-то)

     

  • 1.44, Анонус (?), 10:55, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    eBPF можно выкидывать?
     
     
  • 2.68, Аноним (65), 11:40, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем? Наоборот, надо добавлять интерпретаторов и JIT-компиляторов разных.
     

  • 1.48, n00by (ok), 11:00, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > сетевого сниффера с возможностью ведения журнала с MAC-адресами
    > кейлоггера для ведения лога нажатых клавиш
    > блокировщика клавиатуры

    Зачёт.
    И название подходящее.

     
     
  • 2.76, Аноним (76), 12:29, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Название прямо так намекает, что система по ночам будет вести себя как типичный санамбула.
     

  • 1.53, Аноним (53), 11:13, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    лучше б moonshine
     
  • 1.73, Аноним (65), 11:51, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Следующий шаг за Латиноамериканским отделением Фонда свободного ПО - добавление в полностью свободное ядро интерпретатора Guile.
     
     
  • 2.94, Столлман был прав (-), 14:11, 22/04/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.112, Аноним (-), 16:00, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Следующий шаг за Латиноамериканским отделением Фонда свободного ПО - добавление в полностью свободное ядро интерпретатора Guile.

    Разве они умеют что-то добавлять?
    Вроде все новости про них были про что-то выпилиное - софт, дрова, прошивки и тд
    А тут целый интерпретатор добавлять...

     

  • 1.75, Аноним (75), 12:13, 22/04/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     

     ....ответы скрыты (4)

  • 1.80, topin89 (ok), 12:45, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Глянул мельком -- это же хороший инструмент для быстрого прототипирования. На домашние компы такое лучше не ставить, но разрабам модулей ядра вполне может пригодится
     
     
  • 2.87, Аноним (65), 13:30, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Особенно в датацентрах пригодится ;)
     

  • 1.81, Аноним (82), 12:57, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Быстро пишем, медленно работает.
     
     
  • 2.83, Аноним (24), 13:11, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    С Растом не прокатило,никто модулей не написал,а на этом может быть и очень даже напишут.
     
     
  • 3.89, Аноним (89), 13:39, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    На раст же переписали же пару 100 строчных драйверов. Только, у меня правда ощущение, что это диверсия, чтобы слить конкурентов. Корпорации постоянно заявляют, будто они очень заинтересованы в расте и "используют" его повсюду, а на самом деле весь код на расте очень оперативно выкидывается и заменяется нормальным, т.е. не является сколько-нибудь ключевым.
     
     
  • 4.95, ck (?), 14:27, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    это один из которых хэдер переписали на растовский а реализация на сях осталась?
     
     
  • 5.162, нах. (?), 08:44, 23/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    она помечена как unsafe, поэтому ее использование стало - безопастным!

    Хруст пока не очень подходит для такой скучной и неинтересной работы как управление контактиками для светодиодика, понимать надоть!

     
  • 4.98, А в это время (?), 14:37, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А в это время параллельные новости, скажем, про Pingora помножают на ноль весь ваш комментарий.
     
     
  • 5.102, Аноним (105), 14:49, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это твоя пингора в ядре что ли? Что ты тут на ноль помножил?
     
  • 5.103, Аноним (89), 14:50, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Фреймворки и наколенные прокси это замечательно, но это не продукты и не ПО.
     
  • 5.104, Аноним (105), 15:03, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да это обычный хайп. Так было с джавой, с go, теперь с растом. Все это суета, всё это пройдет, а Си останется. Смирись и прими это
     
     
  • 6.107, Аноним (107), 15:21, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Java тоже останется в банковском секторе, как замена бессмертного Кобола. Каждому своя ниша.
     
  • 5.106, Аноним (65), 15:17, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот как мы увидим практическую пользу этой Pingora, так только тогда она перестанет помножать ваш комментарий на ноль.
     
     
  • 6.111, Аноним (-), 15:57, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот как мы увидим практическую пользу этой Pingora,
    > так только тогда она перестанет помножать ваш комментарий на ноль.

    Так она отрабатывает каждый раз когда тебе показывают сообщение от клаудфари.
    Это же не тебе лично должна быть практическая польза.

     
     
  • 7.202, Аноним (196), 10:06, 26/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вот именно, в Cloudflare могут писать хоть на Erlang (кстати неплохая мысль), их внутренняя кухня особо ни с чем не пересекается.
     
  • 2.129, Ivan_83 (ok), 17:49, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    LUA хороший как glue язык, те когда на нём бизнесслогика а тяжёлая работа работается где то в биндингах.
    Некоторые и тяжёлую работу пытаются делать в LUA, иногда даже получается юзабельно - prosody джаббер сервер как пример.
     

  • 1.99, Аноним (126), 14:39, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Жесть, нафига интерпретатор в ядре? Итак уже интеловскими заплатками производительность херите, так еще и это
    Жесть, я в щокэ просто
     
     
  • 2.108, Аноним (65), 15:26, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да не боись ты так. Это ж сторонний проект на ShitHub (Кто все эти люди?). Это ещё не значит, что им палец не покажут.
     

  • 1.110, Минона (ok), 15:37, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    REPL в ядре это вин!
     
     
  • 2.114, Аноним (114), 16:17, 22/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > REPL в ядре это вин!

    Читайте внимательнее "Среди возможностей утилиты командной строки можно отменить .... использование интерактивной оболочки REPL (Read–Eval–Print Loop)".

     

  • 1.115, oditynet (?), 16:37, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Почему не собирается у меня он? то builds не создам в папке модуля,то циклическое залипания на сборку модуля. как вообще собрать его?
     
  • 1.150, Full Master (?), 22:43, 22/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Уже пробовали в NetBSD, хз чем оно закончилось.
     
  • 1.164, qweo (?), 11:23, 23/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Это не первый подобный проект. Во времена Linux 2.6 были патчи для Lua.
    А в NetBSD поддержка Lua-модулей - в основной ветке.
    Интересно, насколько кросплатформенный модуль ядра сложно сделать?

    В NetBSD же есть возможность запустить нужный код ядра в пространстве пользователя. Перспективная штука!

     
  • 1.203, Аноним (196), 10:19, 26/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот так тихо и незаметно Lua стала вторым после C языком в ядре Linux, сразу же обогнав Rust.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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