虚拟存储的关键要素是什么

虚拟存储的关键要素是什么_CPU中的内存管理单元

CPU中的内存管理单元

CPU中的内存管理单元(MMU)是一种地址转换硬件,能够自动将虚拟地址转换为物理地址。这使得应用程序无需管理共享内存空间,不同进程可共享内存中的库,并通过内存隔离提高安全性。

虚拟存储的关键要素是什么_虚拟内存的优势

虚拟内存的优势

虚拟内存使应用程序编程更加简单,因为它隐藏了物理内存碎片,将内存层次管理委托给内核,并消除了程序代码重定位或相对寻址的需求。它还可以通过页面置换或分段技术,支持使用超过实际可用物理内存的内存量。

虚拟存储的关键要素是什么_虚拟内存的发展历史

虚拟内存的发展历史

虚拟内存的概念和技术经历了长期的发展和完善。第一个真正的虚拟内存系统是在20世纪60年代早期实现的,作为曼彻斯特大学Atlas计算机的一部分。该系统使用了分页机制将虚拟地址映射到物理内存上。在此之前,一些早期系统如Burroughs B5000则采用了分段而非分页的方式来实现内存管理。从那时起,虚拟内存技术逐渐成为现代计算机体系结构不可或缺的一部分,通常需要MMU等硬件支持,并随着硬件和软件技术的发展而不断演进和完善。


虚拟存储有哪些优势

虚拟内存为计算机系统和应用程序带来了多方面的优势:

虚拟存储有哪些优势_简化应用程序编程

简化应用程序编程

虚拟内存隐藏了物理内存的复杂性,使得应用程序编程更加简单。它消除了程序代码重定位或相对寻址的需求,让开发者能够更专注于应用逻辑的实现。

虚拟存储有哪些优势_提高内存利用率和安全性

提高内存利用率和安全性

通过允许进程之间共享库所占用的内存,虚拟内存显著提高了内存利用率。此外,内存隔离机制还增强了系统安全性,防止了进程间的非法访问。

虚拟存储有哪些优势_突破物理内存限制

突破物理内存限制

虚拟内存使用分页或分段等技术,允许应用程序在概念上使用比实际物理内存更多的内存空间。当物理内存不足时,系统可以将部分不常用的内存页面交换到磁盘上,从而释放物理内存给更需要的应用程序使用。

虚拟存储有哪些优势_支持多操作系统

支持多操作系统

虚拟存储可被视为内存虚拟化概念的一种推广,使同一硬件上能够运行不同的操作系统,极大提高了硬件资源的利用效率。


搭建虚拟存储需要注意哪些问题

虚拟存储是通过将物理存储资源聚合到一个或多个存储池中来实现的,随后从这些存储池中创建逻辑存储单元。提供存储虚拟化功能的软件或设备充当一个通用的磁盘管理器,负责创建逻辑磁盘(vdisk),并将其映射和呈现给所需的主机或服务器。这一过程使得原本分散在网络上的多个独立存储设备能够呈现为一个可集中管理的单一整体存储设备。

虚拟存储的关键特性

虚拟存储的关键特性包括精简配置,以最大限度地提高存储利用率;能够动态地扩展或缩小逻辑磁盘的容量;以及根据需要添加更多物理存储系统来扩展虚拟存储空间。虚拟化还支持无中断的数据迁移和复制服务,如同步和异步镜像用于灾难恢复,以及支持空间高效的快照功能。

虚拟存储的设置步骤

设置虚拟存储涉及通过存储虚拟化技术将物理存储设备(如网络附加存储和存储区域网络)的功能组合在一起。存储虚拟化允许您汇集数据中心中来自不同供应商或不同类型的存储硬件,从而创建一个大型的虚拟存储单元,您可以使用管理软件来分配和控制这些资源。IT管理员可以通过将多个网络存储设备虚拟化为一个单一的存储设备,来简化存储活动,如归档、备份和恢复。

虚拟存储的类型

块存储是一种虚拟存储类型,它将数据分解为独立的固定大小块或片段。每个块是一个独立的数据存储单元,完整的信息存储在多个非连续的块中。块存储支持流行的虚拟机(VM)hypervisor,允许用户通过将其格式化为VM文件系统,在块存储卷上安装操作系统、文件系统和其他计算资源。基于云的存储是另一种虚拟存储形式,备份存储可以是远程数据中心中的物理存储或虚拟化存储。基于云的存储抽象了大部分技术管理、配置和存储设备维护,使组织能够专注于基于规则和策略的管理。

传统存储管理的需求

