[ linux0.11学习 ]
过去不再从来
反应有点慢
展开
-
一句话小结
1.库函数,系统调用之间的关系。(用户通过调用库函数printf(),printf()----》write()陷入内核)原创 2014-02-27 20:26:28 · 432 阅读 · 0 评论 -
linux0.11-setup.s
! #2014-12-16:22:40 !#2014-12-17:21:00-23:00 !#setup.s !#1.通过BIOS中断获取系统数据,放入0x9000(以前存放bootset.s的内存处) !# 包含的信息有:光标位置,拓展内存的大小,显示卡显示模式,硬盘信息。 !#2.加载全局描述符表,中断描述符表, !#3.进入保护模式,开启A20地址先,重编程中断。 !#4.将s原创 2014-12-17 22:40:40 · 578 阅读 · 0 评论 -
linux0.11-head.s
2014-12-18:18:30-21:00 # 这段程序实际上是出于内存的绝对地址0开始处。首先是加载各个数据段寄存器。 # 重新设置全局描述符表gdt --> 检测a20地址线是否真的开启,没有开启,loop # 掉了 --> 检测pc是否含有数学协处理器 --> 设置管理内存分页的处理机制 --> # 将页目录放置在内存地址0开始处。所以这段程序将被覆盖掉。原创 2014-12-18 20:50:55 · 614 阅读 · 0 评论 -
linux0.11启动第一步:bootsect.s
! !#2014-12-13:16-53《开始小结linux启动汇编之旅》 ! !#我们按下开关,执行BIOS程序(上电自检等),最后BIOS自动 !#加载MBR(即主引导分区,主引导分区上的512个字节放着我们 !#的bootsect.s程序--是编译好的二进制码) !#将bootsect.s程序加载到内存0x07c0处(这是BIOS厂商与OS之间 !#的一个协定,BIOS相当一个原创 2014-12-14 01:35:48 · 682 阅读 · 0 评论 -
《异常处理类中断服务程序挂接》
Linux0.11 版本的 set_trap_gate 宏分析 《异常处理类中断服务程序挂接》 出处:http://wenku.baidu.com/link?url=5Y1uhn9-Ut1JJRib_iKSEVfieHyWHNnQStuOyR6sPXrLXRUvvadrS2zoQ7BMDYuy7Dl8GUTVYGps9nU0KuCqL9r9o2Sg6l4DrFl57P-UISS比较老的版本的转载 2015-05-01 16:45:00 · 915 阅读 · 0 评论 -
linux0.11-include/asm/io.h
http://www.imooo.com/linux/linux-unix/1398418.htmdefine outb(value,port) \asm (“outb %%al,%%dx”::”a” (value),”d” (port)) //宏定义outb用汇编实现了在端口地址port处写入值value //使用的寄存器是al,一个byte长度,而端口port使用的是2byte长度地址来标记转载 2015-05-05 08:31:15 · 1064 阅读 · 0 评论 -
datasheet中不是很明白的英文句子
1.An operand within a data segment is addressed by specifying its offset 一个数据段内的操作是通过指定它的偏移地址。 2.In other words, the stack grows down in memory toward lesser addresses. 换句话说,这个栈向下生长,在内存中是朝向低地址 3.I原创 2014-08-08 08:45:37 · 818 阅读 · 0 评论