内核数据结构贯穿于整个内核代码中,这里介绍4个基本的内核数据结构。 利用这4个基本的数据结构,可以在编写内核代码时节约大量时间。 主要内容: 链表 队列 映射 红黑树 1. 链表 链表是linux内核中最简单,同时也是应用最广泛的数据结构。 内核中定义的是双向链表。 1.1 头文件简介 内核中关于链 ...
分类:
系统相关 时间:
2017-08-24 19:57:28
阅读次数:
248
内核的内存使用不像用户空间那样随意,内核的内存出现错误时也只有靠自己来解决(用户空间的内存错误可以抛给内核来解决)。 所有内核的内存管理必须要简洁而且高效。 主要内容: 内存的管理单元 获取内存的方法 获取高端内存 内核内存的分配方式 总结 1. 内存的管理单元 内存最基本的管理单元是页,同时按照内 ...
分类:
系统相关 时间:
2017-08-24 19:47:19
阅读次数:
203
在尝试内核开发之前,需要对内核有个整体的了解。 主要内容: 获取内核源码 内核源码的结构 编译内核的方法 内核开发的特点 1. 获取内核源码 内核是开源的,所有获取源码特别方便,参照以下的网址,可以通过git或者直接下载压缩好的源码包。 http://www.kernel.org 2. 内核源码的结 ...
分类:
系统相关 时间:
2017-08-24 18:04:45
阅读次数:
154
主要内容: 什么是调度 调度实现原理 Linux上调度实现的方法 调度相关的系统调用 1. 什么是调度 现在的操作系统都是多任务的,为了能让更多的任务能同时在系统上更好的运行,需要一个管理程序来管理计算机上同时运行的各个任务(也就是进程)。 这个管理程序就是调度程序,它的功能说起来很简单: 此外,为 ...
分类:
系统相关 时间:
2017-08-24 18:01:13
阅读次数:
187
本篇简单介绍内核相关的基本概念。 主要内容: 单内核和微内核 内核版本号 1. 单内核和微内核 原理 优势 劣势 单内核 微内核 Linux的内核虽然是基于单内核的,但是经过这么多年的发展,也具备微内核的一些特征。(体现了Linux实用至上的原则) 主要有以下特征: 2. 内核版本号 内核的版本号主 ...
分类:
系统相关 时间:
2017-08-24 17:59:54
阅读次数:
166
进程是所有操作系统的核心概念,同样在linux上也不例外。 主要内容: 进程和线程 进程的生命周期 进程的创建 进程的终止 1. 进程和线程 进程和线程是程序运行时状态,是动态变化的,进程和线程的管理操作(比如,创建,销毁等)都是有内核来实现的。 Linux中的进程于Windows相比是很轻量级的, ...
分类:
系统相关 时间:
2017-08-24 17:55:38
阅读次数:
166
一 通用规则 毛利率在40%以上的公司,一般都具有某种可持续性竞争优势,而毛利率低于40%的公司,则一般都处于高度竞争的行业,因为竞争会削弱行业的总利润率。如果一个行业的毛利润率低于20%,显然这个行业过度竞争,很难创造出可持续的竞争优势。 筛选出毛利率在40%以上,净利润在20%以上的上市公司。资 ...
分类:
其他好文 时间:
2017-08-24 16:11:44
阅读次数:
179
1.关于艺术家们画的不够逼真的作品 毫无疑问,现代艺术家们有足够的知识作出更逼真的作品,因此,当我们看到一副画画的不够正确时,首先应该考虑两件事,一件事是艺术家是否无端地更改了他所见的事物 的外形,另一件事是除非已经证明我们的看法正确而画家是错的,否则就不能指责一幅画画的不正确。一幅作品不够正确的地 ...
分类:
其他好文 时间:
2017-08-24 01:13:19
阅读次数:
200
要参与C语言项目,于是作者只好重拾C语言(之前都是C++,还是C++方便)。 看到大家都推荐看看 C陷阱与缺陷(C traps and pitfalls),于是好奇的开始了这本书的读书之旅。 决定将书中重要的知识点和易错点记录下来方便自己复习和他人学习~~不多说了,下面开始。 第一章:词法陷阱 其实 ...
分类:
其他好文 时间:
2017-08-24 01:07:43
阅读次数:
186
已经不记得是什么时候开始读这套书,直到今天才终于初步完成,这真是一段艰苦的心灵旅程。 作为阳明学和王阳明研究的大师,作者在书中巨细靡遗的介绍了王阳明有记载的所有活动和事件,掺杂大量原古文和诗文,对于详细的时间和事件的细节穷根究底,不厚的三本书里信息量巨大!不得不由衷佩服这些的日本大师们,也由此可以窥 ...
分类:
其他好文 时间:
2017-08-23 10:42:07
阅读次数:
156