总结《现代操作系统》的一些概念知识。
1.进程上下文环境:
对进程执行活动全过程的静态描述
由进程的用户地址空间内容、硬件寄存器内容及与该进程相关的核心数据结构组成
用户级上下文:进程的用户地址空间(包括用户栈各层次),包括用户正文段、用户数据段和用户栈 寄存器级上下文:程序计数器、程序状态寄存器、栈指针、通用寄存器的值 系统级上下文: 静态部分(PCB和资源...
分类:
其他好文 时间:
2014-09-01 00:31:31
阅读次数:
305
传统OS环境中,CPU对内存的访问都必须通过MMU将虚拟地址VA转换为物理地址PA从而得到真正的Physical Memory Access,即:VA->MMU->PA,见下图。
虚拟运行环境中由于Guest OS所使用的物理地址空间并不是真正的物理内存,而是由VMM供其所使用一层虚拟的物理地址空间,为使MMU能够正确的转换虚实地址,Guest中的地址空间的转换和访问都必须借助VMM来实现,...
分类:
其他好文 时间:
2014-08-30 00:06:48
阅读次数:
421
O(n log n)时间复杂度和常量地址空间下进行链表排序。
链表快速排序与链表的归并排序,以及两种性能对比思考。...
分类:
其他好文 时间:
2014-08-27 18:50:38
阅读次数:
239
第一章:C/C++语言提供两种不同的编程模式:IPL32和PL64。? IPL32 ● 表示integer/pointer/long三种数据类型是32位(4个字节),在这种模式下,提供32位的地址空间,理论的内存使用限制为4G。? PL64 ● 表示pointer/long两种数据类型是64位(8个...
分类:
其他好文 时间:
2014-08-27 14:31:37
阅读次数:
182
定义:为其他对象提供一种代理以控制对这个对象的访问。类图:应用场景: 1、远程代理,也就是一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。 2、虚拟代理,是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真实对象。 3、安全代理,用来控制对象访问...
分类:
其他好文 时间:
2014-08-24 23:47:43
阅读次数:
324
+++++++++++++++++++++++++ +++++Linux系统管理+++++++++++++++++++++++++++++++1. 进程管理 进程简介:进程是一个正在执行的程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。 进程管理的作用: ...
分类:
系统相关 时间:
2014-08-24 18:01:12
阅读次数:
239
本篇文章是对php缓冲output_buffering进行了详细的分析介绍,需要的朋友参考下 buffer buffer是一个内存地址空间,Linux系统默认大小一般为4096(4kb),即一个内存页。主要用于存储速度不同步的设备或者优先级不同的...
分类:
Web程序 时间:
2014-08-24 11:47:04
阅读次数:
234
抱着拿来主义,自己挑选了部分,以下内容摘自网络。Linux内核地址空间划分 通常32位Linux内核地址空间划分0~3G为用户空间,3~4G为内核空间。注意这里是32位内核地址空间划分,64位内核地址空间划分是不同的。 Linux内核高端内存的由来 当内核模块代码或线程访问内存时,代码中的内存地址都为逻辑地址,而对应到真正的物理内存地址,需要地址一对一的映射,如逻辑地址0xc0000003对应的物...
分类:
系统相关 时间:
2014-08-20 16:34:22
阅读次数:
353
1. DLL 和 进程的地址空间: 在 可执行模块 能够调用一个 dll 中的函数之前,必须将该 dll 的文件映像映射到进程的 地址空间中。 注意: 在 dll 中预定地址空间或者分配内存,这段内存是从进程地址空间中分配的,因此当 dll 被卸载时,之前由 dll 分配的内存并...
分类:
其他好文 时间:
2014-08-18 22:01:33
阅读次数:
488
所谓进程的地址空间,指的就是进程的虚拟地址空间。当创建一个进程时,内核会为该进程分配一个线性的地址空间(虚拟地址空间),有了虚拟地址空间后,内核就可以通过页表将进程的物理地址地址空间映射到其虚拟地址空间中,程序员所能看到的其实都是虚拟地址,物理地址对程序员而言是透明的。当程序运行时,MMU硬件机制会...
分类:
其他好文 时间:
2014-08-14 19:42:49
阅读次数:
436