然而,传统的存储控制器管理对于诸如RAID阵列的创建和维护等任务仍然是必要的。此外,如果要从虚拟存储环境中退出,可能需要将逻辑磁盘重建为连续磁盘,以便能够以传统方式使用。


虚拟存储有哪些应用场景

虚拟存储为现代计算机系统带来了多种关键优势,使其在各种应用场景中都有广泛的应用。

提高内存利用效率

虚拟存储允许应用程序无需直接管理共享内存空间,并能够在进程之间共享库所使用的内存。这种内存隔离机制提高了内存利用效率,避免了内存浪费。此外,虚拟存储还能够通过分页或分段等技术,使应用程序可以使用比实际物理内存更多的内存空间,从而提高内存利用率。

增强系统安全性

由于虚拟存储实现了内存隔离,每个进程只能访问自己的虚拟内存空间,从而增强了系统的安全性。这种隔离机制可以防止恶意程序访问其他进程的内存空间,有效保护了系统的完整性和数据的隐私性。

广泛应用于各类系统

虚拟存储已经成为现代计算机体系结构不可或缺的一部分,通常由CPU中集成的内存管理单元(MMU)提供硬件支持。这使得虚拟存储可以广泛应用于从通用操作系统到专用嵌入式系统的各种环境中。

特殊场景除外

尽管虚拟存储带来了诸多优势,但在某些对响应时间要求极高的特殊场景下(如某些嵌入式系统),可能会选择不使用虚拟存储,以避免虚拟内存管理可能带来的不可预测的延迟。此外,一些较早期的操作系统也可能不支持虚拟存储功能。


虚拟存储的类型

分页式虚拟存储

分页式虚拟存储是最常见的一种虚拟存储实现方式。在这种方式下,虚拟地址空间被划分为固定大小的页面,每个页面再与物理内存中的页框相映射。当程序访问某个虚拟地址时,CPU会将该虚拟地址转换为物理地址,从而实现虚拟内存到物理内存的映射。分页式虚拟存储的优点在于实现简单、管理方便,但缺点是可能产生内存碎片。

混合式虚拟存储

现代操作系统通常采用分页式和分段式虚拟存储的混合方式,以结合两者的优点。在这种混合方式下,程序的地址空间首先被划分为多个段,每个段再被进一步划分为多个页面,从而实现两级映射机制。

分段式虚拟存储

另一种虚拟存储实现方式是分段式虚拟存储。在这种方式下,程序的地址空间被划分为多个逻辑段,每个段对应一个连续的虚拟地址空间。程序在运行时可动态增加或删除段,从而实现更加灵活的内存管理。与分页式虚拟存储相比,分段式虚拟存储有效避免了内存碎片的问题,但实现上较为复杂。


虚拟存储面临的挑战

虚拟存储虽然带来了诸多好处,但也面临着一些挑战。

不确定性增加

虚拟存储系统可能会触发不可预测的陷阱,导致响应输入时出现意外和不可预测的延迟,特别是在陷阱需要从辅助存储器将数据读入主存时。这种确定性的降低对于需要非常快速和一致响应时间的嵌入式系统和其他特殊用途计算机系统来说可能是一个问题。

硬件要求

用于将虚拟地址转换为物理地址的硬件通常需要占用大量芯片面积,并非所有用于嵌入式系统的芯片都包含该硬件。这也是一些嵌入式系统选择不使用虚拟存储的另一个重要原因。

算法效率担忧

最初有人担心利用辅助存储的新系统范围算法可能不如以前使用的特定于应用程序的算法有效。然而,到1969年的研究表明,虚拟存储覆盖系统的工作效果始终优于手动控制的最佳系统,这一担忧已逐渐被消除。


虚拟存储与传统存储的区别

存储资源管理方式

虚拟存储将所有存储介质视为单一存储池,能够动态分配并集中管理这些资源。这种方式有效避免了资源的过度分配,提高了存储利用率,并支持按需分配存储空间。相比之下,传统存储管理则需将整个物理磁盘映射到单个主机,这往往导致存储空间的浪费。

存储弹性和可扩展性

虚拟存储,如对象存储,具有近乎无限的可扩展性,能够轻松扩展到PB级别并管理数十亿对象。而传统存储系统则常面临扩展性和容量上的限制。特别是云对象存储等虚拟存储形式,还提供了高可用性和低成本的显著优势。

存储功能

虚拟存储支持数据迁移、复制、快照等高级功能,这些在传统存储系统中较难实现。此外,虚拟存储还抽象了底层存储的复杂性,通过提供统一的管理界面,极大地简化了存储管理过程。

存储复杂性

