博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
主机上静态存储器和随机存储存储器
阅读量:7254 次
发布时间:2019-06-29

本文共 823 字,大约阅读时间需要 2 分钟。

今天学习了一些电脑关于存储的知识:ROM和RAM。有了一定的了解,就写出来一下。因为在nginx和varnish上也有用到这两个知识,一个是根据内存,一个是根据硬盘对数据进行缓存。

ROM(只读存储器)在断电之后数据也不会消失,一般用来存储系统文件,和软件数据。
RAM(随机存储存储器)断电之后数据会消失,内存,cache,buffer,都是这类的存储。
RAM又有sram,dram,静态ram一般指的是cache,动态ram一般指的就是内存,buffer之类数据。
由于cpu的工作频率和cpu的工作频率不同,在内存中读取数据,会比较慢,内存跟不上cpu的步骤,所以在cpu和内存之间有cache可以提高cpu读取的效率,但造价高,体积大。而且在cache中读取数据还会有命中的概率问题,有的请求在cache中找不到,一般的命中率在80左右,所以又会有一级和二级缓存的区别,在一级缓存中找不到的请求可以在二级缓存中寻找。如果都找不着就需要在内存中去寻找了,而内存是cpu寻找的数据的存放场所,所以内存是不可缺少的。而且内存的容量是cache无法比拟的。
buffer(缓冲)是为了提高内存和硬盘(或其他I/O设备)之间的数据交换的速度而设计的,避免了程序在尽心读写的时候的很多分散的操作都要去进行。将操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。
简单来说,buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的。 buffer是由各种进程分配的,被用在如输入队列等方面。一个简单的例子如某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先前读入的字段放在buffer中保存。

cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提高系统性能

转载于:https://blog.51cto.com/13374049/2056099

你可能感兴趣的文章
Oracle数据库备份还原工具之Expdp/IMPdp
查看>>
【转】android JNI编程 一些技巧(整理)
查看>>
MySQL之终端(Terminal)管理数据库、数据表、数据的基本操作
查看>>
各种排序算法汇总
查看>>
C#巧用Excel模版变成把Table打印出来
查看>>
SOAP 及其安全控制--转载
查看>>
JarSearch
查看>>
[Unity3D][Vuforia][IOS]vuforia在unity3d中添加自己的动态模型,识别自己的图片,添加GUI,播放视频...
查看>>
Freemodbus介绍及测试
查看>>
[转]Phantomjs实现获取网页快照并生成缩略图
查看>>
leveldb源码学习系列
查看>>
Linux 运行 apt-get install 就出现jdk installer 错误的解决方法
查看>>
Android OpenGL ES(九)绘制线段Line Segment .
查看>>
Ubuntu下安装配置JDK1.7
查看>>
转载:STM32之中断与事件---中断与事件的区别
查看>>
[裴礼文数学分析中的典型问题与方法习题参考解答]4.5.10
查看>>
设计模式(十四)单例模式(创建型)
查看>>
JAVA修饰符类型(public,protected,private,friendly)
查看>>
haxm intelx86加速模拟器的安装
查看>>
(ETW) Event Tracing for Windows 入门 (含pdf下载)
查看>>