Тетрис в ядре Linux

Вероятно, вы знаете, что если запустить ядро Linux без корневой файловой системы или файла initramfs, то оно упадет с сообщением о панике ядра. Но возможна ли работа ядра Linux без этих, вроде бы обязательных компонентов? Ответ на вопрос - да, возможна, но использовать такие возможности в конечном продукте не стоит. При запуске ядра ему могут передаваться параметры через командную строку. Одним из параметров является rootwait , указывающий ядру на то, что нужно подождать появление корневой файловой системы. В этом случае ядро ожидает появление корневой системы, а не завершается выполнение ядра с ошибкой. Формально ничто не мешает написать модуль ядра, который взаимодействует с клавиатурой и дисплеем и временно выполняет функции пользовательского приложения, пока ядро ожидает корневую файловую систему. Пользовательским приложением может быть, например, игра Тетрис. Она из-за своей простоты в реализации и зрелищности добавляет наглядности в изучении темы и дает чувство завершенности. А мысль о том, что тетрис, работает в ядре, усиливает эффект.

https://habr.com/ru/companies/timeweb/articles/989156/

#linux #linux_kernel #linux_modules #qemu #c_language #lowlevel #ненормальное_программирование #timeweb_статьи

Тетрис в ядре Linux

Вероятно, вы знаете, что если запустить ядро Linux без корневой файловой системы или файла initramfs, то оно упадет с сообщением о панике ядра. Но возможна ли работа ядра Linux без этих, вроде бы...

Хабр

Chrome, Xfce и очень страшное кино

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

https://habr.com/ru/articles/971828/

#chrome #linux #systemd #inhibit #xfce #xfce4 #c_language

Chrome, Xfce и очень страшное кино

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

Хабр

Парсим XML и JSON на ассемблере

Отобрал для вас несколько крайне интересных, но малоизвестных проектов, реализующих работу с XML и JSON. Кроссплатформенных и без зависимостей. На чистом С и ассемблере.

https://habr.com/ru/articles/964522/

#json #xml #nasm #assembler #c_language #simd #simdjson #freebsd

Парсим XML и JSON на ассемблере

Отобрал для вас несколько крайне интересных, но малоизвестных проектов, реализующих работу с XML и JSON. Кроссплатформенных и без зависимостей. На чистом С и ассемблере. Так...

Хабр

Продвинутое использование препроцессора C/C++

Зачастую, в проектах ограничивается использование препроцессора по следующим причинам: — Он не похож на весь остальной язык; — Макросы могут возвращать неполные синтаксические конструкции, или вовсе различные, в зависимости от параметров. Ввиду перечисленных особенностей, читать код с активным использованием препроцессора зачастую становится на порядок сложнее кода без него. Со всеми его недостатками, инструмент есть в языке и достоин изучения.

https://habr.com/ru/companies/timeweb/articles/928598/

#препроцессор #c_language #макросы #метапрограммирование #c++ #C #ненормальное_программирование #функциональное_программирование #timeweb_статьи

Продвинутое использование препроцессора C/C++

Зачастую, в проектах ограничивается использование препроцессора по следующим причинам: Он не похож на весь остальной язык Макросы могут возвращать неполные синтаксические конструкции, или вовсе...

Хабр
بسّام

Реализация ГОСТ 32.12. Симметричный шифр Кузнечик

Доброго времени суток. В качестве первой статьи решил выбрать разбор реализации отечественного шифра «кузнечик». Постараюсь объяснить сложные вещи простым языком. В качестве рабочего примера моя реализация на C.

https://habr.com/ru/articles/903938/

#Крипта #криптография #Кузнечик #гост #алгоритмы #c_language

Реализация ГОСТ 32.12. Симметричный шифр Кузнечик

Доброго времени суток. В качестве первой статьи решил выбрать разбор реализации отечественного шифра «кузнечик». Постараюсь объяснить сложные вещи простым языком. В качестве рабочего примера...

Хабр

Необычный интерфейс

Собрал для вас подборку редких, необычных и малоизвестных UI-библиотек — для построения интерфейсов в играх, на устройствах и десктопном ПО.

https://habr.com/ru/articles/894442/

#интерфейсы #графические_интерфейсы #cpp #sdl #linux_desktop #c_language

Необычный интерфейс

Собрал для вас подборку редких, необычных и малоизвестных UI-библиотек — для построения интерфейсов в играх, на устройствах и десктопном ПО. Ликбез Стоит задать на любом...

Хабр

WCC: Гримуар колдуна

Рассказываю о еще одном необычном проекте, способном удивить даже опытных и подготовленных разработчиков. Добро пожаловать, снова.

https://habr.com/ru/articles/887334/

#reverseengineering #c_language #elf

WCC: Гримуар колдуна

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

Хабр

#Coding_Fridays : Roots and powers of any order in C

Watch the full video at Youtube channel central -- https://www.youtube.com/@apneacoding

Enable captions for more details and walk-through. Source code available at the Github repository (see channel info).

#ambient #coding #programming #notalking #c_language #terminal #console

Before you continue to YouTube

#Coding_Fridays : Roots and powers of any order in C

Watch the full video at Youtube channel central -- https://www.youtube.com/@apneacoding

Enable captions for more details and walk-through. Source code available at the Github repository (see channel info).

#ambient #coding #programming #notalking #c_language #terminal #console

Before you continue to YouTube