自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

密码小仙女

小仙女带你学密码

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

原创 Linux Kernel 定时器和时间管理(浅析)

前言计算机时间:这个三维的世界就是由时间,空间,物质构成的,即使是计算机也离不开时间这个东西,时间之于计算机举足轻重。计算机的时间时间管理在内核中占有很重要的地位。相对于事件驱动而言,内核中有大量的函数都是基于时间驱动的。这里先说几个重要的概念:相对时间:假设某一个事件在5秒后发生,那么系统需要的时间就是相对时间。绝对时间:如果要求管理当前日期和当前时间,则内核不但需要计算流逝的

2015-12-24 12:21:56 1050

原创 概率论 第一章

第一章  随机事件与概率统计概念:随机实验:每次实验的可能结果不止一个,并且在实验之前能明确所有可能结果,进行一次实验之前不能预知哪个结果会出现。可重复随机实验:随机实验在相同条件下可以重复进行。样本空间:所有可能结果组成的集合叫样本空间。每一个结果叫一个样本点。随机事件:实验E的样本空间S的子集为E的随机事件,简称为事件。特别地,由一个样本点组成的单点集,称为基本事件。在

2015-12-22 19:35:52 2806

原创 数据结构小结 说明

源代码等东西都在这里:http://github.com/zmr961006/DSAA查看原文:http://zmrlinux.com/2015/12/20/%e6%95%b0%e6%8d%ae%e7%bb%93%e6%9e%84%e5%b0%8f%e7%bb%93-%e8%af%b4%e6%98%8e/

2015-12-20 16:18:46 580

原创 数据结构小结(九)排序算法大杂烩

冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。冒泡排序运作冒泡排序算法的运作如下:(从后往前) 1.比较相邻的元素。如果第

2015-12-20 16:16:40 348

原创 数据结构小结(八)图的使用

最小生成树prim 算法普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点,且其所有边的权值之和亦为最小。该算法于1930年由捷克数学家沃伊捷赫·亚尔尼克发现;并在1957年由美国计算机科学家罗伯特·普里姆 独立发现;1959年,艾兹格·迪科斯彻再次发现了该算法。因此,在某些场合,普里姆

2015-12-20 16:13:13 471

原创 数据结构小结(八)图

