8000 highlight chapter names · kaiwan/Linux-Kernel-Programming@fceb3a2 · GitHub
[go: up one dir, main page]

Skip to content

Commit fceb3a2

Browse files
committed
highlight chapter names
1 parent acc5bca commit fceb3a2

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

Further_Reading.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ links and books are considered to be useful throughout your journey through this
3232
book and after.
3333
<br>
3434

35-
**Online and book resources in general : miscellaneous but very useful !**
35+
**===== Online and book resources in general : miscellaneous but very useful ! =====**
3636

3737
- [The Linux kernel documentation](https://www.kernel.org/doc/html/latest/#the-linux-kernel-documentation)
3838
- Very useful! [LWN (Linux weekly news) Kernel index](https://lwn.net/Kernel/Index/)
@@ -156,6 +156,7 @@ Code browsers
156156
- Interesting: [Meet the contributor of the 1-millionth commit: Ricardo Neri, Swapnil Bharatiya, Sept 2020](https://www.linux.com/featured/meetthe-one-millionth-committer-to-linux-ricardo-neri/)
157157

158158
<br>
159+
159160
## Chapter 3, Building the Linux Kernel From Source - Further Reading
160161

161162
- Initramfs (initrd):
@@ -188,6 +189,7 @@ Code browsers
188189

189190

190191
<br>
192+
191193
## Chapter 4, Writing your first Kernel Module-LKMs Part 1 - Further Reading
192194

193195
- [Official Kernel Documentation : kernel parameters](https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html)
@@ -206,6 +208,7 @@ Code browsers
206208

207209

208210
<br>
211+
209212
## Chapter 5, Writing your first Kernel Module-LKMs Part 2 - Further Reading
210213

211214
- Blog article: [WORKING ON THE CONSOLE WITH THE RASPBERRY PI, kaiwanTECH](https://kaiwantech.wordpress.com/2018/12/16/working-on-the-console-with-the-raspberry-pi/)
@@ -255,6 +258,7 @@ Code browsers
255258
- [The Eudyptula Challenge](http://eudyptula-challenge.org/): "The Eudyptula Challenge was a series of programming exercises for the Linux kernel, that started from a very basic "Hello world" kernel module, moving on up in complexity to getting patches accepted into the main Linux kernel source tree." It's really cool but NOT active as of this writing though.
256259

257260
<br>
261+
258262
## Chapter 6, Kernel Internals Essentials - Processes and Threads - Further Reading
259263
- Book: [Hands-On System Programming with Linux", Kaiwan N Billimoria, Packt](https://www.packtpub.com/networking-and-servers/hands-system-programming-linux). Prerequisites to this chapter (essential reading, really):
260264
- Ch 1 : Linux System Architecture
@@ -283,6 +287,7 @@ Code browsers
283287

284288

285289
<br>
290+
286291
## Chapter 7, Memory Management Internals Essentials - Further Reading
287292
- Books on Linux kernel memory management internals:
288293
- ['Professional Linux Kernel Architecture', Mauerer, Wrox Press](https://www.amazon.in/Professional-Linux-Kernel-Architecture-Programmer/dp/0470343435/ref=sr_1_1?ie=UTF8&qid=1547525512&sr=8-1&keywords=Professional%20Linux%20Kernel%20Architecture%27)
@@ -305,6 +310,7 @@ Software Developer’s Manual. Volume 3 (3A, 3B & 3C): System Programming Guide]
305310
- ['Virtual Memory and Linux', PDF, Matt Porter, Alan Ott](https://elinux.org/images/b/b0/Introduction_to_Memory_Management_in_Linux.pdf)
306311

307312
<br>
313+
308314
## Chapter 8, Kernel Memory Allocation for Module Authors, Part 1 - Further Reading
309315

310316
- Book: ['Hands-On System Programming with Linux', Kaiwan N Billimoria, Packt](https://www.packtpub.com/networking-and-servers/hands-system-programming-linux). Prerequisites to this chapter (essential reading, really):
@@ -325,7 +331,9 @@ Software Developer’s Manual. Volume 3 (3A, 3B & 3C): System Programming Guide]
325331
- ["GNUPLOT 4.2 - A Brief Manual and Tutorial", Duke University](https://people.duke.edu/~hpgavin/gnuplot.html)
326332
- ['Object-oriented design patterns in the kernel, part 1', Neil Brown, LWN, June 2011](https://lwn.net/Articles/444910/)
327333

334+
328335
<br>
336+
329337
## Chapter 9, Kernel Memory Allocation for Module Authors, Part 2 - Further Reading
330338

331339
- [LWN kernel index on memory management](https://lwn.net/Kernel/Index/#Memory_management)
@@ -361,6 +369,7 @@ Articles/668126/)
361369

362370

363371
<br>
372+
364373
## Chapter 10, The CPU Scheduler, Part 1 - Further Reading
365374

366375
- Detailed PDF: ['A complete guide to Linux process scheduling', Nikita Ishkov, Feb 2015](https://trepo.tuni.fi/bitstream/handle/10024/96864/GRADU-1428493916.pdf)
@@ -380,6 +389,7 @@ Articles/668126/)
380389

381390

382391
<br>
392+
383393
## Chapter 11, The CPU Scheduler, Part 2 - Further Reading
384394

385395

@@ -424,6 +434,7 @@ The RTL Collaborative Project](https://wiki.linuxfoundation.org/realtime/rtl/sta
424434

425435

426436
<br>
437+
427438
## Chapter 12, Kernel Synchronization, Part 1 - Further Reading
428439

429440
- An excellent read: ['What every systems programmer should know about concurrency', M Kline, May 2018](https://assets.bitbashing.io/papers/concurrency-primer.pdf)
@@ -450,6 +461,7 @@ The RTL Collaborative Project](https://wiki.linuxfoundation.org/realtime/rtl/sta
450461

451462

452463
<br>
464+
453465
## Chapter 13, Kernel Synchronization, Part 2 - Further Reading
454466

455467
- Deeper details on the LKMM: [Explanation of the Linux-Kernel Memory Model](https://github.com/aparri/memory-model/ blob/master/Documentation/explanation. txt)

0 commit comments

Comments
 (0)
0