虚拟存储环境也带来了新的挑战,如问题诊断和故障隔离的复杂性增加,对基础架构设计的要求提高,以及不同虚拟化技术之间可能存在的互操作性问题。此外,退出虚拟存储环境时,可能需要耗时重建逻辑磁盘。


虚拟存储的组成部分有哪些

虚拟存储是一种内存管理技术,它将活动内存(RAM)和磁盘上的非活动内存结合起来,为应用程序提供一个连续的大地址空间。虚拟存储的组成部分主要包括:

虚拟存储的组成部分有哪些_虚拟地址空间

虚拟地址空间

虚拟地址空间由操作系统管理,负责将实际内存分配给虚拟内存。每个进程都拥有独立的虚拟地址空间,增强了内存隔离性和安全性。

虚拟存储的组成部分有哪些_内存管理单元(MMU)

内存管理单元(MMU)

MMU位于CPU中,负责自动将虚拟地址转换为物理地址。它处理CPU与RAM之间的交互,以及CPU所需的高速缓存和虚拟内存的管理。

虚拟存储的组成部分有哪些_页表

页表

页表用于将虚拟地址映射到物理地址。页表中的每个项都指示相应的页面是否位于实际内存中。若页面不在实际内存中,将触发页面错误异常,随后调用操作系统的页面交换程序来处理。

虚拟存储的组成部分有哪些_页面交换

页面交换

当物理内存不足时,操作系统会将未使用的页面从RAM临时交换到磁盘存储上,以释放内存空间。当应用程序需要访问这些页面时,会触发页面错误,操作系统随即将所需页面从磁盘加载回内存。

虚拟存储的组成部分有哪些_虚拟化环境

虚拟化环境

虚拟存储允许计算机在多个数字隔离的虚拟化环境之间共享硬件资源。每个虚拟环境都在其分配的内存、处理能力和存储资源内独立运行。


亚马逊云科技热门云产品

Amazon Polly

Amazon Polly

将文本转化为逼真的语音

Amazon IoT Analytics

Amazon IoT Analytics

IoT 设备分析

Amazon IoT Core

Amazon IoT Core

将设备连接到云

Amazon EC2

Amazon EC2

云中的虚拟服务器

欢迎加入亚马逊云科技培训中心

欢迎加入亚马逊云科技培训中心

从 0 到 1 轻松上手云服务,获取更多官方开发资源及培训教程
从 0 到 1 轻松上手云服务,获取更多官方开发资源及培训教程
  • 快速上手训练营
  • 第一课:亚马逊云科技简介

    本课程帮助您初步了解云平台与本地环境的差异,以及亚马逊云科技平台的基础设施和部分核心服务,包括亚马逊云科技平台上的弹性高可用架构,架构设计准则和本地架构迁移上云的基本知识。

    亚马逊云科技技术讲师:李锦鸿

    第二课:存储与数据库服务

    您将在本课程中学习到亚马逊云科技上的三个存储服务分别是什么。我们也将在这个模块中为您介绍亚马逊云科技上的关系型数据库服务 Amazon Relational Database Service (RDS)。

    亚马逊云科技资深技术讲师:周一川

    第三课:安全、身份和访问管理

    在这个模块,您将学习到保护您在亚马逊云科技上构建的应用的安全相关知识,责任共担模型以及身份和访问管理服务, Identity and Access Management (IAM) 。同时,通过讲师演示,您将学会如何授权给 EC2 实例,允许其访问 S3 上的资源。

    亚马逊云科技技术讲师:马仲凯
  • 账单设置与查看
  • 视频:快速完成税务设置

    部署时间:5 分钟

    视频:账户账单信息

    部署时间:3 分钟

    视频:如何支付账单

    部署时间:3 分钟

  • 动手实操
  • 快速上手云上无服务器化的 MySQL 数据库

    本教程将引导您创建一个Aurora Serverless 数据库并且连接上它。

    部署时间:10 分钟

    启动一台基于 Graviton2 的 EC2 实例


    本教程将为您讲解如何在云控制台上启动一台基于 Graviton2 的 EC2 实例。

    部署时间:5 分钟

    使用 Amazon Systems Manager 进行云资源统一跟踪和管理

    在这个快速上手教程中,您将学会如何使用 Amazon Systems Manager 在 Amazon EC2 实例上远程运行命令。

    部署时间:10 分钟

准备好体验亚马逊云科技提供的云服务了吗?

新用户享受中国区域 12 个月免费套餐

关闭
1010 0766
由光环新网运营的
北京区域
1010 0966
由西云数据运营的
宁夏区域
关闭
由光环新网运营的
北京区域
由西云数据运营的
宁夏区域