From d63ab9f0fbfa8e4833a6f1e39f013497df6d3956 Mon Sep 17 00:00:00 2001 From: Thadeu Lima de Souza Cascardo Date: Sun, 16 May 2010 11:12:43 -0300 Subject: [PATCH] Remaining of introduction chapter. --- 01intro/intro | 164 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 164 insertions(+) diff --git a/01intro/intro b/01intro/intro index fe500aa..b5f37be 100644 --- a/01intro/intro +++ b/01intro/intro @@ -129,3 +129,167 @@ SMP support has put to scale, with most bottlenecks removed. * quilt pop [-a] * quilt push [-a] * Never forget to do 'quilt add' before editing a file + +# Linux Tree Layout + +# Architecture + +* arch/ARCH/ +* arch/ARCH/include/asm/ +* arch/ARCH/kernel/ +* arch/ARCH/mm/ +* arch/ARCH/lib/ +* arch/ARCH/boot/ +* arch/ARCH/mach-MACH/ + +# Headers + +* include/linux/ +* arch/ARCH/include/asm/ +* include/asm-generic/ +* include/OTHER/ + +# Main system + +* kernel/ +* mm/ +* lib/ +* init/ +* ipc/ +* fs/ + +# Drivers and Filesystems + +* drivers/BUS/ +* drivers/SUBSYSTEM/ +* block/ +* sound/ +* fs/* +* fs/FILESYSTEM/ + +# Other subsystems + +* net/ +* crypto/ +* security/ +* virt/ + +# Others + +* Documentation/ +* scripts/ +* samples/ +* usr/ +* tools/ +* firmware/ + +# Browsing code + +# Your editor of choice + +* FIX_ME +* vim works with ctags +* emacs works with etags +* make tags + +# cscope + +* FIX_ME +* -k (kernel mode) ignores /usr/include/ +* make cscope + +# lxr + +* FIX_ME +* URL website + +# Coding Style + +* Documentation/CodingStyle +* scripts/checkpatch.pl +* scripts/Lindent + +# git + +# FIX_ME + +# Configuration + +# First configuration + +* make allnoconfig/allyesconfig/allmodconfig +* make ranconfig +* make defconfig +* make config +* make menuconfig (requires ncurses) +* make xconfig/gconfig + +# Default configurations + +* make XXX\\_defconfig +* arch/ARCH/configs + +# Updating configuration + +* make oldconfig +* make silentoldconfig + +# Kconfig + +* Menus +* Help +* Dependencies + +# Configuring for another architecture + +* ARCH=x86\\_64 make menuconfig + +# Building Linux + +# Makefile rules + +* make *image +* make bzImage (for x86) +* make vmlinux +* make modules +* make all + +# Installing + +* make modules\\_install + - uses INSTALL\\_MOD\\_PATH +* make install + - uses INSTALL\\_PATH + +# Building out-of-tree + +* make O=BUILDDIR + +# Building packages + +* make deb-pkg +* make rpm-pkg +* make binrpm-pkg +* make tar-pkg +* make targz-pkg + +# Booting Linux + +# Kernel parameters + +* Documentation/kernel-parameters.txt +* Bootloader configuration +* qemu append + +# Init ramdisk + +* Necessary for user space to setup root +* filesystem initrd until 2.6.12 +* initramfs: uses cpio (-H newc) + +# Linux init + +* init/* +* /dev/console +* init process +* kthreadd -- 2.20.1