10 2010 档案
摘要:Linux-0.01 的引导部分主要由两个源代码完成:boot.s 与 head.s 。boot.s 由 BIOS 加载执行,head.s 是 32 位的引导代码,在最后会调用 main() 函数,完成系统的引导。boot.s 代码:;; boot.s;; boot.s is loaded at 0x7c00 by the bios-startup routines, and moves itself; out of the way to address 0x90000, and jumps there.;; It then loads the system at 0x10000, using
阅读全文
摘要:#define __LIBRARY__#include #include time.h>/* * we need this inline - forking from kernel space will result * in NO COPY ON WRITE (!!!), until an execve is executed. This * is no problem, but for the stack. This is handled by not letting * main() use the stack at all after fork(). Thus, no funct
阅读全文
摘要:目录名所属文件boot核心引导代码fs文件系统include头文件initInit 进程,系统中执行的第一个进程kernel系统调用lib库代码mm内存管理tools内核引导文件的制作工具boot 目录文件描述boot.sBIOS 启动的时候加载并执行的代码head.s32 bit 的引导代码,调用 init_main()boot.s 文件说明加电自检结束后,boot.s 的代码被加载到 0x7C00 处,然后 boot.s 将自身移动到物理地址的 0x90000 处,接着跳转到该处执行。boot.s 使用 BIOS 中断在屏幕上打印 “/nLoading system.../n/n”接着读取
阅读全文