自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 linux内存管理——kmalloc和vmalloc

进程的4GB内存空间被人为的分为两个部分--用户空间与内核空间。用户空间地址分布从0到3GB(PAGE_OFFSET,在0x86中它等于0xC0000000),3GB到4GB为内核空间。  内核空间中,从3G到vmalloc_start这段地址是物理内存映射区域(该区域中包含了内核镜像、物理页框表mem_map等等),比如我们使用 的 VMware虚拟系统内存是160M,那么3G~3G

2016-09-23 15:26:35 1118

转载 linux进程调度

进程从非TASK_RUNNING状态变为TASK_RUNNING状态,是由别的进程(也可能是中断处理程序)执行唤醒操作来实现的。执行唤醒的进程设置被唤醒进程的状态为TASK_RUNNING,然后将其task_struct结构加入到某个CPU的可执行队列中。于是被唤醒的进程将有机会被调度执行。   而进程从TASK_RUNNING状态变为非TASK_RUNNING状态,则有两种途径:

2016-09-10 18:42:07 418

原创 IO模型(select, poll, epoll的区别和原理)

参考http://blog.csdn.net/blueboy2000/article/details/4485874参考http://blog.csdn.net/suxinpingtao51/article/details/46314097参考《unix网络编程》五种I/O模型阻塞I/O:应用程序调用一个IO函数,导致应用程序阻塞,如果数据已经准备好,从内核拷贝到用

2016-09-08 11:28:18 8088 2

转载 内核页表和进程页表

初学内核时,经常被“内核页表”和“进程页表”搞晕,不知道这到底是个啥东东,跟我们平时理解的页表有和关系。。内核页表:即书上说的主内核页表,在内核中其实就是一段内存,存放在主内核页全局目录init_mm.pgd(swapper_pg_dir)中,硬件并不直接使用。进程页表:每个进程自己的页表,放在进程自身的页目录task_struct.pgd中。在保护模式下,从硬件角度看,其运行的基本对

2016-09-07 15:52:57 2539

转载 排序算法的总结

每种排序的总结见http://www.cnblogs.com/gaochundong/p/comparison_sorting_algorithms.html#intro_sort内省排序(Introsort)是由 David Musser 在 1997 年设计的排序算法。这个排序算法首先从快速排序开始,当递归深度超过一定深度(深度为排序元素数量的对数值)后转为堆排序。采用这个方法

2016-09-06 21:24:47 357

转载 B树、B+树和B*树

参考http://blog.csdn.net/v_july_v/article/details/6530142大规模数据存储中,实现索引查询这样一个实际背景下,树节点存储的元素数量是有限的(如果元素数量非常多的话,查找就退化成节点内部的线性查找了),这样导致二叉查找树结构由于树的深度过大而造成磁盘I/O读写过于频繁,进而导致查询效率低下,那么如何减少树的深度(当然是不能减少查询的数据量),一个

2016-09-04 12:03:17 519

原创 linux中process, kernel thread, user thread的区别

进程的contex switch开销较大:因为需要change 地址空间,但change address space is simply a register change in the CPU?改变页表寄存器中的地址即可啊,为什么开销大呢,其实是因为需要"flusing the translation look-aside buffer"线程间的contex switch开销较小:但是会有c

2016-09-03 10:24:25 4105

原创 Linux内核同步方式总结

阅读《深入理解linux内核》笔记内核抢占:如果进程正在执行内核函数时(即它在内核态运行时),允许发生内核切换(被替换的进程是正在执行内核函数的进程),这个内核就是抢占的。运行在内核态的进程可以自动放弃cpu,称为计划性进程切换,抢占式内核中,进程被迫放弃CPU,称为强制性进程切换。抢占内核的主要特点是:一个内核态运行的进程,可能在执行内核函数期间被另一个进程取代。内核抢占就会发生一种

2016-09-02 21:49:20 3655

原创 死锁及其解决方案(避免、预防、检测)

死锁的产生的条件

2016-09-02 11:00:14 20808

空空如也

空空如也

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

TA关注的人

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