Chinaunix首页 | 论坛 | 博客
  • 博客访问: 253740
  • 博文数量: 44
  • 博客积分: 1052
  • 博客等级: 少尉
  • 技术积分: 742
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-17 16:51
文章分类

全部博文(44)

文章存档

2013年(7)

2012年(14)

2011年(23)

发布时间:2013-05-30 23:07:13

好久没继续,心中有愧呀。一、介绍块设备驱动中包含了三部分代码:硬盘驱动,ramdisk驱动,软盘驱动。这三个部分的代码是一致的,采用了相同的处理方式。就是说对底层来说,不同硬件采用不同的方式读取数据,但上层用同样的接口来处理读写操作。大致流程:1:程序要读取数据,首先向缓存区管理程序发出申请,并进.........【阅读全文】

阅读(6223) | 评论(1) | 转发(5)

发布时间:2013-03-17 22:03:58

描述linux 0.11的内存管理主要内容。1:内存初始化linux 0.11最大支持16MB的物理内存。main函数和mem_init函数对内存进行了初始化。主要使用数组mem_map[]来标记相应的内存页是否被占用。memory_end是用BIOS中断调用得到的实际内存大小。if (memory_end > 16 * 1024 * 1024)    memory_end = 16 *.........【阅读全文】

阅读(3908) | 评论(0) | 转发(2)

发布时间:2013-03-12 22:00:57

本文简单描述linux0.11信号机制的实现一:有关信号当进程收到一个信号后,进程根据相关设定调用信号处理函数。有三类信号处理方式:默认处理方式、忽略信号方式、执行用户设定的信号处理函数。发送信号的方式:按下相应的键(如CTRL+C)、使用kill命令或函数向指定进程发送信号。typedef void sig_func(int);sig_.........【阅读全文】

阅读(4040) | 评论(0) | 转发(0)

发布时间:2013-03-10 22:23:15

简单描述Linux0.11的启动与初始化过程。启动过程中需要关注:IDT, GDT, LDT, TSS, 页表, 堆栈这些数据。一:启动过程启动的代码文件为bootsect.s、setup.s、head.sbootsect.s也就是启动扇区的代码。这段代码主要是将setup.s和head.s中的内容读入内存的相应区域。然后开始执行setup.ssetup.s1:使用BIOS中断来获.........【阅读全文】

阅读(3822) | 评论(0) | 转发(0)

发布时间:2013-03-03 20:57:33

本文是想简单的描述80x86 CPU在保护模式下的工作方式。本文仅描述大概的东西,细节的并不多描述,比如一个描述符中的每位表示什么意思,这些不会涉及。具体可google。本文没有图,因此难以理解。1:控制寄存器(CR0~CR3)CPU内含有4个控制寄存器,CR0~CR3,均为32位寄存器。CR0:第0位为PE位,第31.........【阅读全文】

阅读(3467) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册