精华内容
下载资源
问答
  • Ubuntu 如何把内存当做硬盘使用

    千次阅读 2017-06-27 09:21:24
    原链接:https://community.bwbot.org/topic/130在...这时候如果你的内存足够大的话就可以把内存的一部分挂载到文件系统里面当做硬盘使用。使用方法也非常简单。首先创建一个挂载点mkdir ramdisk然后把内存挂载上去sudo

    原链接:https://community.bwbot.org/topic/130

    在做开发的时候有时候会有大量的磁盘读写操作,这样很伤硬盘。比如在进行ROS开发的时候经常要播放bag文件。长时间的测试可能好几个小时都在连续的读硬盘。这时候如果你的内存足够大的话就可以把内存的一部分挂载到文件系统里面当做硬盘使用。使用方法也非常简单。

    首先创建一个挂载点

    mkdir ramdisk

    然后把内存挂载上去

    sudo mount -t tmpfs -o size=8G tmpfs ramdisk/

    size后面跟的是硬盘的大小。这里是挂载了8G的内存。

    看一下效果吧

    直接使用硬盘播放bag文件

    0_1480929092265_Screenshot from 2016-12-05 17:09:09.png

    使用内存之后

    0_1480929293790_Screenshot from 2016-12-05 17:13:25.png

    可以看到效果很明显

    展开全文
  • Linux 把内存当做硬盘来使用

    千次阅读 2019-04-16 16:12:45
    Linux 把内存当做硬盘来使用  tmpfs是一种虚拟内存文件系统, 它存储在VM(virtual memory)里面, VM是由linux内核里面的VM子系统管理,现在大多数操作系统都采用了虚拟内存(MMU)管理机制. linux下面VM的大小由RM(Real...

    Linux 把内存当做硬盘来使用

     tmpfs是一种虚拟内存文件系统, 它存储在VM(virtual memory)里面, VM是由linux内核里面的VM子系统管理,现在大多数操作系统都采用了虚拟内存(MMU)管理机制. linux下面VM的大小由RM(Real Memory)和swap组成,RM的大小就是物理内存的大小, swap的大小是个人决定的(通过硬盘虚拟出来了的).
     为什么需要Swap: 当一个进程申请一定数量的内存时, 如内核的vm子系统发现没有足够的RM时, 就会把RM里面的一些不常用的数据交换到Swap里面,如果需要重新使用这些数据再把它们从swap交换到RM里面. 如果你有足够大的物理内存, 根本不需要划分Swap分区.
     VM由RM+Swap两部分组成, 因此tmpfs最大的存储空间可达The size of RM + The size of Swap但是对于tmpfs本身而言, 它并不知道自己使用的空间是RM还是Swap, 这一切都是由内核的VM子系统管理的.

    命令格式:
    # mount -t tmpfs -o size= 1024m tmpfs /mnt

    分配了1G的空间挂载到/mnt目录下.


    优点

    1. 大小随意分配
    2. 大小实际存储的容量而变化
    3. 不指定size大小是物理内存的一半
    4. 读写速度超级快的!!!

    缺点

    1. 断电内容消失(sync不会写入到硬盘器)

    自动挂载

    配置/etc/fstab
    tmpfs /mnt tmpfs size=1024m 0 0

    Linux的内存器是在/dev/shm路径下, 文件系统类型为tmpfs, 默认的大小是实际物理内存的大小, 对这个路径操作就是内存器的操作

    展开全文
  • 大意是用内存硬盘,提高读写速度。摘记之: MacOS:使用hdid命令就可以:hdid+fstyp_hfs(类似Linux的mkfs.ext4之类的)+mount Win:装了个SuperSpeed的RamDisk Plus划了块4G内存做R:盘在,将...

    今天在网上浏览到如下文章:

    https://blog.csdn.net/dog250/article/details/41418783

    大意是用内存做硬盘,提高读写速度。摘记之:

    MacOS:使用hdid命令就可以:hdid+fstyp_hfs(类似Linux的mkfs.ext4之类的)+mount

    Win:装了个SuperSpeed的RamDisk Plus划了块4G内存做R:盘在用,将C:\Windows\Temp,Temporary Internet Files,XMPCache和pagefile.sys都挪到了R盘下,你懂的。

    Linux:Linux不用非得搞initrd这么麻烦,tmpfs就是kernel支持的一种内存fs,"mount -t tmpfs tmps /your_path"就行了。除非你想将整个rootfs都放到内存里才需要改initrd。一将/tmp挂成tmpfs来用,kernel的编译挪到/tmp下进行,make -j 24完成的时间小于1.5 min。

     

    展开全文
  • documentlinux内存机制CPU内存虚拟内存硬盘物理内存内存和虚拟内存跟 Windows 完全不同的 Linux 内存机制Swap配置对性能的影响 linux内存机制 Linux支持虚拟内存(Virtual Mmemory),虚拟内存是指使用磁盘当作RAM的...

    本文有些篇幅较长,但如果认真读下来,相信你会收获颇丰!!


    在这里插入图片描述

    linux内存机制

    Linux支持虚拟内存(Virtual Mmemory),虚拟内存是指使用磁盘当作RAM的扩展,这样可用的内存的大小就相应地增大了。内核会将暂时不用的内存块的内容写到硬盘上,这样一来,这块内存就可用于其它目的。当需要用到原始的内容时,它们被重新读入内存。这些操作对用户来说是完全透明的;Linux下运行的程序只是看到有大量的内存可供使用而并没有注意到时不时它们的一部分是驻留在硬盘上的。当然,读写硬盘要比直接使用真实内存慢得多(要慢数千倍),所以程序就不会象一直在内存中运行的那样快。用作虚拟内存的硬盘部分被称为交换空间(Swap Space)

    一般,在交换空间中的页面首先被换入内存;如果此时没有足够的物理内存来容纳它们又将被交换出来(到其他的交换空间中)。如果没有足够的虚拟内存来容纳所有这些页面,Linux就会波动而不正常;但经过一段较长的时间Linux会恢复,但此时系统已不可用了。

    有时,尽管有许多的空闲内存,仍然会有许多的交换空间正被使用。这种情况是有可能发生的,例如如果在某一时刻有进行交换的必要,但后来一个占用很多物理内存的大进程结束并释放内存时。被交换出的数据并不会自动地交换进内存,除非有这个需要时。此时物理内存会在一段时间内保持空闲状态。对此并没有什么可担心的,但是知道了是怎么一回事,也就无所谓了。许多操作系统使用了虚拟内存的方法。因为它们仅在运行时才需要交换空间,以解决不会在同一时间使用交换空间,因此,除了当前正在运行的操作系统的交换空间,其它的就是一种浪费。所以让它们共享一个交换空间将会更有效率。

    注意:如果会有几个人同时使用这个系统,他们都将消耗内存。然而,如果两个人同时运行一个程序,内存消耗的总量并不是翻倍,因为代码页以及共享的库只存在一份。Linux系统常常动不动就使用交换空间,以保持尽可能多的空闲物理内存。即使并没有什么事情需要内存,Linux也会交换出暂时不用的内存页面。这可以避免等待交换所需的时间:当磁盘闲着,就可以提前做好交换。可以将交换空间分散在几个硬盘之上。针对相关磁盘的速度以及对磁盘的访问模式,这样做可以提高性能。与访问物理内存相比,磁盘的读写是很慢的。另外,在相应较短的时间内多次读磁盘同样的部分也是常有的事。例如,某人也许首先阅读了一段E-mail消息,然后为了答复又将这段消息读入编辑器中,然后又在将这个消息拷贝到文件夹中时,使得邮件程序又一次读入它。或者考虑一下在一个有着许多用户的系统中 ls命令会被使用多少次。通过将信息从磁盘上仅读入一次并将其存于内存中,除了第一次读以外,可以加快所有其它读的速度。这叫作磁盘缓冲(Disk Buffering),被用作此目的的内存称为高速缓冲(Buffer Cache)。但是,由于内存是一种有限而又不充足的资源,高速缓冲不可能做的很大(它不可能包容要用到的所有数据)。当缓冲充满了数据时,其中最长时间不用的数据将被舍弃以腾出内存空间用于新的数据。对写磁盘操作来说磁盘缓冲技术同样有效。一方面,被写入磁盘的数据常常会很快地又被读出(例如,原代码文件被保存到一个文件中,又被编译器读入),所以将要被写的数据放入缓冲中是个好主意。另一方面,通过将数据放入缓冲中,而不是将其立刻写入磁盘,程序可以加快运行的速度。以后,写的操作可以在后台完成,而不会拖延程序的执行。

    大多数操作系统都有高速缓冲(尽管可能称呼不同),但是并不是都遵守上面的原理。有些是直接写(Write-Through):数据将被立刻写入磁盘(当然,数据也被放入缓存中)。如果写操作是在以后做的,那么该缓存被称为后台写(Write-Back)。后台写比直接写更有效,但也容易出错:如果机器崩溃,或者突然掉电,缓冲中改变过的数据就被丢失了。如果仍未被写入的数据含有重要的薄记信息,这甚至可能意味着文件系统(如果有的话)已不完整。
    针对以上的原因,出现了很多的日志文件系统,数据在缓冲区修改后,同时会被文件系统记录修改信息,这样即使此时系统掉电,系统重启后会首先从日志记录中恢复数据,保证数据不丢失。当然这些问题不再本文的叙述范围。由于上述原因,在使用适当的关闭过程之前,绝对不要关掉电源,Sync命令倾空(Flushes)缓冲,也即,强迫所有未被写的数据写入磁盘,可用以确定所有的写操作都已完成。在传统的UNIX系统中,有一个叫做update的程序运行于后台,每隔30秒做一次sync操作,因此通常无需手工使用sync命令了。Linux另外有一个后台程序,Bdflush,这个程序执行更频繁的但不是全面的同步操作,以避免有时sync的大量磁盘I/O操作所带来的磁盘的突然冻结。在Linux中,Bdflush是由update启动的。通常没有理由来担心此事,但如果由于某些原因bdflush进程死掉了,内核会对此作出警告,此时你就要手工地启动它了(/sbin/update)。

    **缓存(Cache)**实际并不是缓冲文件的,而是缓冲块的,块是磁盘I/O操作的最小单元(在Linux中,它们通常是1KB)。这样,目录、超级块、其它文件系统的薄记数据以及非文件系统的磁盘数据都可以被缓冲了。缓冲的效力主要是由它的大小决定的。缓冲太小的话等于没用。它只能容纳一点数据,因此在被重用时,所有缓冲的数据都将被倾空。实际的大小依赖于数据读写的频次、相同数据被访问的频率。只有用实验的方法才能知道。如果缓存有固定的大小,那么缓存太大了也不好,因为这会使得空闲的内存太小而导致进行交换操作(这同样是慢的)。为了最有效地使用实际内存,Linux自动地使用所有空闲的内存作为高速缓冲,当程序需要更多的内存时,它也会自动地减小缓冲的大小。这就是一般情况下Linux内存的一般机制,真正的Linux内存的运行机制远远比这个复杂

    CPU

    CPU即中央处理器,是英语“Central Processing Unit”的缩写。CPU从内存或
    缓存中取出指令,放入指令寄存器,并对指令译码分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。

    内存

    但是,CPU并不能直接调用存储在硬盘上的系统、程序和数据,必须首先将硬盘的有关内容存储在内存中,这样才能被CPU读取运行。因而,内存(即物理内存,是相对于硬盘这个“外存”而言)作为硬盘和CPU的“中转站”,对电脑运行速度有较大影响。

    虚拟内存

    当运行数据超出物理内存容纳限度的时候,部分数据就会自行“溢出”,这时系统就会将硬盘上的部分空间模拟成内存——虚拟内存,并将暂时不运行的程序或不使用的数据存放到这部分空间之中,等待需要的时候方便及时调用。

    硬盘

    由于内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间储存程序或数据就需要使用硬盘(外存储器)。硬盘也会影响系统速度,因为系统从硬盘中读取数据并通过总线存入内存的速度也会影响系统运行的快慢

    物理内存

    物理内存是真正的内存,在应用中顾名思义,物理上,真实的插在板子上的内存是多大就是多大了。看机器配置的时候,看的就是这个物理内存。虚拟内存是为了满足系统对超出物理内存容量的需求时在外存(如硬盘)上开辟的存储空间。由于虚拟内存其实是放在外存上,因而与物理内存相比读写速度都非常慢

    内存和虚拟内存

    内存在计算机中的作用很大,电脑中所有运行的程序都需要经过内存来执行,如果执行的程序很大或很多,就会导致内存消耗更大。为了解决这个问题,可以使用虚拟内存技术,即拿出一部分硬盘空间来充当内存使用,当内存占用完时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。比如说当电脑要读取一个比物理内存还要大的文件时,就要用到虚拟内存,文件被内存读取之后就会先储存到虚拟内存,等待内存把文件全部储存到虚拟内存之后,就把虚拟内里储存的文件释放到原来的目录里了。

    跟 Windows 完全不同的 Linux 内存机制

    在 Linux 中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然。这是 Linux 内存管理的一个优秀特性,在这方面,区别于 Windows 的内存管理。主要特点是,无论物理内存有多大,Linux 都将其充份利用,将一些程序调用过的硬盘数据读入内存,利用内存读写的高速特性来提高 Linux 系统的数据访问性能。而 Windows 是只在需要内存时,才为应用程序分配内存,并不能充分利用大容量的内存空间。换句话说,每增加一些物理内存,Linux 都将能充分利用起来,发挥了硬件投资带来的好处,而 Windows 只将其做为摆设,即使增加 8GB 甚至更大。
    在这里插入图片描述

    Linux 的这一特性,主要是利用空闲的物理内存,划分出一部份空间,做为 cache 和 buffers ,以此提高数据访问性能。

    页高速缓存(cache)是 Linux内核实现的一种主要磁盘缓存。它主要用来减少对磁盘的I/O操作。具体地讲,是通过把磁盘中的数据缓存到物理内存中,把对磁盘的访问变为对物理 内存的访问。

    磁盘高速缓存的价值在于两个方面:

    1. 访问磁盘的速度要远远低于访问内存的速度,因此,从内存访问数据比从磁盘访问速度更快;
    2. 数据一旦被访 问,就很有可能在短期内再次被访问到。

    综上所述,一般不需要太关注Linux的内存占用情况,如果SWAP占用率很高的话一般可能就是内存不够用了。

    Swap配置对性能的影响

    分配太多的Swap空间会浪费磁盘空间,而Swap空间太少,则系统会发生错误。如果系统的物理内存用光了,系统就会跑得很慢,但仍能运行;如果Swap空间用光了,那么系统就会发生错误。例如,Web服务器能根据不同的请求数量衍生出多个服务进程(或线程),如果Swap空间用完,则服务进程无法启动,通常会出现“application is out of memory”的错误,严重时会造成服务进程的死锁。因此Swap空间的分配是很重要的。

    通常情况下,Swap空间应大于或等于物理内存的大小,最小不应小于64M,通常Swap空间的大小应是物理内存的2-2.5倍。但根据不同的应用,应有不同的配置:如果是小的桌面系统,则只需要较小的Swap空间,而大的服务器系统则视情况不同需要不同大小的Swap空间。特别是数据库服务器和Web服务器,随着访问量的增加,对Swap空间的要求也会增加,一般来说对于4G以下的物理内存,配置2倍的swap,4G以上配置1倍。

    另外,Swap分区的数量对性能也有很大的影响。因为Swap交换的操作是磁盘IO的操作,如果有多个Swap交换区,Swap空间的分配会以轮流的方式操作于所有的Swap,这样会大大均衡IO的负载,加快Swap交换的速度。如果只有一个交换区,所有的交换操作会使交换区变得很忙,使系统大多数时间处于等待状态,效率很低。用性能监视工具就会发现,此时的CPU并不很忙,而系统却慢。这说明,瓶颈在IO上,依靠提高CPU的速度是解决不了问题的。

    展开全文
  • tmpfs是一种虚拟内存文件系统正如这个定义它最大的特点就是它的存储空间在VM里面,这里提一下VM(virtual memory),VM是由linux内核里面的vm子系统管理,现在大多数操作系统都采用了虚拟内存管理机制。linux下面VM的...
  • Linux命令查看内存硬盘信息

    千次阅读 2019-04-19 14:28:05
    使用Linux命令查看系统中的内存和磁盘的使用情况 按内存占用排序 先输入top,再输入M,系统就会以内存占用率大小倒序排列 按CPU占用排序 先输入top,再输入P,系统就会以CPU占用率大小倒序排列 按运行时间排序 先...
  • 内存硬盘读取速度对比

    万次阅读 2020-04-22 21:22:09
    内存条品牌:红色威龙增强版DDR4 2666HMz(16-18-18-43-2T)测试成绩 连续读取: L1CACHE大概是1700GB/s的水平 L3CACHE 大概是200GB/s的水平 DDR4内存大概是60GB/s的水平 nvme ssd大概是2000MB/s的水平 S...
  • 150讲轻松学习Python网络爬虫

    万人学习 2019-05-16 15:30:54
    数据存储:将提取到的数据存储到硬盘或者内存中。比如mysql数据库或者redis等。 那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中...
  • Mac pro更换大内存固态硬盘实践教程

    万次阅读 2018-09-03 11:38:36
      最近由于mac电脑内存吃紧,安装大的软件,是不是要提示一下内存不够,内心非常的不爽。作为一款A1502版的mac,128G固态硬盘通常被称为“乞丐版”。提前做好住呢逼工作后,我周末花了一天的时间搞定这件事,为了...
  • 内存硬盘的区别

    万次阅读 多人点赞 2018-03-18 22:33:23
    一、定义 内存内存又称主存,计算机中的程序的运行都是在内存中进行的,只有计算机在运行,计算机CPU就会需要的计算数据调到内存中进行运算。通常内存分为随机存储器(RAM)、只读存储器(ROM)、高速缓存...
  • 然后,用户双击EXE文件时,计算机就会EXE文件的内容加载到内存中运行。 程序被加载到内存后,还会额外生成两个组,即栈和堆。栈是用来存储函数内部临时使用的变量(局部变量),以及函数调用时所用的参数的...
  • Ubuntu内存虚拟硬盘——tmpfs

    千次阅读 2020-09-18 16:22:59
    因此使用内存构造一个虚拟的硬盘,即保护了固态硬盘又提升了读写速度。 2.tmpfs简介 在Linux系统中,tmpfs是一种虚拟内存文件系统,存储空间位于VM(Virtual Memory)之中。VM由RM(Real Memory)和swap构成。RM是...
  • 我们组的台式机的内存一般都是预装的16G内存,两个8G的条子,后来部分机器由于内存条的问题频繁蓝屏死机,就拔了一根内存条出来,只剩8G,但是只要你是怀着一份平常心,没有报复社会的心态去使用你的电脑的话,按时...
  • 内存硬盘快多少

    千次阅读 2018-11-09 03:42:22
    内存硬盘快多少
  • 磁盘 硬盘 内存之间的关系

    千次阅读 2018-06-09 23:49:50
    内存与外存都是计算机用来存储数据的。内存就是内存条,一断电就会记住的东西丢失。磁盘又分为两类,一类是硬盘,一类是软盘。磁盘的存储数据比内存慢很多。...
  • 查看linux内存硬盘

    千次阅读 2018-05-24 10:56:11
    total:表示物理 内存总量 used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用 free:未被分配的内存 shared:共享内存 buffers:系统分配但未被使用的buffers 数量...
  • Linux服务器查看配置(CPU、内存硬盘) 1 逻辑CPU个数 |cat /proc/cpu/cpuinfo 管道符 grep "processor" 行数太多查看方法 |cat /proc/cpuinfo 管道符 grep "processor" 管道符 wc -...
  • 你还不懂硬盘内存和CPU的关系 ?(程序员入门)

    千次阅读 多人点赞 2020-06-05 10:42:04
    文章目录一、硬盘内存CPU图二、硬盘讲解三、内存的简介四、拓展A盘和B盘 一、硬盘内存CPU图 二、硬盘讲解 硬盘简介 ①电脑硬盘是计算机最主要的存储设备。 ②硬盘(港台称之为硬碟,英文名:Hard Disk Drive, ...
  • 我的笔记本型号是戴尔Inspiron14-3437,4G内存,500G的硬盘,上大学前的暑假买的,至今已有近5年了。之前一直装的win7旗舰版,每次360开机助手提示我开机速度打败全国1%的用户,速度大概两分钟多(可能是装了各种IDE...
  • RAM、ROM、内存还有硬盘,它们到底有什么区别

    万次阅读 多人点赞 2017-12-24 11:45:54
    内存一般采用半导体存储单元,包括随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE)。只不过因为RAM是其中最重要的存储器,所以通常所说的内存即指电脑系统中的RAM。 RAM要求每时每刻都不断地供电,...
  • 如何为戴尔灵越15 5559加装内存条和固态硬盘

    万次阅读 多人点赞 2018-11-18 19:44:46
    这是我的第一篇博客,不管有没有人看,还有没有人需要这款老笔记本电脑的教程,我都想我辛辛苦苦改装电脑的过程记录下来,权一个日记了。 由于加固态硬盘内存条需要一定的拆机知识,所以我在这里附上一个b站...
  • 电影本身是放在硬盘上的,我们通过鼠标对它进行操作后,操作系统就会将硬盘上的这部电影拷贝到内存中。为什么要拷贝到内存中?,因为CPU不能直接处理硬盘上的数据,所以要先将硬盘上的数据拷贝到内存中进行处理。...
  • Shell脚本编写实战

    千人学习 2017-10-23 16:55:25
    根据实际的案例讲解怎么编写Shell脚本,在什么场景下编写为讲解导向。 课程内容如下: 1.编写Shell脚本注意事项与编写打印字体颜色函数 2....监控CPU、内存硬盘和网卡流量利用率 5.监控网站可用性
  • centos7查看cpu、内存硬盘

    千次阅读 2018-11-12 17:43:00
    2019独角兽企业重金招聘Python工程师标准>>> ... cat /proc/cpuinfo |grep "physical id"|...内存 free -mh 硬盘 df -h 转载于:https://my.oschina.net/u/2464371/blog/2875131
  • 由于项目的需要,需要做一个简单监控服务器的CPU利用率、CPU负载、硬盘使用率、内存利用率和服务器的各个端口的开启情况的程序,并结果通知到监控平台,如果出现异常,监控平台打电话或者发短信通知给具体的运维...
  • Rabbitmq的内存控制和硬盘控制

    千次阅读 2019-06-12 17:32:24
    Rabbitmq的内存控制和硬盘控制 一、内存控制 vm_memory_high_watermark 该值为内存阈值,默认为0.4。意思为物理内存的40%。40%的内存并不是内存的最大的限制,它是一个发布的节制,达到40%时Erlang会做GC。最坏的...
  • 为什么说内存硬盘快??

    千次阅读 2020-01-16 15:01:23
    硬盘是有机械结构的,磁头要运动到相应的位置,转片还在转动,然后读取此信号。 内存是没有机械结构的,是电,瞬间到达。电的到达速度要比磁头的运动快很多,比盘算转动也快得多,所以, 有机械结构的磁头读取速度是...
  • 大家都知道组装电脑需要CPU硬盘内存等硬件,系统中还含有虚拟内存,对于其中的相互关系,大家可能不了解! 下面最简明易懂的语言,为大家介绍其中的关系!CPUCPU即中央处理器,是英语“Central Processing Unit...
  • 电脑结构和CPU、内存硬盘三者之间的关系

    万次阅读 多人点赞 2018-11-03 15:29:54
    我们程序从硬盘放到内存以后,CPU就直接在内存运行程序,这样比CPU直接在硬盘运行程序就要快很多。 内存解决了一部分CPU运行过快,而硬盘数据存取太慢的问题。 提高了我们的电脑的运行速度。 内存就如同一...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 470,911
精华内容 188,364
关键字:

怎么把内存当硬盘用