- 博客(9)
- 资源 (18)
- 收藏
- 关注
原创 内存管理和地址翻译概述
ps:个人总结与理解,不保证正确性。。。[保护模式中指令地址的理解] 在传统的无保护模式下的地址空间中,在指令中的地址是16位的,段寄存器也是16位的。但当时Intel8086支持的是20位的地址,因此会将指令中的地址与相应的段寄存器中的内容进行操作得到20位的地址。具体的操作是应该是段寄存器中的内容左移4位,然后与指令中的地址求和,这样就得到了新的20位的地址。这样的
2012-11-24 20:52:06 2606
原创 Linux信号系统详解
代码对应linux kernel v0.11[Linux信号系统简介] 在Linux系统中,信号机制是在软件层次上对中断机制的一种模拟。一个进程接收到信号之后,有相应的信号的处理程序,而一个进程也可以给另外一个(或一组)进程发送信号。在内核版本的0.11版本中,每个进程都有一个结构体sigaction的数组,类似于系统的中断描述表(也被称为中断向量表),这个数组可以
2012-11-18 22:25:29 7961
原创 Linux进程状态详解
以下部分的代码示例,来自于Linux内核的0.11版本源码在定义进程的数据结构task_struct时,有一个state字段是用来表示进程状态的,这里总结了下关于state字段的操作关于进程的几个状态值在sched.h中定义如下#define TASK_RUNNING 0#define TASK_INTERRUPTIBLE
2012-11-17 14:10:36 3142 3
原创 Linux中断详解
这里以linux-kernel 0.11版本为基础整理中断相关知识,目的在于对于中断有一个全面、清晰和简洁的认识1、Linux的中断类型 Linux的各种中断都是由系统负责统一处理的。在响应一个特定的中断的时候,内核会执行一个函数,该函数叫做中断处理函数或中断服务例程。CPU执行完一条指令后,下一条指令的逻辑地址会被放在相应的寄存器中(CS和EIP),在执行新指令之前,
2012-11-14 18:53:32 7562 4
原创 Linux系统的中断、系统调用和调度概述
最近学习Linux操作系统,关于中断系统调用和进程的级别总是感觉有些模糊的地方,特在此做个小结,整理下思路。所谓的中断就是在计算机执行程序的过程中,由于出现了某些特殊事情,使得CPU暂停对程序的执行,转而去执行处理这一事件的程序。等这些特殊事情处理完之后再回去执行之前的程序。中断一般分为三类:1、由计算机硬件异常或故障引起的中断,称为内部异常中断;2、由程序中执行了引起中断的指令而造成的中断,
2012-11-10 21:03:30 4591
原创 C++虚继承小结
虚拟继承是C++语言中一个非常重要但是又比较生僻的存在,它的定义非常简单,但是对于理解C++的继承机制却是非常有用的。笔者最近学习过程中发现对C++的虚拟继承不是很明朗,故在这里对虚继承做个小结。首先说下遇到的问题吧。代码如下(代码来自于何海涛《程序员面试精选100题第32题)。意图是要设计一个不能被继承的类,类似java中的final。但是又可以生成栈对象,可以像一般的C++类一样使用。
2012-11-08 17:58:36 2119 3
原创 AVL树的C++实现
第一棵平衡二叉查找树又被称为AVL树,以它的发现者Adelson-Velskii和Landis命名的。它广泛说明了平衡二叉查找树中使用的各种思想。就是具有附加平衡条件的二叉查找树。任一平衡条件必须是易于维护,并确保树的深度是O(logN)。最简单的思想是要求左子树和右子树具有同样的高度。但是这个要求太严格了,维持平衡的同时插入数据项太困难。而AVL树在这方面找到了一个良好的折中点。
2012-11-04 21:06:22 1013
原创 红黑树插入操作的C++实现
红黑树是具有如下顺序属性的二叉查找树1、每个节点要么是红色,要么是黑色2、根是黑色3、所有叶子节点都是黑色(叶子是NIL节点)4、每个红色节点的两个孩子节点都是黑色(从每个叶子到根的所有路径上不能有两个连续的红色节点)5、从根节点到NIL指针的每条路径必须包含相同数目的黑色节点对NIL节点的理解是它不包含数据只充当树在此结束的指示红黑树的插入的时候,把新插入的节
2012-11-04 00:01:47 1212
原创 B-Tree的C++实现
简要说明下B树的性质。用M表示B树的阶数,L表示叶子节点的最大元素个 (性质说明来自于《数据结构与问题求解(C++版)》第19章) 1、数据项保存在叶子中 2、非叶子节点具有M-1个键指导查找的进行;键i代表子树i+1中最小的键 3、根要么是叶子,要么就有2~M个孩子 4、所有非叶子节点,(根除外)都具有[M/2]~M个孩子 5、所有叶子都在同一深度,并且对某一叶子,具
2012-11-03 23:38:13 1496
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人