linux内核的压缩和解压缩代码都在linux-2.6\arch\mips\boot\compressed目录下。
压缩的过程具体看该目录下的Makefile文件,它负责把以前生成的vmlinux.bin压缩为zvmlinux.bin。zvmlinux.bin中包含vmlinux.bin的压缩包以及linux kernel启动需要的自解压相关程序。
冷启动coldstart文件start.ram.S负责冷启动并跳转到位于hdr.c文件内的内核解压主函数main,
解压开始文件位于hdr.c中,跟踪下去分析内核解压函数gunzip()和内核跳转函数jmp_krnl()。