Commit Graph

297 Commits

Author SHA1 Message Date
Jim Huang
91418dec73 Remove out-of-date kernel source descriptions 2021-08-09 20:31:03 +08:00
Jim Huang
8d5f86509a Update .gitignore 2021-08-09 20:23:12 +08:00
Jim Huang
375bdd0ccf Unify the annotations
This patch enforces the annotations by means of the following:
  * \cpp : C/C++ code, functions, variables, macros, symbols
  * \sh : commands, executable files
  * \verb : path and filenames
2021-08-09 20:20:38 +08:00
Jim Huang
c2196c39ac
Merge pull request #49 from henrybear327/latex/add_very_style_inline_code
Add \cpp and \sh syntax for inline code
2021-08-09 19:20:35 +08:00
Chun-Hung Tseng
fdc07d0008 Add inline code blocks by using newmintinline
We can now use \cpp|...| and \sh|...| to add inline code blocks, which
resembles the \verb|...| syntax

Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
2021-08-09 13:17:06 +02:00
Jim Huang
96b3dab67b
Merge pull request #50 from VxTeemo/patch-1
Fix minor typo
2021-08-09 17:27:05 +08:00
VxTeemo
d1c0efeec9
fix minor typo
verb warp wrong at line 330 "linux/.config"
2021-08-09 17:21:56 +08:00
Jim Huang
8c86e5db92
Merge pull request #48 from fennecJ/patch
Temporary fix release action failed issue
2021-08-09 13:24:13 +08:00
fennecj
f6ee284894 Temporary fix release action failed issue 2021-08-09 13:04:12 +08:00
Jim Huang
78c925ee66
Merge pull request #47 from fennecJ/patch
Remove _minted-lkmpg directory after compiled pdf
2021-08-09 02:37:34 +08:00
fennecj
0bf15a0286 Remove _minted-lkmpg directory after compiled pdf
The _minted-lkmpg directory should be removed AFTER all compile work is
done.
2021-08-09 02:14:24 +08:00
Jim Huang
507019330e
Merge pull request #46 from arushsharma24/patch-1
Fix typo
2021-08-08 04:59:03 +08:00
Arush Sharma
51d96f56e5
fix minor typo
Fixes a very minor typo.
2021-08-08 02:23:07 +05:30
Jim Huang
8c12c8dce1 Make program style consistent again 2021-08-08 01:50:42 +08:00
Hsin-Hsiang Peng
8f32341bee
Fix alignment problem in code block (#45)
In rendered HTML, the line number should be right aligned, and
code should be left aligned accordingly.

In addition, this patch added the basic build instructions, so that
someone can generated the PDF and HTML files.

Close #44
2021-08-08 01:29:50 +08:00
Jim Huang
10c7a9433a Apply editorial changes
This patch makes source listing shorter and more compact, that helps
when browsing.
2021-08-08 01:24:59 +08:00
Jim Huang
d43259c553 Drop the deprecated init_module() and cleanup_module() 2021-08-08 00:29:24 +08:00
Jim Huang
a26d93037e Enforce consistent style
Execute "make indent" before submitting patches.
2021-08-07 23:33:37 +08:00
Jim Huang
43f20d0279 Mention the availability of PDF pre-release 2021-08-07 18:53:06 +08:00
Jim Huang
d2fd6d64c0 Tweak pdfLaTeX related commands 2021-08-07 18:49:24 +08:00
Jim Huang
d0721da3d9 Tidy the rest of chapters 2021-08-07 18:35:28 +08:00
Jim Huang
1ac7bacfb8 Shorten chardev 2021-08-07 18:29:39 +08:00
Jim Huang
2303d5c851 Tidy section: Optimizations 2021-08-07 11:02:49 +08:00
Jim Huang
40e83aa14b Tidy section: The Device Model 2021-08-07 10:59:15 +08:00
Jim Huang
939bd4e9ab Tidy section: Crypto 2021-08-07 10:56:16 +08:00
Jim Huang
f8adcdb3c1 procfs4: Shorten and indent 2021-08-07 10:54:19 +08:00
Jim Huang
e1d31e9500 Tidy section: Interrupt Handlers 2021-08-07 10:35:52 +08:00
Jim Huang
768b70e95e Tidy section: Scheduling Tasks 2021-08-07 10:27:05 +08:00
Jim Huang
2c1f4d185b Tidy section: Replacing Print Macros
FIXME: we should rewrite this section
2021-08-07 10:24:08 +08:00
Jim Huang
4a34cc69b3 Tidy section: Avoiding Collisions and Deadlocks 2021-08-07 10:16:08 +08:00
Jim Huang
678757e19c Tidy section: Blocking Processes and threads 2021-08-07 10:07:22 +08:00
Jim Huang
3070689d19 Update document maintainer information 2021-08-07 09:52:03 +08:00
asas1asas200
92b646ed64
proc_ops: Be aware of kernel API changes (#13)
The proc_ops structure is defined in <include/linux/proc_fs.h> since
Linux v5.6+.
In older kernels, file_operations structure is used for custom hooks in
/proc file system. However, it contains some members that are unnecessary
in VFS, and every time VFS expands file_operations set, /proc code comes
bloated.

On the other hand, not only the space, but also some operations were
saved by this structure to improve its performance.
2021-08-06 18:08:05 +08:00
Jim Huang
a411938b73
Merge pull request #43 from dancek/master
Rewrite CSS to support scaling
2021-08-05 20:50:22 +08:00
Hannu Hartikainen
e5e103a89b Rewrite CSS to support scaling
This changes the layout to use the default font size with a reasonable
max width and margins around the body. Elements that would overflow on
narrow displays are changed to wrap (.author) or present a scroll bar as
necessary (figure, .verbatim, .fancyvrb). The properties on html and
body are set such that there is no full-document vertical scrolling.
Inline math is displayed in the same size as the surrounding text.
2021-08-05 14:07:16 +03:00
Jim Huang
466e8a00fd cat_nonblock: Use canonical name scheme and fix unintended assignment 2021-08-05 14:28:12 +08:00
Jim Huang
38586974ee
Merge pull request #39 from fdgkhdkgh/master
Fix typo
2021-08-05 02:39:09 +08:00
吳建興
634c3659a8
Fix typo. 2021-08-05 02:16:36 +08:00
RinHizakura
5940dd9faa
Revise hello-5 and its output (#38)
For the example module hello_5, the book showed the incorrect output
in corresponding with its execution results.

In addition, this patch changes from myintArray[2] = {-1, -1} to
myintArray[2] = {420, 420}, which help the readers distinguish from
the kernel messages.
2021-08-04 23:42:10 +08:00
Jim Huang
40f0ff3087
Merge pull request #37 from fdgkhdkgh/master
Fix typo
2021-08-04 10:03:06 +08:00
吳建興
a7f81a2cfc
Fix typo.
There is a typo in chapter 0.6.3.
2021-08-04 09:33:21 +08:00
Jim Huang
7c129a4276 Minor wording tweak 2021-08-03 06:29:52 +08:00
demonsome
45769753d3
procfs1: Fix parameter descriptions (#34)
In "procfs1.c," the "buffer" is actually the second parameter of procfile_read().
The "offset" is the fourth one.
2021-08-02 23:01:34 +08:00
demonsome
65a8f5a1d6
Unify device node name "/proc/helloworld" (#33)
The file name "proc helloworld" was not consistent with that of the later
sentences. The latter sentences use the device node name "/proc/helloworld".
2021-08-02 22:59:19 +08:00
Jim Huang
970ddaba0b Mention the online publication 2021-08-02 15:15:49 +08:00
Jim Huang
859af5f727
Merge pull request #32 from focaaby/master
Publish GitHub Pages with GitHub Actions
2021-08-02 14:17:59 +08:00
Jerry Wang
937acfa0d7 Publish GitHub Page with GitHub Action
Add a new Github Action to publish to the GitHub page. Use twtug/lkmpg
image for reproducibility.

Ref:
- sysprog21#27
- https://github.com/TeXtw/docker-lkmpg
2021-08-02 06:22:29 +01:00
Jim Huang
749f0392bb Tidy section: system calls 2021-08-02 02:57:31 +08:00
Jim Huang
6689090085 Tidy section: device files 2021-08-02 02:43:35 +08:00
fennecJ
044cfefe65
Generate HTML via make4ht (#20)
This patch generates HTML files with "make4ht" in the "html" directory.

Known issues with "make4ht":
Running "make4ht -suf html5 -d html lkmpg.tex" will cause the following
flaws:
1. The layout was unsatisfying.
2. After parsing TeX, it stoped at "\tableofcontents" with errors.
3. Several unneeded files were generated.
4. No way to specify the destination filename for HTML generation.

Solutions/workaround:
1. Use customized configuration file "html.cfg" to specify the layout style.
2. Turn off the \tableofcontents section when using make4ht. However, this
    results in the lack of table of contents in HTML. It can be fixed by
    appending "\Configure{tableofcontents*}{chapter,section,subsection}"
    to configuration file.
3. The build system removes the temporary files.
4. Use a symbolic link "index.html" to "lkmpg.html".
2021-08-02 02:42:39 +08:00