From b7ac9b78547127e25a28bdd79b988adb554529b9 Mon Sep 17 00:00:00 2001 From: Felix Lee Date: Sat, 9 Sep 2023 16:10:17 +0800 Subject: [PATCH] add README_CN.md Chinese file to project --- README_CN.md | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 README_CN.md diff --git a/README_CN.md b/README_CN.md new file mode 100644 index 0000000..30cf72c --- /dev/null +++ b/README_CN.md @@ -0,0 +1,98 @@ +# Linux 内核模块编程指南 + +注意:简体中文部分,基于原git仓库如下提交: + 5fd15075f26048cb5d9f00d3b3aa5861543002ed + 开始简体中文翻译工作。 + +简体中文版本项目发起人:Felix Lee +项目启动日期: 2023年9月9日 + +本项目保持Linux内核模块编程指南及时更新,使用[工作示例](example/)于最近的5.x内 +核版本。 +本指南从2001年起就已经发布,并且在网页上可获得的大多本指南的版本,只是基于旧的 +2.6.x内核进行说明。 + + +本书可通过网络访问 https://sysprog21.github.io/lkmpg/ 或 [最新PDF文件] +(https://github.com/sysprog21/lkmpg/releases)自由获得。 +最初版本的指南,可以从 [Linux文档项目](http://www.tldp.org/LDP/lkmpg/) 上找到。 +你可以从其它资源找到该指南,如 [自由可用的编程书籍] +(https://ebookfoundation.github.io/free-programming-books-search/) ,其也被列于 +[自由电子书基金会](https://ebookfoundation.org/) 或 [Linux 在线电子书] +(https://onlinebooks.library.upenn.edu/webbin/book/browse?type=lcsubc&key=Linux), +也被收藏于[在线书籍网页](https://onlinebooks.library.upenn.edu/). + +## 开始启航 + +### 概括 +1. 从 [GitHub 网页](https://github.com/sysprog21/lkmpg) 得到最新源代码。 +2. 安装先决需求软件包。 +3. 产生 PDF 与/或 HTML 文档。 + +### 第一步:得到最新源代码 + +确保在你可以访问互联网的情况下,可以运行git工具软件。 + +```shell +$ git clone https://github.com/sysprog21/lkmpg.git && cd lkmpg +``` + +### 第二步:安装先决需求软件包 + +要从源代码生成本书, [TeXLive](https://www.tug.org/texlive/) + ([MacTeX](https://www.tug.org/mactex/)) 软件包是必需安装的。 + +对于 Ubuntu Linux, macOS, 与其它 Unix 风格的系统, 运行下列命令: + +```bash +# 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 +``` + +注意为产生PDF文件 `latexmk` 是必须的,并且该软件可能在你的系统上已经被安装了。 +如未安装,按照[安装指南](https://mg.readthedocs.io/latexmk.html#installation)。 + +在 macOS 系统上,包`Pyments`可能没有被预安装。如未安装,在产生文档前请参考[安装 +指南](https://pygments.org/download/) 。 + +另外,被推荐使用[Docker](https://docs.docker.com/),因为它担保我们的 GitHub 行 +为工作流相同的依赖关系。 +在你的机器上安装 [docker 引擎](https://docs.docker.com/engine/install/) 之后, +拉取docker镜像[twtug/lkmpg](https://hub.docker.com/r/twtug/lkmpg)并安装容器。 + + +```shell +# pull docker image and run it as container +$ docker pull twtug/lkmpg +$ docker run --rm -it -v $(pwd):/workdir twtug/lkmpg +``` + +[nerdctl](https://github.com/containerd/nerdctl) 是一个 Docker 兼容的命令行工具 +用于 [containerd](https://containerd.io/),并且你可以替换上面的 `docker` 命令, +使用 `nerdctl` 同行。 + +### 第三步: 产生 PDF 与/或 HTML 文档 + +现在我们可以使用下面的命令编译文档: + +```bash +$ make all # Generate PDF document +$ make html # Convert TeX to HTML +$ make clean # Delete generated files +``` + +## 许可协议 + +Linux内核模块编程指南是一本自由书籍;你可以在遵守[开源软件许可协议] +(https://opensource.org/licenses/OSL-3.0) 条款的基础之上重生成/修改本书内容。 +相关工作进行,由条款存在于`LICENSE`文件中的条款定义的版权许可协议决定。 + + +补充示例代码,在GNU GPL 版本2 条款下被允许使用,与Linux内核使用相同的许可协议。 -- 2.39.5