在上一篇博文里,我们已经看到Linux如何有效地利用80x86的分段和分页硬件单元把逻辑地址转换为线性地址,在由线性地址转换到物理地址。那么我们的应用程序如何使用这些逻辑地址,整个内存的地址布局又是怎样的?打一个比方,内存就像一座城市,而居住在这个城市里的市民就像是各个进程,一个市民吃喝拉撒睡,当然 ...
分类:
系统相关 时间:
2017-01-16 10:52:25
阅读次数:
248
对于ARM中内核如何在启动的时候设置高低端内存的分界线(也是逻辑地址与虚拟地址分界线(虚拟地址)减去那个固定的偏移),这里我稍微引导下(内核分析使用Linux-3.0): 首先定位设置内核虚拟地址起始位置(也就是内核逻辑地址末端+1的地址)的文件:init.c (arch\arm\mm),在这个文件 ...
分类:
系统相关 时间:
2016-11-18 12:15:14
阅读次数:
221
linux虚拟内存管理功能? 大地址空间;? 进程保护;? 内存映射;? 公平的物理内存分配;? 共享虚拟内存。实现结构剖析(1)内存映射模块(mmap):负责把磁盘文件的逻辑地址映射到虚拟地址,以及把虚拟地址映射到物理地址(2)交换模块(swap)负责控制内存内容的换入与换出,淘汰最近没访问的页,... ...
分类:
系统相关 时间:
2016-11-08 19:55:28
阅读次数:
279
2.1 内存地址
80x86微处理器的三种不同地址:
逻辑地址:包含在机器语言指令中用来指定一个操作数或一条指令的地址
每一个逻辑地址都有一个段和偏移量组成,偏移量指明了段开始的地方到实际地址之间...
分类:
系统相关 时间:
2016-10-24 16:03:21
阅读次数:
287
一、内存管理概念 1. 存储管理的功能 (1) 内存空间的分配与回收 , 包括内存的分配和共享。 (2) 地址转换 : 内存管理配合硬件进行地址转换 , 把逻辑地址转换成物理地址。 (3) 内存空间的扩充 : 借助于虚拟存储器或交换覆盖技术来达到扩充内存容量的目的。 (4) 内存保护和共享 : 为了 ...
分类:
其他好文 时间:
2016-10-16 19:12:55
阅读次数:
264
网络通信三要素 IP地址: InetAddress 网络中设备的标识,不易记忆,可用主机名(计算机的标识号) 端口号: 用于标识进程的逻辑地址,不同进程的标识(正在运行的软件的标识号) 传输协议: 通讯的规则 常见协议:TCP,UDP 例子: 平时我们要进行通讯,需要哪些要素呢? 比如说:我要跟你说 ...
分类:
编程语言 时间:
2016-10-14 20:11:09
阅读次数:
181
软考随堂笔记 考点1 实存管理 考点2 虚存管理 程序的装入(重定位)(将逻辑地址转换成物理地址) 静态重定位:静态重定位是在虚空间程序执行之前由装配程序完成地址影射工作。 动态重定位:动态重定位是在程序执行过程中,在CPU访问内存之前,将要访问的程序或数据地址转换为内存地址。 实存管理 存储管理的 ...
分类:
其他好文 时间:
2016-10-09 00:29:04
阅读次数:
119
OSI七层模型分为 物理层: 建立、维护、断开物理连接 处理bit流 数据链路层,将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正 处理数据帧 Frame 网络层,进行逻辑地址寻址,实现不同网络之间的路径选择 处理包packet IP协议就是运行在这一层 传输层, 定义传输数据 ...
分类:
Web程序 时间:
2016-10-02 12:55:56
阅读次数:
268
网络编程:端口:物理端口:逻辑端口:用于标识进程的逻辑地址,不同进程的标识;有效端口:0~65535,其中0~1024系统使用或保留端口。 java 中ip对象:InetAddress.import java.net.*;class IPDemo{ public static void main(S... ...
分类:
其他好文 时间:
2016-10-01 22:27:28
阅读次数:
352
网络上的请求就是通过Socket来建立连接然后互相通信 IP地址(网络上主机设备的唯一标识) 端口号(定位程序) 用于标示进程的逻辑地址,不同进程的标示 有效端口:0~65535,其中0~1024由系统使用或者保留端口,开发中建议使用1024以上的端口 传输协议(用什么样的方式进行交互) 通讯的规则 ...
分类:
其他好文 时间:
2016-09-26 21:34:46
阅读次数:
107