作者:liushengxi_root 发表于 2019/02/22 18:28:12 原文链接 https://blog.csdn.net/liushengxi_root/article/details/86761511 阅读:37 继续阅读 >>


刘生玺 19/02/22 18:28:12
0 内存管理概述 包括内存管理和虚拟内存管理。 内存管理包括:内存管理概念、交换与覆盖、连续分配管理方式和非连续分配管理方式(分页管理方式、分段管理方式、段页式管理方式)。 虚拟内存管理包括:虚拟内存概念、请求分页管理方式、页面置换算法、页面分配策略、工作集和抖动。 内存管理的概念 操作系统对内存的划分和动态分配 内存管理的功能 内存空间的分配与回收:由操作系统完成主存储器空间的分配和管理,使程序员摆脱存储分配的麻烦,提高编程效率。 地址转换:在多道程序环境下,程序中的逻辑地址与内存中的物理地址不可能一致,因此存储管理必须提供地址变换功能,把逻辑地址转换成相应的物理地址。 内存空间的扩充:利用虚拟存储技术或自动覆盖技术,从逻辑上扩充内存。 存储保护:保证各道作业在各自的存储空间内运行,.互不干扰。 1 存储器的层次结构 CPU 寄存器 寄存器 主存 高速缓存 主存 磁盘缓存 辅存 磁盘 可移动存储介质 寄存器,高速缓存,主存,磁盘缓存属于 继续阅读 >>


刘生玺 18/07/02 23:14:35
这个我是感觉在思路上没有那么复杂啦,参考书上的提示应该能够自己写出来,就直接上代码了 #include<iostream> #include<memory> #include<utility> #include<string> #include<algorithm> //Equivalent to " vector<string> " class StrVec{ public: StrVec():elements(nullptr),frist_free(nullptr),cap(nullptr){ } StrVec( const StrVec & ) ; StrVec( const std::initializer_list<std::string> & ) ; StrVec& operator=( const StrVec & ) ; 继续阅读 >>


刘生玺 18/04/19 19:17:33
翻译自Spark官网文档,版本:2.3.0 spark内存管理概览 Spark很大一部分内存用于storage和execution,即存储和执行任务。execution memory指的是在shuffle,join,sorts,aggregation操作中使用的内存,storage memory指的是用于整个集群缓存数据和传播中间数据的内存。 spark中storage和execution分... 作者:gaopu12345 发表于 2018/04/09 23:30:55 原文链接 https://blog.csdn.net/gaopu12345/article/details/79874657 阅读:71 继续阅读 >>


高朴 18/04/09 23:30:55
buddy system简介: buddy system内存管理,努力让内存分配与相邻内存合并能快速进行(对于普通算法来讲,合并内存相当困难),它利用的是计算机擅长处理2的幂运算。 我们创建一系列空闲块列表,每一种都是2的倍数。 举个例子,如果最小分配单元是8字节,整个内存空间有1M。我们创建8字节内存块链表,16字节内存块链表,32字节内存块链表,64,128,256,512,1k,2K,... 作者:chudongfang2015 发表于 2018/03/03 22:58:13 原文链接 https://blog.csdn.net/chudongfang2015/article/details/79433748 阅读:194 继续阅读 >>


楚东方 18/03/03 22:58:13
32 位的平台上,线性地址空间为固定的 4GB,并且由于采用了保护机制,Linux内核将这 4GB 分为两部分,线性地址较高的 1GB(0xC0000000 到 0xFFFFFFFF )为共享的内核空间;而较低的 3GB 为每个进程的用户空间。由于每个进程都不能直接访问内核空间,而是通过系统调用间接进入内核,因此所有的进程都共享内核空间。而每个进程都拥有各自的用户空间,各个进程之间不能互相访问彼此的 作者:Tanswer_ 发表于 2017/12/10 14:47:55 原文链接 https://blog.csdn.net/Tanswer_/article/details/78764778 阅读:635 继续阅读 >>


杜肖孟 17/12/10 14:47:55
内存为什么要管理 在OS中,每个运行的进程都会占用内存,那么操作系统势必要做好两件事:内存分配和内存回收。这便是本次实验要做的模拟实验了。 内存分配策略 FF(首次适应算法) 这种策略旨在从最低地址的空闲分区开始找起,找到合适的便进行分配。内存空间按起始地址从小到大排序。 优点:查找速度快 缺点:低地址会留下较多的内存碎片,高地址则会存留大块空闲分区。 BF(最佳适应算法) 这种策略每次分配都将最小块的满足需求空闲分区拿去分配。内存空间按空闲区从小到大排序。 优点:保留大的空闲分区。 缺点:造成很多小的空闲分区。 WF(最差适应算法) 这种策略每次分配都将最大块的满足需求空闲分区拿去分配。内存空间按空闲区从大到小排序。 优点:不会留下许多小的内存碎片。往往可以装入多个大内存程序。 缺点:留下大空闲区的可能减少了。 内存管理实验内容 模拟操作系统,既然是模拟,那么自然比真正的内存分配简单很多。 程序中两个链表: 空闲内存区块表,包含该空闲区的起始地址以及 继续阅读 >>


李余通 17/11/10 18:56:25
[crayon-5955290b4e1eb881321036/] [crayon-5955290b4e2013 […] 继续阅读 >>


张明瑞 17/06/29 14:59:23
内存分配   这里不再讨论具体架构的内存管理问题,内存的具体结构可以参考我对内存关系分析的博客。我们 […] 继续阅读 >>


张明瑞 17/05/10 00:55:46
Concurrency and competition   并发与竞态 竞态 竞态条件(race c […] 继续阅读 >>


张明瑞 17/04/30 05:07:43