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 阅读全文
posted @ 2010-10-24 01:04 Proteas 阅读(850) 评论(0) 推荐(0)
摘要:#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 阅读全文
posted @ 2010-10-23 09:26 Proteas 阅读(486) 评论(0) 推荐(0)
摘要:目录名所属文件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”接着读取 阅读全文
posted @ 2010-10-18 00:45 Proteas 阅读(717) 评论(0) 推荐(0)