图的定义图是由顶点集和弧集构成的数据结构,Graph = (V,R);有向图由顶点集和弧集构成的图称为有向图。(弧是有方向的)无向图由顶点集和边集构成的图称为无向图。(边是无方向的)有向网或无向网有向图或无向图中的弧或边带权后的图分别称为有向网或无向网。无向网有向网子图子图简单来说就是图的一部分,类比子树的概念很好理解。完全图图有n个顶点,n(

2015-12-20 16:11:19 599

原创 数据结构小结(七)查找

几种查找算法1.顺序查找2.折半查找3.分块查找4.基于树的查找平均查找长度为确定某元素在查找表中的位置需要和给定值进行比较的关键字个数的期望值,称为该查找算法查找成功时的平均查找长度。基于线性表的查找很简单,时间复杂度为O(N)。 这里只说那个改进的线性表查找好了。int Seqsearch(SeqRlist L,KeyType K){ L.r[0].key = K;

2015-12-20 16:09:01 442

原创 数据结构小结(六)树

第六章 树前言 经过两天的努力终于写到树了。前面的也总算基本说清了,到树这一章了,我打算不局限 于课本,多了解一些东西也是好的。 遂决定以下学习路线: 1.树的基本概念 2.二叉树 3.AVL树 4.B树 5.红黑树 6.树在文件系统中的使用树的基本概念为什么要使用树,或者

2015-12-20 16:05:11 415

原创 数据结构小结(五) 数组与广义表

第五章 数组 与 广义表 与 散列表前言这章主要说说多维数组,广义表,和散列表吧。学校并没有提及到散列表,但是散列表这个东西超重要的,拿出来说说好了,知道它是什么,怎么用,在哪里用就好了。多维数组和压缩矩阵数组其实数组这个东西我们接触的挺早了,C语言就有啊,数组到是也可以看成是一个基本的数据结构吧,接触数据结构也一段时间了,唯一感觉就是看起来越简单的数据结构,往往越灵活,使用越广泛,较为

2015-12-20 16:02:25 1540

原创 数据结构小结 (四) 串

第四章 串 及其一些算法前言其实字符串这里感觉就没有什么数据结构,应要说的话,KMP ,BF ,FF 这些其实是算法的范畴,但是国内的一些数据结构书非要把C 标准库的一些string 中的函数拿出来硬是凑出了数据结构串这章节的内容,也是够了。之前说过,这篇文档主要是小结一些东西,能应对学校考试,了解一些其他没有学过的数据结构,能和面试对接这才是我们需要的。精研算法的童鞋请绕路。遂

2015-12-20 16:00:54 552

原创 数据结构小结 (三)栈与队列

第三章 栈 与 队列前言上一篇说了栈,这篇来说说队列,依然是使用数组与链表这两种数据结构来具体实现。队列队列(queue) 也是表,然而,使用队列时插入在一端进行而在另一端进行删除操作。对与队列而言,不论是使用队列或者使用链表都是快速的O(1)时间完成操作。核心思想先进先出队列的数组实现几个需要注意的点队列可以使用数组与链表实现数组实现:其实数组实现就是我们常说的循环队列

2015-12-20 15:59:30 411

原创 数据结构小结 (二)链表

第二章 链表前言就像之前说的,我们并不是来教大家数据结构的,我们是来整理小结数据结构的,所以只说重点。单链表及其操作前提条件[c]typedef struct Node{int num;struct Node * next;}Node;#define SUCCESS 0 /*成功返回 0*/#define FAIL -1 /*失败返回 -1*//* 带头节点单链表,代码亲测

2015-12-20 15:54:07 313

原创 数据结构小结 (一)总论

目录第一章 导论与说明第二章 链表第三章 队列与栈第四章 串第五章 多维数组与广义表与散列表第六章 树,二叉树,AVL树,查找树第七章 图论算法第八章 排序算法分析第九章 内存管理算法概念总结数据:数据是描述客观事物的数值,字符以及能够输入到计算机中且能被处理的各种符号集合。数据元素:数据元素是组成数据的基本单位,是数据集合的个体,在计算机中通常作为一个整体进行考虑

2015-12-20 15:48:06 401

原创 内存管理器(十八)kernel 内存管理---浅析内存寻址

前言内存管理序列还在持续更新,slab 后边在说,这里说点内核内存寻址的基础知识。这里我不打算说一些具体的标志位,寄存器什么的。一位很厉害的学长曾说过“掉进硬件的漩涡时很可怕的”,为了不让想了解的读者掉进这“可怕的硬件漩涡”我决定还是不要说硬件了。分段最早的处理器比如inter 早期处理器,8086 按照分段模式工作的,就是使用“段基地址 + 偏移量”这种方式将一个虚拟地址转化为一个线性地址

2015-12-17 22:14:32 486

原创 Linux kernel -页高速缓存和页回写 初探

Linux kernrl 探秘 页高速缓存和页回写 初探前言这是一个新的文章序列,名字就叫“Linux Kernel 探秘” ,这里的文章分为两个部分,初探和再探。初探系列主要就是写写原理,不考虑实现。“再探”系列才考虑实现方式,毕竟我们的目的是将内核的优秀思想放到实际的使用中去。不所出意外这就是内核系列本学期的最后一篇了,剩下的两周我需要准备考试了。不过没事不到一个月就要放假了,那个时候

2015-12-16 22:22:42 889

原创 探秘C time.h

前言这是现阶段探秘系列的最后一个库了,前前后后我们也经历了这么多时间,花了很多的精力,不敢说精研C 标准库,只能说确实有所了解,有所收获。期间看过英文原版的书,下过glibc 的源代码。中间还敢上了金工实习,再网吧还写了博客。今天暂时结束了,但是还是那句话“C 无所不能,只是我们的能力还不行。__start在开发UNIX的时候,时间和日期已经都达到了一个新的水平,有几个开发者是天文爱好者。他

2015-12-03 14:17:48 300

原创 探秘 C stdlib.h

前言探秘C标准库系列基本已经快到结尾了,应该还有几篇要写。随着探秘系列的结束,我对C的理解也更多了,就像一句话说的好“C 无所不能,就是我能力还不够” 对于现阶段的计算机体系,C确实无所不能,至少再底层上这样。__startstdlib.h 这个库就是一个大杂烩,C标准几乎把乱七八糟的东西都放在这里了,既然本身就没有什么顺序,那么我们也就开始杂谈这个库吧。但是没有规矩不成方圆,我们还是划分出

2015-12-02 16:36:24 315

原创 Linux 中断之下半部机制

前言有些事情开了就等于跳悬崖了。   中断之下半部机制。__start下半部的机制还是因为中断上下文不可以睡眠,并且内核需要它快速响应所以,将它分成了两个部分,一个是前半部,一个是下半部。中断处理程序以异步的方式执行,并且它有可能会打断其他重要的代码的执行。因此为了避免被打断代码停止时间过长。中断处理程序应该执行的越快越好。就像前面所说的,中断处理程序往往需要对硬件进行操作,所以有很高的时

2015-12-01 12:33:42 597

空空如也

空空如也

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

TA关注的人

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