操作系统——设置虚拟内存(Virtual Memory)的原理

简介:      操作系统对主存的管理,主要强调的是如何合理利用主存空闲区的问题,之后,提出了一系列增加利用率的策略。      无论是固定分区存储管理还是可变分区存储管理,这两种为作业分配主存的方式都是按照一定算法,将全部作业装入主存。

     操作系统对主存的管理,主要强调的是如何合理利用主存空闲区的问题,之后,提出了一系列增加利用率的策略。


     无论是固定分区存储管理还是可变分区存储管理,这两种为作业分配主存的方式都是按照一定算法,将全部作业装入主存。但是,在程序的执行时,程序的有些部分是彼此互斥的,也就是执行了这部分,就不执行那部分了,例如:我们执行一个IF  (语句1)ELSE (语句2),当我们执行了语句1了,就不在去执行语句2,如果把语句2也装入了主存,那么就相当于物理上做了一个无用功一样。


   所以,能不能考虑,不把一次把作业的全部信息同时装入主存,而是将其中一部分装入主存,另一部分存放在磁盘上(通常就是我们说的就是辅存上),当作业执行过程中要用到哪些不再主存中的信息时,再把磁盘上的信息装入主存。


    这样的话,当用户在运行程序时,完全不用考虑自己实际的主存容量,运行用户的逻辑地址空间大于主存的绝对地址空间。比如,我是2G小内存,我可以运行一个3G的作业。运行起来后,对用户来说,好像有一个容量很大的主存储器,成为虚拟存储器。


   看完虚拟存储器的原理,有没有让你想起,以前接触过的设置虚拟内存


  


对于内存小的童鞋们,为了解决内存不足的问题,常常有两种方法:1,买根内存条安上。2,使用虚拟内存。

   我还是选择比较省钱的办法啦~~~~~

    但是在使用时,要注意,允许设置的虚拟内存最小值为2MB,最大值不能超过当前硬盘的剩余空间值,因为这样,可能会出现绝对地址进行转换时,因为找不到地址空间发生错误。同时对于32位操作系统,也不能超过32位操作系统的内存寻寻址范围——4GB,也是为了保证绝地地址不越界的问题。

  

 



  


目录
相关文章
|
22天前
|
算法 JavaScript 前端开发
新生代和老生代内存划分的原理是什么?
【10月更文挑战第29天】新生代和老生代内存划分是JavaScript引擎为了更高效地管理内存、提高垃圾回收效率而采用的一种重要策略,它充分考虑了不同类型对象的生命周期和内存使用特点,通过不同的垃圾回收算法和晋升机制,实现了对内存的有效管理和优化。
|
2月前
|
C++
【C++】深入解析C/C++内存管理:new与delete的使用及原理(二)
【C++】深入解析C/C++内存管理:new与delete的使用及原理
|
2月前
|
编译器 C++ 开发者
【C++】深入解析C/C++内存管理:new与delete的使用及原理(三)
【C++】深入解析C/C++内存管理:new与delete的使用及原理
|
2月前
|
存储 C语言 C++
【C++】深入解析C/C++内存管理:new与delete的使用及原理(一)
【C++】深入解析C/C++内存管理:new与delete的使用及原理
|
19天前
|
弹性计算 Kubernetes Perl
k8s 设置pod 的cpu 和内存
在 Kubernetes (k8s) 中,设置 Pod 的 CPU 和内存资源限制和请求是非常重要的,因为这有助于确保集群资源的合理分配和有效利用。你可以通过定义 Pod 的 `resources` 字段来设置这些限制。 以下是一个示例 YAML 文件,展示了如何为一个 Pod 设置 CPU 和内存资源请求(requests)和限制(limits): ```yaml apiVersion: v1 kind: Pod metadata: name: example-pod spec: containers: - name: example-container image:
109 1
|
2月前
|
分布式计算 算法 大数据
探索操作系统的核心:调度与内存管理机制
【10月更文挑战第11天】 本文深入探讨了操作系统中两大核心功能——调度与内存管理机制。通过分析调度算法、进程状态转换及内存分配策略等关键方面,揭示了它们如何共同维护系统性能和稳定性。旨在为读者提供对操作系统内部运作的深刻理解,同时引起对优化策略的思考。
64 5
|
2月前
|
算法
深入理解操作系统:内存管理机制的探索之旅
【10月更文挑战第2天】在数字世界的浩瀚海洋中,操作系统犹如一艘精密的航船,承载着软件与硬件的和谐共舞。本文将揭开内存管理的神秘面纱,从基础概念到高级策略,引领读者领略操作系统内存分配的智慧。通过深入浅出的解释和生动的比喻,我们一同遨游在内存的江河之中,感受操作系统如何巧妙地协调资源,确保数据的有序流动。让我们跟随内存的脚步,探索那些隐藏在每次点击、每次命令背后的奥秘。
|
2月前
|
监控 开发者
深入理解操作系统:内存管理的艺术
【10月更文挑战第2天】在数字世界的幕后,操作系统扮演着至关重要的角色。本文将深入探索操作系统的心脏——内存管理,揭示它是如何协调和管理计算机的宝贵资源。通过浅显易懂的语言和生活化的比喻,我们将一起走进内存管理的奥秘世界,了解它的原理、机制以及为何对整个系统的性能和稳定性有着不可替代的影响。无论你是技术新手还是资深开发者,这篇文章都将为你打开新的视角,让你对日常使用的设备有更深层次的认识和尊重。
|
2月前
|
缓存 算法 调度
深入浅出操作系统:从进程管理到内存优化
本文旨在为读者提供一次深入浅出的操作系统之旅。我们将从进程管理的基本概念出发,逐步深入到内存管理的复杂世界,最终探索如何通过实践技巧来优化系统性能。文章将结合理论与实践,通过代码示例,帮助读者更好地理解操作系统的核心机制及其在日常技术工作中的重要性。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开一扇通往操作系统深层次理解的大门。
|
3月前
|
Unix Linux Windows
操作系统的演变与基本原理
本文旨在深入探讨操作系统的历史演变过程及其背后的设计原理。通过对不同时期典型操作系统的分析,本文揭示了它们如何响应技术挑战和社会需求的变化。此外,文章还将阐述操作系统的核心功能和关键技术,如进程管理、内存管理和文件系统,并探讨这些技术如何影响计算机系统的性能和可靠性。通过综合历史案例和技术分析,本文希望为读者提供一个全面而深入的理解,为什么操作系统是现代计算不可或缺的基石。
48 1