iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >linux的虚拟内存机制是什么
  • 385
分享到

linux的虚拟内存机制是什么

2023-07-01 14:07:07 385人浏览 泡泡鱼
摘要

这篇“linux的虚拟内存机制是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux的虚拟内存机制是什么”文章吧。l

这篇“linux的虚拟内存机制是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux的虚拟内存机制是什么”文章吧。

linux的虚拟内存机制:

每个进程都有自己独立的4G内存空间,各个进程的内存空间具有类似的结构。

Linux内存管理采用的是页式管理,使用的是多级页表,动态地址转换机构与主存、辅存共同实现虚拟内存一个新进程建立的时候,

将会建立起自己的内存空间,此进程的数据,代码等从磁盘拷贝到自己的进程空间,哪些数据在哪里,

都由进程控制表中的task_struct记录,task_struct中记录中一条链表,记录中内存空间的分配情况,

哪些地址有数据,哪些地址无数据,哪些可读,哪些可写,都可以通过这个链表记录每个进程已经分配的内存空间,都与对应的磁盘空间映射。

每个程序都能看到一片完整连续的地址空间,这些空间并没有直接关联到物理内存,而是操作系统提供了内存的一种抽象概念,

使得每个进程都有一个连续完整的地址空间,在程序的运行过程,再完成虚拟地址到物理地址的转换。

我们同样知道,进程的地址空间是分段的,存在所谓的数据段,代码段,bbs段,堆,栈等等。每个段都有特定的作用。

同时计算机没有那么多的内存(n个进程就需要对应n*4G内存),建立一个进程,就要把磁盘上的程序文件拷贝到进程对应的内存中去,

对于有一个程序对应多个进程这种情况,浪费内存。

linux的虚拟内存机制是什么

每个进程的4G内存空间只是虚拟内存空间,每次访问内存空间的某个地址,都需要把地址翻译为实际物理地址所有进程共享同一物理内存,

每个进程只把自己目前需要的虚拟内存空间映射并存储到物理内存上进程要知道哪些内存地址上的数据在物理内存上,哪些不在,还有在物理内存上的哪里,

需要页表记录页表的每一个表项分为两部分,第一部分记录此页是否在物理内存上,第二部分记录物理内存的地址当进程访问某个虚拟地址,

去查看页表,如果对应的数据不在物理内存中,,则缺页异常缺页异常的处理过程,就是把进程需要的数据从磁盘拷贝到物理内存中,

如果内存已经满了 ,没有空地方,那就找一个页进行覆盖,当然如果被覆盖的页曾经被修改过,需要将此页写回磁盘。

linux的虚拟内存机制是什么

竟然每个进程的内存空间都是一致而且固定的,所以链接器在链接执行文件时,可以设定内存地址,而 不用去管这些数据最终实际的内存地址,

这是有独立内存 空间的好处当不同的进程使用同样的代码时,比如库文件中的代码,物理内存中可以只存储一份这样的代码,

不同的进程只需要把自己的虚拟内存映射过去就可以了,节省内存在程序需要分配连续的内存空间的时候,

只需要在虚拟内存空间分配连续空间,而不需要实际物理内存的连续空间,可以利用碎片。

以上就是关于“linux的虚拟内存机制是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网操作系统频道。

--结束END--

本文标题: linux的虚拟内存机制是什么

