内存条

内存管理

匿名 (未验证) 提交于 2019-12-02 23:57:01
为了让每个进程认为 独占 地使用内存,并且让每个进程看到的内存是 一致 的,操作系统对物理内存、磁盘进行了 抽象 ,抽象出 虚拟内存 。并且把虚拟内存、物理内存以相同固定大小的 ҳ 进行切分管理( 分页 ),虚拟内存中叫页,物理内存中的叫页帧。 每个进程虚拟地址空间是独立的。用户访问的是虚拟内存的地址,即虚拟地址。需要通过 CPU 芯片上的 内存管理单元 MMU 硬件根据页表 翻译 成物理地址,才能真正访问内存。 页表 :每个进程都有它的独立的页表(放在内存里),用来存对虚拟页、物理页的 映射 。页表可以有多级页表,以时间换取空间(实际上,多级页表的地址翻译,并不比单级页表慢很多)。 如果直接按一个个程序加载到内存,会出现内存 碎片 。 后来出现 分段 机制,按程序的各段来存储,从而减少碎片,但是还是有很多。 所以引出分页,把程序分成更小的页(一般大小为 4KB )来管理内存。分得更小,会增加负荷,但实际上利大于弊。 通过虚拟地址 访问 数据: MMU 先通过它里面的 TLB 缓存查询,如果没有,则去内存中的 页表 进行查询。成功翻译成物理地址后,访问 一级缓存 获取数据。如果没有则访问 二级缓存 (可能还有三级缓存)。还是没有就访问 内存 。 物理内存 不够 时: 将不用的页面换出到磁盘中的 swap 分区 里。 包含: 程序代码和静态变量(根据可执行文件进行初始化,并固定了大小

[转帖]鲁大师Q3季度PC内存排行:DDR3彻底淘汰 DDR5要来了

痴心易碎 提交于 2019-12-02 10:21:01
鲁大师Q3季度PC内存排行:DDR3彻底淘汰 DDR5要来了 https://www.cnbeta.com/articles/tech/902347.htm 10月23日消息,今天鲁大师公布Q3季度PC内存排行,结合内存市场占比来看,金士顿依然霸占市场份额NO.1,份额高达23.85%,三星靠着笔记本内存庞大的销量稳居第二(18.67%),挤入前五的还有海力士、威刚和镁光。 访问: 京东商城 单品方面,最受欢迎的内存TOP 10如下:10款中8GB容量的占了9款。 与去年相比,今年内存价格依然很低,8GB已经成为起步条,16GB、32GB的大容量内存也正式进军市场。 由于两根8GB的内存条可以组成双通道,相比一根16G的内存条单通道性能提升更明显,尽管已经有不少16GB、32GB的大容量内存条,更多的用户也会选择多条8GB的内存条组合,8GB内存条占据了榜单的90%。 最受欢迎内存还有一个特点,2666MHz。目前主流的DDR4内存的频率从2133MHz起步,常见的主要有2400MHz、2666MHz、3000Mhz、3200MHz这四种,最低的2133MHz已经不能满足电脑的需要,基本已经淘汰,而再高的频率对普通用户来说也用不上,因此2666MHz、3000Mhz的内存不管是价格还是性能都很均衡,受到欢迎。 DDR4内存条已经普及了几年,随着内存条价格的下降

给笔记本装内存条

折月煮酒 提交于 2019-12-01 23:57:26
1.查看自己的电脑是否可以加内存条 打开“任务管理器”——点击“性能”——选择“内存”——查看已使用的卡槽,若为“1/2”说明电脑是可以加内存条的 2.根据电脑插口的型号和内存的频率和自己的容量需求,购买内存条 3.关机,打开笔记本后盖(没有拆机撬可以用公交卡代替的),找到内存卡槽所在位置(红圈处),看准定位点(黄色箭头所指),对准那个小缺口,按下卡扣,听到“咔哒”一声就说明安进去了 4.开机后,会出现蓝屏幕的提示,选择“Continue”,按照 1. 的操作,查看内存情况,安装成功后,盒上笔记本后盖。 来源: https://www.cnblogs.com/kori/p/11722147.html

内存管理

本小妞迷上赌 提交于 2019-12-01 13:20:26
内存 内存使用: 将程序放到内存中,PC指向开始地址,然后取指执行。 物理内存: 实际内存。 虚拟内存: 1. 每一个运行的进程,都会获得一个内存地址空间,这就是所谓的虚拟内存。 2. 这里面的所有地址都是虚拟的,和物理内存并不直接挂钩。 3. 这些虚拟地址所映射到的实际地址,可以是物理内存地址,也可以是页面文件的地址。 4. 如果物理内存小于这个虚拟地址的范围, 使用的时候可以将内存数据写入页面文件,通过清空内存数据,以提高物理内存的利用效率。 页面文件: 硬盘上的一块空间,在Windows下表现为一个文件。 这个页面文件存在的意义就是在物理内存被占用满以后, 将物理内存中的东西移动到硬盘上,腾出物理内存给需要的应用程序来使用。 内存管理 内存管理和虚拟内存管理: 内存管理包括: 程序装入等概念、 交换技术、 连续分配管理方式、 非连续分配管理方式(分页、分段、段页式)。 虚拟内存管理包括: 虚拟内存概念、 请求分页管理方式、 页面置换算法、页 面分配策略、 工作集、 抖动。 程序装入和链接 编译: 由编译程序将用户源代码编译成若干个目标模块。 链接: 由链接程序将编译后形成的一组目标模块,以及所需库函数链接在一起,形成一个完整的装入模块。 装入: 由装入程序将装入模块装入内存运行。 重定向(修改程序中的相对地址): 1. 编译时重定位的程序只能放在内存固定位置 2.

【番外】新手如何选购配件比价到完成电脑组装升级

百般思念 提交于 2019-11-30 21:17:16
说明一下北桥苏尽管是和电脑打交道但对电脑硬件的认知少之又少,还有现在的名字(北桥苏)来源就是以前主板芯片组的一员----北桥,只是在后面强行加了一个苏字。因为随着技术迭代,北桥也退出了芯片组逐渐被整合进CPU,所以也算留念才起的名。这篇文章是面向选购新手,所以那些像B站里的职业UP或数码界高手可以略略略哦,看到我有不妥的地方可以留言指正,参考网站:http://www.zol.com.cn/。 购买前 买前可以确定自己组装用来做什么,一般可以分三种:1.普通办公看电影小游戏;2.能畅玩3A单机大作; 3.视频剪辑特效渲染工作。如果是第一次组装,最好就选第一种就算翻车损失也小,但是可以在选购主板和电源注意一下就可以,这个后面说。并且个人建议第一次最好全部购买新配件,比起二手成功概率高更能让你深入研究。还有CPU全新与二手其实价格相差不大,毕竟这种配件是没有假货很保值。用途确定了,可以用笔或表格列一个清单,CPU,主板,内存条,硬盘,显卡,电源,机箱,风扇,外设(可以除外)。后面可以留空,也可以在网上查询别人的硬件搭配清单,根据他们的硬件购买,只要看清楚他们针对的用途是什么就可以,但是关于硬件的参数也有必要了解一下,也能利于后期硬件升级。 硬件参数 1. CPU cpu的两大生产商英特尔和AMD应该多数人知道,PC和服务器的主场。网上也每段时间就会更新CPU天梯图

抽象工厂设计模式

不打扰是莪最后的温柔 提交于 2019-11-30 07:54:27
抽象工厂设计模式最大特点就是解耦。 //业务需求:生产不同内存条搭配Win7系统的电脑 //定义抽象工厂 public interface AbstastFactory { public Ram createRam(); public WinSystem createSys(); } //具体工厂实现 低端电脑配置 public class LowComputer implements AbstastFactory { @Override public Ram createRam() { return new Ram512(); } @Override public WinSystem createSys() { return new SystemWin7(); } } //具体工厂实现 高端电脑配置 public class NiceComputer implements AbstastFactory { @Override public Ram createRam() { return new Ram1G(); } @Override public WinSystem createSys() { return new SystemWin7(); } } //内存条接口 public interface Ram {} //512内存条实现类 public class Ram1G

深度学习小白装机-记录一下

佐手、 提交于 2019-11-29 17:08:55
深度学习小白装机-记录一下 三个备选清单。 原本早就有攒一部机器的想法,最近刚刚好在玩深度学习的小案例,所以产生了装一部自己的台式机的想法。 下面均是自己查资料所得,可能与实际有差入。出错了,我也不负责呀,哈哈。关于价格,我是根据某东自营店价格(截至2019-09)来做比较的,可能不同时间段有差入,价格因素需要自己衡量高低。 我根据不同的价格成本和预设的使用场景设计了三个不同的方案。 先说结论,我最终选择的清单3 学生党版。配置是i5-9600kf+gtx1660ti 。这个清单上GTX 1660ti的显存是6G,cuda核心是1536个,显存频率为9000MHz,显存位宽192bit,这个性能用于应对Kaggle等上中小型数据集的比赛应该是比较足够的。 清单1 工作站版 考虑可以扩展4 GPU 的工作站级别 这里包括预留的电源功率空间和CPU频率最多可以挂载2 CPU。 虽然这个主板属于服务器主板,可以挂载4 GPU,但是不建议自己搭建负载4 GPU的工作站。因为工作站成本本来就高,例如配置目前来说顶级的显卡RTX2080ti,价格会高达1.3w块左右(截至2019-09),光显卡成本就高达5.2w了。搭配CPU等其他配件时,成本会更高。建议有这个资金,不妨请专业的厂家去定制,保修包括购买配件都比较更方便些。 部件 型号 购买网址 价格 GPU选择 ZOTAC 索泰

内存管理

佐手、 提交于 2019-11-29 05:40:01
如何进行内存管理 为了让每个进程认为 独占 地使用内存,并且让每个进程看到的内存是 一致 的,操作系统对物理内存、磁盘进行了 抽象 ,抽象出 虚拟内存 。并且把虚拟内存、物理内存以相同固定大小的 页 进行切分管理( 分页 ),虚拟内存中叫页,物理内存中的叫页帧。 每个进程虚拟地址空间是独立的。用户访问的是虚拟内存的地址,即虚拟地址。需要通过 CPU 芯片上的 内存管理单元 MMU 硬件根据页表 翻译 成物理地址,才能真正访问内存。 页表 :每个进程都有它的独立的页表(放在内存里),用来存对虚拟页、物理页的 映射 。页表可以有多级页表,以时间换取空间(实际上,多级页表的地址翻译,并不比单级页表慢很多)。 为什么用分页机制 如果直接按一个个程序加载到内存,会出现内存 碎片 。 后来出现 分段 机制,按程序的各段来存储,从而减少碎片,但是还是有很多。 所以引出分页,把程序分成更小的页(一般大小为 4KB )来管理内存。分得更小,会增加负荷,但实际上利大于弊。 硬件关系 通过虚拟地址 访问 数据: MMU 先通过它里面的 TLB 缓存查询,如果没有,则去内存中的 页表 进行查询。成功翻译成物理地址后,访问 一级缓存 获取数据。如果没有则访问 二级缓存 (可能还有三级缓存)。还是没有就访问 内存 。 物理内存 不够 时: 将不用的页面换出到磁盘中的 swap 分区 里。 内存空间布局

linux内存管理

大兔子大兔子 提交于 2019-11-28 22:44:20
在linux下,使用top,vmstat,free等命令查看系统或者进程的内存使用情况时,经常看到buff/cache memeory,swap,avail Mem等,他们都代表什么意思呢?这篇文章将来聊一聊Linux下的内存管理并解答这个问题。 讨论Linux下的内存管理其实就是讨论Linux下虚拟内存的实现方式,本人不是内核专家,所以这篇文章只会介绍一些概念性的东西,不会深入实现细节,有些地方描述的有可能不精确。 在早些时候,物理内存比较有限,人们希望程序可以使用的内存空间能超过实际物理内存,于是出现了虚拟内存的概念,不过随着时间的推移,虚拟内存的意义已经远远的超过了最初的想法。 1、虚拟内存 虚拟内存是Linux管理内存的一种技术。它使得每个应用程序都认为自己拥有独立且连续的可用的内存空间(一段连续完整的地址空间),而实际上,它通常是被映射到多个物理内存段,还有部分暂时存储在外部磁盘存储器上,在需要时再加载到内存中来。 每个进程所能使用的虚拟地址大小和CPU位数有关,在32位的系统上,虚拟地址空间大小是4G,在64位系统上,是2^64=?(算不过来了)。而实际的物理内存可能远远小于虚拟地址空间的大小。 虚拟地址和进程息息相关,不同进程里的同一个虚拟地址指向的物理地址不一定一样,所以离开进程谈虚拟地址没有任何意义。 注意 : 网上很多文章将虚拟内存等同于交换空间

内存系列二:深入理解硬件原理

淺唱寂寞╮ 提交于 2019-11-28 22:10:20
内存系列二:深入理解硬件原理 https://www.cnblogs.com/tcicy/p/10087457.html忘记转这一篇了 内存相关的东西 其实理解了挺好的..cache还有main memory 本篇文章承接上文继续介绍DDR内存的硬件原理,包括如何寻址,时序和时延以及可以为提高内存的效能可以有哪些方法。 上次虽然解决了小张的问题,却引发了他对内存原理的兴趣。这不他又来找我了,说我还欠他一个解释。这次我们约在一个咖啡馆见面,这次内容有点深入,我带了些图片,小张也点了一大杯美式,计划大干一场。看着他认真的样子,我也决定毁人不倦,把他也带入IT工程师的不归路。。。 寻址(addressing) 为了了解前几天说的几个延迟参数,不得不介绍下DIMM的寻址方式。也许你发现了上次介绍Rank和chip的关系时,有个Bank/Column/row我们没有讲到,它们和如何寻址密切相关。还记得上次的图片吗? 这次我们来看看rank和Chip里面有什么,如下图: 这是个DDR3一个Rank的示意图。2GB的内存共有16个chip,每个chip容量为128MB。我们把左边128MB Chip拆开来看,它是由8个Bank组成,每个Bank核心是个一个存储矩阵,就像一个大方格子阵。这个格子阵有很多列(Column)和很多行(Row),这样我们想存取某个格子,只需要告知是哪一行哪一列就行了