zoukankan      html  css  js  c++  java
  • 操作系统【8】 Linux虚拟内存和物理内存

    根据电脑位数不同,我们可以大概计算出电脑的物理内存。比如说现在流行的电脑位数为32位和64位的,32位的的系统可用地址空间是2的32次方,即4G,但是现在电脑的内存都在4G以上,以前的电脑有内存是2G的,所以,我么想要运行一个程序而这个程序需要的内存大于2G的时候,我们将要考虑怎么处理这个问题?

    直接使用电脑物理内存,这样的结果是内存会出现没有连续可用的空间,也不能最大的利用内存的缺点。还有,就是直接使用物理内存,可能会出现不同程序使用相同内存地址的情况,这样会导致两个程序的崩溃。

    我们都知道,直接从内存读写数据要比从硬盘读写数据快得多,因此更希望所有数据的读取和写入都在内存中完成。但是,从上文可看出电脑物理内存有限会限制程序使用并且直接使用会有弊端(程序崩溃)。

    所以,这就会引出一个问题物理内存和虚拟内存的概念。物理内存就是系统硬件提供的内存大小,是系统真正的内存。相对于物理内存,在 Linux 下还有一个虚拟内存的概念,虚拟内存是为了满足物理内存的不足而提出的策略,它是利用磁盘空间虚拟出的一块逻辑内存。用作虚拟内存的磁盘空间被称为交换空间(又称 swap 空间)。在linux物理内存不足的时候使用虚拟分区,详细地说,就是内核会将暂时不用的内存块信息写到交换空间,这样一来,物理内存得到了释放,这块内存就可以用于其他目的,当需要用到原始的内容时,这些信息会被重新从交换空间读入物理内存。

    在我们使用虚拟分区时不应该随意的设置,合理规划和设计 Linux 内存的使用是非常重要的。

    官网:http://www.lenbor.com
  • 相关阅读:
    【Spring Boot】关于上传文件例子的剖析
    GIT初始学习记录
    Java代码混淆工具ProGuard
    Kafka 概念、单机搭建与使用
    流网络分析系统-SNAS
    【Spring Boot】使用JDBC 获取相关的数据
    二叉树【按层打印、序列化、反序列化】
    跨域共享cookie
    启动kafka集群,关闭kafka集群脚本
    kafka-consumer.properties
  • 原文地址:https://www.cnblogs.com/lenbor/p/12883692.html
Copyright © 2011-2022 走看看