本文链接: https://www.lsjlt.com/news/335809.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • linux的虚拟内存机制是什么
    这篇“linux的虚拟内存机制是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux的虚拟内存机制是什么”文章吧。l...
    99+
    2023-07-01
  • Linux进程虚拟内存的工作机制是什么
    Linux进程的虚拟内存工作机制是基于分页和分段的。在Linux中,每个进程都有自己独立的虚拟地址空间,这个虚拟地址空间被分成多个固...
    99+
    2024-04-28
    Linux
  • Linux虚拟内存是什么
    这篇“Linux虚拟内存是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Linux虚拟内存是什么”文章吧。虚拟内存由来毋...
    99+
    2023-06-27
  • linux中虚拟内存是什么
    这篇文章主要为大家展示了“linux中虚拟内存是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux中虚拟内存是什么”这篇文章吧。1. 讨论虚拟内存前的热身我们需要知道的是计算机对内存分...
    99+
    2023-06-15
  • Linux下的进程虚拟内存结构是什么
    这篇文章主要介绍“Linux下的进程虚拟内存结构是什么”,在日常操作中,相信很多人在Linux下的进程虚拟内存结构是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linu...
    99+
    2024-04-02
  • 虚拟主机内存有什么用
    虚拟主机内存是指在虚拟主机上分配给特定网站或应用程序的可用内存空间。虚拟主机内存的作用主要有以下几个方面:1. 运行网站或应用程序:...
    99+
    2023-08-29
    虚拟主机
  • 云服务器虚拟内存是什么
    云服务器虚拟内存(cloud memory)是指服务器为虚拟机分配的内存。虚拟内存并不是服务器的真正物理内存,而是虚拟内存管理系统将服务器中的物理内存分配给虚拟机使用的空间。虚拟内存管理系统可以动态分配内存大小,并且可以在同一时间内为多个虚...
    99+
    2023-10-27
    虚拟内存 服务器
  • 虚拟主机linux内存不足怎么解决
    虚拟主机的内存不足可能是由于网站访问量增加或者应用程序占用内存过多导致的。解决方法如下:1. 优化网站,减少资源占用。可以通过压缩图...
    99+
    2023-06-05
    虚拟主机linux 虚拟主机 linux
  • linux怎么扩展虚拟内存
    本篇内容主要讲解“linux怎么扩展虚拟内存”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux怎么扩展虚拟内存”吧!在linux磁盘刚分区的时候,我们会划分一个swap分区,这块分区作为一...
    99+
    2023-06-10
  • Linux内存监控虚拟内存实现机制及容量设定的示例分析
    这篇文章主要介绍Linux内存监控虚拟内存实现机制及容量设定的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在地址映射中要通过TLB(翻译后援存储器)来寻找物理页;交换机制中也要用到交换缓存,并且把物理页内容...
    99+
    2023-06-16
  • Java虚拟机的体系结构和内存模型是什么
    这篇文章主要介绍“Java虚拟机的体系结构和内存模型是什么”,在日常操作中,相信很多人在Java虚拟机的体系结构和内存模型是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java虚拟机的体系结构和内存模型...
    99+
    2023-06-17
  • win7虚拟内存设置的方法是什么
    这篇文章主要讲解了“win7虚拟内存设置的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win7虚拟内存设置的方法是什么”吧!win74g内存虚拟内存设置多少合适答:一般虚拟内存可...
    99+
    2023-07-01
  • Java虚拟机的内存结构是怎样的
    本篇内容主要讲解“Java虚拟机的内存结构是怎样的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java虚拟机的内存结构是怎样的”吧!一:简介内存(Memory)也被称为内存储器,其作用是用于暂...
    99+
    2023-06-02
  • Linux系统内存寻址的分页机制是什么
    这篇文章主要讲解了“Linux系统内存寻址的分页机制是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux系统内存寻址的分页机制是什么”吧!分页机制在段机制之后进行,以完成线性&am...
    99+
    2023-06-12
  • Linux内存寻址的分段机制原理是什么
    这篇文章主要介绍“Linux内存寻址的分段机制原理是什么”,在日常操作中,相信很多人在Linux内存寻址的分段机制原理是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux内存寻址的分段机制原理是什么...
    99+
    2023-06-12
  • Linux创建虚拟机的流程是什么
    1、安装虚拟化软件常见的虚拟化软件包括 VirtualBox、VMware 等。在 Linux 操作系统上安装虚拟化软件。2、创建虚...
    99+
    2023-05-13
    Linux创建虚拟机 Linux
  • Linux中怎么实现虚拟内存
    这期内容当中小编将会给大家带来有关Linux中怎么实现虚拟内存,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。  Linux虚拟内存怎么实现  第一个例子:下面一段程序会打...
    99+
    2024-04-02
  • Redis的内存管理机制是什么
    Redis使用一种称为"内存驱动"的内存管理机制。该机制将所有数据存储在内存中,并通过使用LRU算法(最近最少使...
    99+
    2024-05-07
    Redis
  • 什么是Python的内存管理机制
    一、引用计数 Python 的内存管理机制主要依赖于引用计数。每个对象都有一个引用计数器,用于记录当前对象被引用的次数。当一个对象被创建时,引用计数器的值为1,每当有一个新的引用指向该对象时,计数器加1;当一个引用不再指向该对象时,计数器减...
    99+
    2023-10-29
    管理机制 内存 Python
  • Java虚拟机中JVM内存结构是怎么样的
    这篇文章给大家分享的是有关Java虚拟机中JVM内存结构是怎么样的的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、JVM启动流程:JVM启动时,是由java命令/javaw命令来启动的。二、JVM基本结构:JV...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作