自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

在雨一方

万里寻山历百艰而无悔,一朝见井纵九死以何辞。

  • 博客(7)
  • 收藏
  • 关注

转载 Linux Kernel 2.6进程调度的分析

第一章 Kernel 2.4存在的不足 根据对2.4进程调度的分析,我们总结出看出2.4内核总的特点就是:         内核调度简单有效         内核不可抢占 但是经过对2.4内核的分析,我们也明显看到了它的缺点: 1.调度算法复杂度是O(n),与系统负荷关系较大。而且调度算法在设计上也有缺陷 ,比如: (1) 2.4进程调度只设置了一个进程就绪队列,这样有的进程用完了自

2015-11-30 15:30:40 1121

原创 进程的调度

调度算法所考虑的几方面: (1)公平:保证每个进程得到合理的CPU时间。 (2)高效:使CPU保持忙碌的状态,即总有进程在CPU上运行 (3)响应时间:是交互用户的响应时间尽可能短。 (4)周转时间:使批量用户等待输出的时间尽可能短。 (5)吞吐量:使单位时间处理的进程尽可能多。 很显然,我们并不能让五个目标同时达到最好,所以,不同的操作系统会在这几个方面有所权衡。以此确定自己满意的调

2015-11-30 15:26:11 312

原创 进程状态

操作系统为了对进程进行管理,就必须对每个进程在其生命周期内涉及的所有事情进行全面的描述,而所有这些信息在内核中可以用一个结构体来描述———linux中把对进程的描述结构叫做task_struct。传统上,这样的数据结构叫做进程控制块PCB。Linux中PCB是一个庞大的结构体。(具体包含什么可上网自行查询) 在进程的整个生命周期中,系统(也就是内核)总是同过PCB对进程进行控制的,也就是说,系统

2015-11-29 15:28:11 600

原创 初识内核模块编译

1.用make编译,编译代码如下 obj-m := filename.o CURRENT_PATH := $(shell pwd) LINUX_KERNEL := $(shell uname -r) LINUX_KERNEL_PATH := /usr/src/kernels/$(LINUX_KERNEL) all:     make -C $(LINUX_KERNEL_PATH)

2015-11-20 16:58:00 379 1

转载 TCP的那些事

TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节,我还是推荐你去看W.Richard Stevens的《TCP/IP 详解 卷1:协议》(当然,你也可以去读一下RFC793以及后面N多的RFC)。另外,本文我会使用英文术语,这样方便你通过这些英文关键词来查找相

2015-11-18 19:39:56 373

原创 二叉树的递归遍历

#include #include struct TreeNode; typedef struct TreeNode *Position; typedef struct TreeNode *SearchTree; SearchTree Insert(int x, SearchTree T); struct TreeNode        //结点声明 {     int

2015-11-04 15:15:59 312

原创 马踏棋盘

#include #include #include #define N 24            //棋盘大小 int path[N][N];         //保存棋盘先后顺序的数组 struct seat             //保存二维数组位置的结构体(坐标x,y) {     int x;     int y; }; struct seat

2015-11-04 15:07:24 113

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除