有帮助的链接 ======================== Linux 启动 ------------------------ * [Linux/x86 boot protocol](https://www.kernel.org/doc/Documentation/x86/boot.txt) * [Linux kernel parameters](https://github.com/torvalds/linux/blob/master/Documentation/kernel-parameters.txt) 保护模式 ------------------------ * [64-ia-32-architectures-software-developer-vol-3a-part-1-manual.pdf](http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html) 串口编程 ------------------------ * [8250 UART Programming](http://en.wikibooks.org/wiki/Serial_Programming/8250_UART_Programming#UART_Registers) * [Serial ports on OSDEV](http://wiki.osdev.org/Serial_Ports) VGA ------------------------ * [Video Graphics Array (VGA)](http://en.wikipedia.org/wiki/Video_Graphics_Array) IO ------------------------ * [IO port programming](http://www.tldp.org/HOWTO/text/IO-Port-Programming) GCC and GAS ------------------------ * [GCC type attributes](https://gcc.gnu.org/onlinedocs/gcc/Type-Attributes.html) * [Assembler Directives](http://www.chemie.fu-berlin.de/chemnet/use/info/gas/gas_toc.html#TOC65) 重要的数据结构 -------------------------- * [task_struct definition](http://lxr.free-electrons.com/source/include/linux/sched.h#L1274) 其他框架 ------------------------ * [PowerPC and Linux Kernel Inside](http://www.systemcomputing.org/ppc/) 有帮助的链接 ------------------------ * [Linux x86 Program Start Up](http://dbp-consulting.com/tutorials/debugging/linuxProgramStartup.html) * [Memory Layout in Program Execution (32 bits)](http://fgiasson.com/articles/memorylayout.txt)