之前写过一篇简单的介绍mmap()/munmap()的文章《Linux内存管理 (9)mmap》,比较单薄,这里详细的梳理一下。 从常用的使用者角度介绍两个函数的使用;然后重点是分析内核的实现流程;最后对mmap()/munmap()进行一些验证测试。 mmap系统调用并不完全是为了共享内存而设计的 ...
分类:
系统相关 时间:
2018-07-28 00:11:11
阅读次数:
792
1. 创建分区文件, 大小 2G 2. 生成 swap 文件系统 3. 激活 swap 文件 这样就木有问题了, 但是这样并不能在系统重启的时候自动挂载交换分区, 这样我们就需要修改 fstab.修改 /etc/fstab 文件, 新增如下内容: 这样每次重启系统的时候就会自动加载 swap 文件了 ...
分类:
系统相关 时间:
2018-07-10 11:09:33
阅读次数:
192
一、Linux 内存管理的基本框架 线性地址的映射分为4步: 1.线性地址最高的位段作为下标 在PGD(页面目录)中找到表项,该表项指向PMD(中间目录)。 2.线性地址第二位段作为下标在PMD中找到表项,该表项指向页面表。 3.线性地址第三位段作为下标在页面表中找到PTE,该表项存放指向物理页面的 ...
分类:
其他好文 时间:
2018-07-03 22:35:28
阅读次数:
176
随着互联网及互联网+深入蓬勃的发展,经过40余年的时间洗礼,C/C++俨然已成为一门贵族语言,出色的性能使之成为高级语言中的性能王者。 后端服务器,移动互联网后端,经典Windows界面开发,移动互联网端界面开发,跨平台界面开发,图形分析,系统架构,应用设计,还有现在最为流行的分布架构等一些新的技术 ...
分类:
编程语言 时间:
2018-06-29 16:25:26
阅读次数:
147
linux中内存的使用 当有应用需要读写磁盘数据时,由系统把相关数据从磁盘读取到内存,如果物理内存不够,则把内存中的部分数据导入到磁盘,从而把磁盘的部分空间当作虚拟内存来使用,也称为Swap。如果给所有应用分配足够内存后,物理内存还有剩余,linux会尽量再利用这些空闲内存,以提高整体I/O效率,其 ...
分类:
系统相关 时间:
2018-06-22 13:47:35
阅读次数:
208
memtester官网:http://pyropus.ca/software/memtester/linux平台安装:1).wget http://pyropus.ca/software/memtester/old-versions/memtester-4.3.0.tar.gz2).tar -xzvf memtester-4.3.0.tar.gz3).cd memtester-4.3.
分类:
系统相关 时间:
2018-06-19 16:27:23
阅读次数:
1704
一、前言 在linux内核中支持3种内存模型,分别是Flat memory model,Discontiguous memory model和Sparse memory model。三种内存模型对应于linux内核的配置选项分别为:CONFIG_FLATMEM,CONFIG_DISCONTIGMEM ...
分类:
系统相关 时间:
2018-06-17 16:07:12
阅读次数:
578
Linux内存中线性地址为4G,0~3G为用户空间,3~4G为内核空间一、????? 内核空间内核空间是3~4G的内存地址,主要用来存储高优先级的代码在X86结构中的内核地址存在三种类型的区域:?????? ? ZONE_DMA???? 内
分类:
系统相关 时间:
2018-06-07 00:35:26
阅读次数:
240