Этот проект поддерживает руководство по программированию модуля ядра Linux, с рабочими примерами для последних версий ядра 5.x и 6.x. Руководство существует с 2001 года, и большинство его копий в Интернете описывают только старые ядра 2.6.x.
Книга можно свободно доступно через https://sysprog21.github.io/lkmpg/ или последний файл PDF. Оригинальное руководство можно найти в проекте документации Linux. Вы можете проверить другие свободно доступные книги по программированию, перечисленные Free Ebook Foundation или Linux Online Books, собранные на странице онлайн -книг.
Убедитесь, что вы можете запустить git с помощью подключения к Интернету.
$ git clone https://github.com/sysprog21/lkmpg.git && cd lkmpgЧтобы сгенерировать книгу из источника, требуется Texlive (Mactex).
Для Ubuntu Linux, MacOS и других Unix-подобных систем запустите следующие команды:
# Debian / Ubuntu
$ sudo apt install make texlive-full
# Arch / Manjaro
$ sudo pacman -S make texlive-binextra texlive-bin
# macOS
$ brew install mactex
$ sudo tlmgr update --self Обратите внимание, что latexmk должен сгенерировать PDF, и он, вероятно, уже был установлен на вашей ОС. Если нет, пожалуйста, следуйте руководству по установке.
В системах macOS пакет Pygments не может быть предварительно установлен. Если нет, пожалуйста, обратитесь к руководству по установке перед созданием документов.
В качестве альтернативы рекомендуется использование Docker, поскольку он гарантирует одинаковые зависимости с нашим рабочим процессом GitHub. После установки Docker Engine на машине вытяните изображение Docker Twtug/LKMPG и запустите в изолированных контейнерах.
# pull docker image and run it as container
$ docker pull twtug/lkmpg
$ docker run --rm -it -v $( pwd ) :/workdir twtug/lkmpg NERDCTL-это инструмент командной строки, совместимая с Docker для контейнера, и вы можете заменить вышеуказанные команды docker на аналоги nerdctl .
Теперь мы могли бы создать документ с следующими командами:
$ make all # Generate PDF document
$ make html # Convert TeX to HTML
$ make clean # Delete generated files Руководство по программированию модуля ядра Linux - это бесплатная книга; Вы можете воспроизводить и/или изменить его в соответствии с условиями лицензии на открытое программное обеспечение. Использование этой работы регулируется лицензией Copyleft, которую можно найти в файле LICENSE .
Дополнительный пример кода лицензируется в соответствии с GNU GPL версией 2, как и ядро Linux.