diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eb2f774 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.tex +build diff --git a/Cgroups/cgroups1.md b/Cgroups/linux-cgroups-1.md similarity index 100% rename from Cgroups/cgroups1.md rename to Cgroups/linux-cgroups-1.md diff --git a/Concepts/per-cpu.md b/Concepts/linux-cpu-1.md similarity index 100% rename from Concepts/per-cpu.md rename to Concepts/linux-cpu-1.md diff --git a/Concepts/cpumask.md b/Concepts/linux-cpu-2.md similarity index 100% rename from Concepts/cpumask.md rename to Concepts/linux-cpu-2.md diff --git a/Concepts/initcall.md b/Concepts/linux-cpu-3.md similarity index 100% rename from Concepts/initcall.md rename to Concepts/linux-cpu-3.md diff --git a/Concepts/notification_chains.md b/Concepts/linux-cpu-4.md similarity index 100% rename from Concepts/notification_chains.md rename to Concepts/linux-cpu-4.md diff --git a/DataStructures/dlist.md b/DataStructures/linux-datastructures1.md similarity index 100% rename from DataStructures/dlist.md rename to DataStructures/linux-datastructures1.md diff --git a/DataStructures/radix-tree.md b/DataStructures/linux-datastructures2.md similarity index 100% rename from DataStructures/radix-tree.md rename to DataStructures/linux-datastructures2.md diff --git a/DataStructures/bitmap.md b/DataStructures/linux-datastructures3.md similarity index 100% rename from DataStructures/bitmap.md rename to DataStructures/linux-datastructures3.md diff --git a/KernelStructures/idt.md b/KernelStructures/linux-kernelstructure-1.md similarity index 100% rename from KernelStructures/idt.md rename to KernelStructures/linux-kernelstructure-1.md diff --git a/LinuxKernelInsides.pdf b/LinuxKernelInsides.pdf new file mode 100644 index 0000000..675a6a2 Binary files /dev/null and b/LinuxKernelInsides.pdf differ diff --git a/Misc/contribute.md b/Misc/linux-misc-1.md similarity index 100% rename from Misc/contribute.md rename to Misc/linux-misc-1.md diff --git a/Misc/how_kernel_compiled.md b/Misc/linux-misc-2.md similarity index 100% rename from Misc/how_kernel_compiled.md rename to Misc/linux-misc-2.md diff --git a/Misc/linkers.md b/Misc/linux-misc-3.md similarity index 100% rename from Misc/linkers.md rename to Misc/linux-misc-3.md diff --git a/Misc/program_startup.md b/Misc/linux-misc-4.md similarity index 100% rename from Misc/program_startup.md rename to Misc/linux-misc-4.md diff --git a/SyncPrim/sync-1.md b/SyncPrim/linux-sync-1.md similarity index 100% rename from SyncPrim/sync-1.md rename to SyncPrim/linux-sync-1.md diff --git a/SyncPrim/sync-2.md b/SyncPrim/linux-sync-2.md similarity index 100% rename from SyncPrim/sync-2.md rename to SyncPrim/linux-sync-2.md diff --git a/SyncPrim/sync-3.md b/SyncPrim/linux-sync-3.md similarity index 100% rename from SyncPrim/sync-3.md rename to SyncPrim/linux-sync-3.md diff --git a/SyncPrim/sync-4.md b/SyncPrim/linux-sync-4.md similarity index 100% rename from SyncPrim/sync-4.md rename to SyncPrim/linux-sync-4.md diff --git a/SyncPrim/sync-5.md b/SyncPrim/linux-sync-5.md similarity index 100% rename from SyncPrim/sync-5.md rename to SyncPrim/linux-sync-5.md diff --git a/SyncPrim/sync-6.md b/SyncPrim/linux-sync-6.md similarity index 100% rename from SyncPrim/sync-6.md rename to SyncPrim/linux-sync-6.md diff --git a/SysCall/syscall-1.md b/SysCall/linux-syscall-1.md similarity index 100% rename from SysCall/syscall-1.md rename to SysCall/linux-syscall-1.md diff --git a/SysCall/syscall-2.md b/SysCall/linux-syscall-2.md similarity index 100% rename from SysCall/syscall-2.md rename to SysCall/linux-syscall-2.md diff --git a/SysCall/syscall-3.md b/SysCall/linux-syscall-3.md similarity index 100% rename from SysCall/syscall-3.md rename to SysCall/linux-syscall-3.md diff --git a/SysCall/syscall-4.md b/SysCall/linux-syscall-4.md similarity index 100% rename from SysCall/syscall-4.md rename to SysCall/linux-syscall-4.md diff --git a/SysCall/syscall-5.md b/SysCall/linux-syscall-5.md similarity index 100% rename from SysCall/syscall-5.md rename to SysCall/linux-syscall-5.md diff --git a/SysCall/syscall-6.md b/SysCall/linux-syscall-6.md similarity index 100% rename from SysCall/syscall-6.md rename to SysCall/linux-syscall-6.md diff --git a/Theory/Paging.md b/Theory/linux-theory-1.md similarity index 100% rename from Theory/Paging.md rename to Theory/linux-theory-1.md diff --git a/Theory/ELF.md b/Theory/linux-theory-2.md similarity index 100% rename from Theory/ELF.md rename to Theory/linux-theory-2.md diff --git a/Theory/asm.md b/Theory/linux-theory-3.md similarity index 100% rename from Theory/asm.md rename to Theory/linux-theory-3.md diff --git a/Timers/timers-1.md b/Timers/linux-timers-1.md similarity index 100% rename from Timers/timers-1.md rename to Timers/linux-timers-1.md diff --git a/Timers/timers-2.md b/Timers/linux-timers-2.md similarity index 100% rename from Timers/timers-2.md rename to Timers/linux-timers-2.md diff --git a/Timers/timers-3.md b/Timers/linux-timers-3.md similarity index 100% rename from Timers/timers-3.md rename to Timers/linux-timers-3.md diff --git a/Timers/timers-4.md b/Timers/linux-timers-4.md similarity index 100% rename from Timers/timers-4.md rename to Timers/linux-timers-4.md diff --git a/Timers/timers-5.md b/Timers/linux-timers-5.md similarity index 100% rename from Timers/timers-5.md rename to Timers/linux-timers-5.md diff --git a/Timers/timers-6.md b/Timers/linux-timers-6.md similarity index 100% rename from Timers/timers-6.md rename to Timers/linux-timers-6.md diff --git a/Timers/timers-7.md b/Timers/linux-timers-7.md similarity index 100% rename from Timers/timers-7.md rename to Timers/linux-timers-7.md diff --git a/interrupts/interrupts-1.md b/interrupts/linux-interrupts-1.md similarity index 100% rename from interrupts/interrupts-1.md rename to interrupts/linux-interrupts-1.md diff --git a/interrupts/interrupts-10.md b/interrupts/linux-interrupts-10.md similarity index 100% rename from interrupts/interrupts-10.md rename to interrupts/linux-interrupts-10.md diff --git a/interrupts/interrupts-2.md b/interrupts/linux-interrupts-2.md similarity index 100% rename from interrupts/interrupts-2.md rename to interrupts/linux-interrupts-2.md diff --git a/interrupts/interrupts-3.md b/interrupts/linux-interrupts-3.md similarity index 100% rename from interrupts/interrupts-3.md rename to interrupts/linux-interrupts-3.md diff --git a/interrupts/interrupts-4.md b/interrupts/linux-interrupts-4.md similarity index 100% rename from interrupts/interrupts-4.md rename to interrupts/linux-interrupts-4.md diff --git a/interrupts/interrupts-5.md b/interrupts/linux-interrupts-5.md similarity index 100% rename from interrupts/interrupts-5.md rename to interrupts/linux-interrupts-5.md diff --git a/interrupts/interrupts-6.md b/interrupts/linux-interrupts-6.md similarity index 100% rename from interrupts/interrupts-6.md rename to interrupts/linux-interrupts-6.md diff --git a/interrupts/interrupts-7.md b/interrupts/linux-interrupts-7.md similarity index 100% rename from interrupts/interrupts-7.md rename to interrupts/linux-interrupts-7.md diff --git a/interrupts/interrupts-8.md b/interrupts/linux-interrupts-8.md similarity index 100% rename from interrupts/interrupts-8.md rename to interrupts/linux-interrupts-8.md diff --git a/interrupts/interrupts-9.md b/interrupts/linux-interrupts-9.md similarity index 100% rename from interrupts/interrupts-9.md rename to interrupts/linux-interrupts-9.md diff --git a/latex.sh b/latex.sh new file mode 100755 index 0000000..cf3bef9 --- /dev/null +++ b/latex.sh @@ -0,0 +1,27 @@ +# latex.sh +# A script for converting Markdown files in each of the subdirectories into a unified PDF typeset in LaTeX. +# Requires TexLive, Pandoc templates and pdfunite. Not necessary if you just want to read the PDF, only if you're compiling it yourself. + +#!/bin/bash +rm -r build +mkdir build +for D in *; do + if [ -d "${D}" ] && [ "${D}" != "build" ] + then + echo "Converting $D . . ." + pandoc ./$D/README.md ./$D/linux-*.md -o build/$D.tex --template default + fi +done + +cd ./build +for f in *.tex +do + pdflatex -interaction=nonstopmode $f +done + +cd ../ +pandoc README.md SUMMARY.md CONTRIBUTING.md CONTRIBUTORS.md \ + -o ./build/Preface.tex --template default + +pdfunite ./build/*.pdf LinuxKernelInsides.pdf +