熬之滴水成石:最想深入了解的内容--windows内核机制(17)

原创 2013年12月04日 00:01:45

                                                      68-内存管理(6)

说说执行体的内存池的事吧!和前面提到的系统内存池一样,在执行体内也有内存池这样的模块。相比系统的内存池的管理粒度,执行体的粒度是很小的了。因为在这个层面,windows更需要实现灵活的、可适应各种大小的内存需求的内存池。执行体内存池的对象是由数据结构来描述,在这个数据结构中申明的变量都与执行体的对象有很大的关系。和系统内存池对象一样,执行体内存池的对象也分换页和非换页两种方式。也要进行相应的初始化工作,有相关的函数分别执行初始化相关的非换页内存池对象和换页内存池对象。在执行体有个叫initializepool的函数,该函数组成有些意思,在代码执行前段部分完成非换页内存池的初始化,在后半部分则完成换页内存池的初始化。其实这种方式正是一个合理的内存分配过程,先执行非换页的内存池申请,再执行换页内存池申请。执行体内的内存池管理算法主要分为2种,我所知道的是一种叫快查方法,原理则很简单主要是将空闲的内存链表记录这各种需要分配的内存,当内存池需要更多内存时,它可以向对应的系统内存池申请更多的一面,当内存释放时,让释放的内存的与相邻的尽量合并,以形成更多的内存块,前面所说内存管理大致都是类似的模式。这种快查表都是依附线程池对象生存的,这些表里通常都是8字节倍数大小的空闲链表。全局变量限定了内存分配的范围,如果内存分配超过了规定的大小,则在执行体内的内存池去找系统内存池去要内存。在执行体内最小的内存块为8个字节,快表就是保存着8、16、24直到4080大小的空闲内存块。如果用户要申请大于4080但小于4090的话,就可以直接使用整个页面。

                                                                                                                                                                                  未完待续...........

熬之滴水成石:最想深入了解的内容--windows内核机制(2)

54-复杂的windows系统 可以说windows是一个复杂的系统,也是许多IT人士接触最为多的一个操作系统。当然windows无论在国外还是在世界范围内都有广泛的客户群体。那么在这个操作系统中会是...

熬之滴水成石:最想深入了解的内容--windows内核机制(5)

57--windows进程和线程(2) 这一章要细细的说说一下进程,在winodws的OS系统首先会创建一个地址空间为自己创建运行的环境,而线程实际上就是在这个环境中执行的序列。每个进程至少都有一个...

熬之滴水成石:最想深入了解的内容--windows内核机制(12)

63-内存管理(1) 老实说,这块内容一直是我的硬伤。但出于自己总结自己的积累,所以写在这里也无妨!把自己的理解写出来,被小伙伴指出其实也是一件非常有收获的事情。在OS中操作系统往往会硬件会找到相关...

熬之滴水成石:最想深入了解的内容--windows内核机制(11)

62--进程和线程(8) 该说说我们在windows编程中经常遇到的一个问题了,就是同步问题。同步的概念其实是源于并发的一种现象。并非在OS中实际上就是多个线程在同时进行,其实实际上并不是真正的并行执...

熬之滴水成石:最想深入了解的内容--windows内核机制(10)

62--进程和线程(7) 这个章节说说线程的调度,我所理解的多线程并发在windows中现象实际上就是当线程个数远远大于处理器的数量。而在处理这些线程时,肯定是有的线程先处理,有些延后处理。这里就涉及...

熬之滴水成石:最想深入了解的内容--windows内核机制(3)

55--内存管理 在winodwsOS的内存管理中,在32位的系统中是将虚拟空间地址按照0-4GB的线性地址空间,任何一个进程都定义了它自己完整的4GB地址空间。其中2GB-4GB之间是进程共享的称为...

熬之滴水成石:最想深入了解的内容--windows内核机制(8)

60 进程和线程(5) 好了,该说说执行体层次的进程和线程的处理结构了。在执行体这端,数据结构是EPROCESS,这也是一个相对比较复杂的结构体。首先会有一个域会专门与之前提到的内核进程的KPROC...

熬之滴水成石:最想深入了解的内容--windows内核机制(1)

53--关于OS 本来接着是要写HTML的,但是一次偶遇让我改变了想法。近段时间,我遇到了一个技术牛人褚老大,他跟我提出一些关于OS的事情,那个时候我才发现自己的深入是那么的肤浅,关于windows...

熬之滴水成石:HTML--WEB的基本语言 (1)

52--初识HTML 可以说,在2011年之前我从未接触过WEB前端开发工作,对此我了解甚少!但在11年后开始接触安卓开发时,特别对于界面布局时!感觉和WEB前端有异曲同工之妙,也就是从那个时候起,我...

熬之滴水成石:Spring--精简的J2EE(9)

51--事务处理 在Spring中处理事务有两种:一种为声明式另一种为编程式的事务。对于事务的理解可以认为是作为单个逻辑工作单元执行的一系列操作。 作为事务必须有这样的特性:原子性,一致性,独立性,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:熬之滴水成石:最想深入了解的内容--windows内核机制(17)
举报原因:
原因补充:

(最多只允许输入30个字)