Комментарии 23
Вам нравится программировать на языке, созданном в 1970-е, он наполняет вас чувством глубокого удовлетворения, когда можно сделать буквально что угодно – и оно заработает?
Справедливости ради стоит заметить, что можно использовать язык, созданный в 2006-ом:
Справедливости ради, не взирая на попытки rust-оманов таки пропихнуть это в ядро, версия v9 будет только в версии ядра 6.x, то есть:
на данный момент это публичная бета;
туториалов по этому (в отличие от написания модулей на С) нет;
время жизни этой поделки (просто rust-враппер, ещё одна абстракция над С) не известно (rust-for-linux-kernel ещё не родился, в отличии от С) (see: 1 , 2:
Практическое применение эффекта Линди — оценка явлений с точки зрения их пригодности к применению в реальных условиях. То, что существует долго, доказывает свою «линдиустойчивость» и, следовательно, заслуживает доверия.
стоит ли начинать бизнес/долгосрочный-проект на rust-for-linux - вопрос открытый: кроме хайпа, на этом поприще ничего серьёзного не создано (имхо, скорее всего, к счастью);
Спасибо большое за статья, но можете пожалуйста поправить вставки с кодом?
«Дефиниция» модуля ядра это за гранью.
Статья хорошая, но про Hello World и каркас драйвера написано уже очень много туториалов. Обычно на этом все и останавливается. Если вам не трудно, напишите пожалуйста про работу с железом, обработку прерываний, управление памятью в пространстве ядра. Очень интересно все, что связано с низкоуровневым программированием под Linux, но информации в сети очень мало.
В этом может помочь чтение драйверов и подсистем в самом ядре. Многие из них и правда простые, ну и https://elixir.bootlin.com/linux/latest/source очень помогает в поиске и навигации.
Вместо KERN_* давно уже принято использовать pr_* или pr_*_ratelimited.
Да и стиль оформления кода нестандартный - хотя бы через checkpatch прогоните.
Приготовился слушать про кюбиты, Хаскель и лямбда ичисление. Не дождался. /sarcasm-off
По-моему, Linux для микроволновки - это оверкилл.
Посмотрите любой низкоуровневый RTOS для МК.
Думаю измените свое мнение.
Необходимости то может быть и нет. Но цена механического цикломата намного, намного больше, чем цифрового.
В частности, за счёт материалоёмкости и универсальности последнего - достаточно изменить ПО для каждой модели.
С учётом того, как развивается IoT то уже нет.
Линукс идеальная система для встройки, работает практически на любом тостере.
И ещё один немаловажный аспект - бесплатная.
Просто поделись своим кодом с другими и все, это обеспечивает корпоративную поддержку с одной стороны и развитие проекта с другой.
Я кстати считаю решение Линуса остаться на GPLv2 правильным.
Если бы ядро ушло на GPLv3 то про поддержку корпоративного сектора можно было бы забыть.
Делится своим кодом с другими - ок, win win.
Делится контролем за своими железками для многих неприемлемо.
Это моё личное мнение, оно может не совпадать с вашим и просьба не триггерится на это.
Кайф!
Спасибо.
Вот, к примеру, эта статья, судя по оригиналу, написана в январе 2021 года. А ядро, используемое автором на его компе, было, судя по всему, не самое свежее. В результате он приводит исходники, которые будут напрочь отказываться компилироваться на последних ядрах.
Я ни разу не преподаватель, поэтому не знаю, как правильно подавать подобный материал. Но в таком виде его полезность видится мне сомнительной.
Электронная начинка МКС, благодаря которой станция не падает на Землю смертельно опасным и разрушительным огненным болидом — конечно же, тоже работает под Linux.
Конечно же это не так. Линуксы стоят только на ноутах, ни один из которых к управлению полетом отношения не умеет.
Основные системы МКС работают под управлением wxWorks либо вообще без ОС.
Пишем наш первый модуль для ядра Linux