Este projeto mantém o guia de programação do módulo Linux Kernel atualizado, com exemplos de trabalho para versões recentes do kernel 5.x e 6.x. O guia existe desde 2001 e a maioria das cópias na web descreve apenas os kernels antigos 2.6.x.
O livro pode ser acessado livremente via https://sysprog21.github.io/lkmpg/ ou arquivo pdf mais recente. O guia original pode ser encontrado no projeto de documentação do Linux. Você pode verificar outros livros de programação disponíveis gratuitamente listados pela Free Ebook Foundation ou Linux Online Books coletados pela página de livros on -line.
Verifique se você pode executar git com uma conexão com a Internet.
$ git clone https://github.com/sysprog21/lkmpg.git && cd lkmpgPara gerar o livro a partir da fonte, é necessário o Texlive (MACTEX).
Para o Ubuntu Linux, MacOS e outros sistemas do tipo UNIX, execute os seguintes comando (s):
# 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 Observe que latexmk é necessário para gerar PDF e provavelmente já foi instalado no seu sistema operacional. Caso contrário, siga o guia de instalação.
Nos sistemas MacOS, Pygments de pacotes não podem ser pré-instalados. Caso contrário, consulte o guia de instalação antes de gerar documentos.
Como alternativa, o uso do Docker é recomendado, pois garante as mesmas dependências com o fluxo de trabalho das ações do GitHub. Após a instalação do motor Docker em sua máquina, puxe a imagem do Docker Twtug/Lkmpg e execute em contêineres isolados.
# pull docker image and run it as container
$ docker pull twtug/lkmpg
$ docker run --rm -it -v $( pwd ) :/workdir twtug/lkmpg O NERDCTL é uma ferramenta de linha de comando compatível com o Docker para contêiner e você pode substituir os comandos docker acima por contrapartes nerdctl .
Agora poderíamos criar documentos com os seguintes comandos:
$ make all # Generate PDF document
$ make html # Convert TeX to HTML
$ make clean # Delete generated files O Linux Kernel Module Programming Guide é um livro gratuito; Você pode reproduzir e/ou modificá -lo nos termos da licença de software aberta. O uso deste trabalho é regido por uma licença copyleft que pode ser encontrada no arquivo LICENSE .
O código de amostra complementar é licenciado no GNU GPL versão 2, da mesma forma que o kernel Linux.