当前位置:首页 » 服务存储 » 不具有虚拟存储功能的内存管理方法是
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

不具有虚拟存储功能的内存管理方法是

发布时间: 2022-04-21 07:13:58

⑴ memory+management

摘要 亲,您好,根据您的问题,答主这边查询到的信息是:内存管理(Memory Management)

⑵ 怎么解决虚拟内存不足的问题,那位高手大侠能给个简单好用的方法给我谢谢.

***权威级回答***
本文详细介绍了虚拟内存的设置和相关问题的解决方法。

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

当系统运行时,先要将所需的指令和数据从外部存储器(如硬盘、软盘、光盘等)调入内存中,CPU再从内存中读取指令或数据进行运算,并将运算结果存入内存中,内存所起的作用就像一个“二传手”的作用。当运行一个程序需要大量数据、占用大量内存时,内存这个仓库就会被“塞满”,而在这个“仓库”中总有一部分暂时不用的数据占据着有限的空间,所以要将这部分“惰性”的数据“请”出去,以腾出地方给“活性”数据使用。这时就需要新建另一个后备“仓库”去存放“惰性”数据。由于硬盘的空间很大,所以微软Windows操作系统就将后备“仓库”的地址选在硬盘上,这个后备“仓库”就是虚拟内存。在默认情况下,虚拟内存是以名为Pagefile.sys的交换文件保存在硬盘的系统分区中。

手动设置虚拟内存

在默认状态下,是让系统管理虚拟内存的,但是系统默认设置的管理方式通常比较保守,在自动调节时会造成页面文件不连续,而降低读写效率,工作效率就显得不高,于是经常会出现“内存不足”这样的提示,下面就让我们自已动手来设置它吧。

①用右键点击桌面上的“我的电脑”图标,在出现的右键菜单中选择“属性”选项打开“系统属性”窗口。在窗口中点击“高级”选项卡,出现高级设置的对话框.

②点击“性能”区域的“设置”按钮,在出现的“性能选项”窗口中选择“高级”选项卡,打开其对话框。

③在该对话框中可看到关于虚拟内存的区域,点击“更改”按钮进入“虚拟内存”的设置窗口。选择一个有较大空闲容量的分区,勾选“自定义大小”前的复选框,将具体数值填入“初始大小”、“最大值”栏中,而后依次点击“设置→确定”按钮即可,最后重新启动计算机使虚拟内存设置生效。

建议:可以划分出一个小分区专门提供给虚拟内存、IE临时文件存储等使用,以后可以对该分区定期进行磁盘整理,从而能更好提高计算机的工作效率。

一、量身定制虚似内存

1.普通设置法

根据一般的设置方法,虚拟内存交换文件最小值、最大值同时都可设为内存容量的1.5倍,但如果内存本身容量比较大,比如内存是512MB,那么它占用的空间也是很可观的。所以我们可以这样设定虚拟内存的基本数值:内存容量在256MB以下,就设置为1.5倍;在512MB以上,设置为内存容量的一半;介于256MB与512MB之间的设为与内存容量相同值。

2.精准设置法

由于每个人实际操作的应用程序不可能一样,比如有些人要运行3DMAX、Photoshop等这样的大型程序,而有些人可能只是打打字、玩些小游戏,所以对虚拟内存的要求并不相同,于是我们就要因地制宜地精确设置虚拟内存空间的数值。

①先将虚拟内存自定义的“初始大小”、“最大值”设为两个相同的数值,比如500MB;

②然后依次打开“控制面板→管理工具→性能”,在出现的“性能”对话框中,展开左侧栏目中的“性能日志和警报”,选中其下的“计数器日志”,在右侧栏目中空白处点击右键,选择右键菜单中的“新建日志设置”选项;

③在弹出的对话框“名称”一栏中填入任意名称,比如“虚拟内存测试”。在出现窗口中点击“添加计数器”按钮进入下一个窗口;

④在该窗口中打开“性能对象”的下拉列表,选择其中的“Paging File”,勾选“从列表中选择计数器”,并在下方的栏目中选择“%Usage Peak”;勾选“从列表中选择范例”,在下方的栏目中选择“_Total”,再依次点击“添加→关闭”结束

⑤在右侧栏目中可以发现多了一个“虚拟内存测试”项目,如果该项目为红色则说明还没有启动,点击该项,选择右键菜单中的“启动”选项即可

接下来运行自己常用的一些应用程序,运行一段时间后,进入日志文件所在的系统分区下默认目录“PerfLogs”,找到“虚拟内存测试_000001.csv”并用记事本程序打开它,在该内容中,我们查看每一栏中倒数第二项数值,这个数值是虚拟内存的使用比率,找到这项数值的最大值,比如图中的“46”,用46%乘以500MB(前面所设定的虚拟内存数值),得出数值为230MB。

用该数值可以将初始大小设为230MB,而最大值可以根据磁盘空间大小自由设定,一般建议将它设置为最小值的2到3倍。这样我们就可以将虚拟内存打造得更精准,使自己的爱机运行得更加流畅、更具效率。

二、Windows虚拟内存加速密籍

虚拟内存对于任何版本的Windows而言都是十分重要的。如果设置得当,它将极大地提升电脑的性能和运行速度。可是在默认状态下,Windows始终将虚拟内存设为物理内存的1.5倍。这样的话,如果用户安装2GB的内存,系统就会腾出高达3GB的硬盘空间作为虚拟内存。但以当前的主流应用软件和游戏对内存的需要来看,根本没有必要使用这么多的虚拟内存。那么,有没有什么秘技或绝招可使虚拟内存运用得更有效率或更显性能呢?

1、分割存于多个硬盘

将虚拟内存设在较快的硬盘上,的确可使虚拟内存的运作更有效率。但是若电脑上两个硬盘速度一样快,则应将虚拟内存平均分配在两个不同的硬盘上(并非同一硬盘的不同分区)。因为同步进行读写操作会更有效地提高系统整体的虚拟内存性能。

举个例子,假设你原本在硬盘C上设置了700MB的虚拟内存,现在你可尝试重新分配,即把硬盘C改为350MB,硬盘D新增350MB的虚拟内存。理论上这样做会加快虚拟内存整体的读写操作.

2、硬盘需有足够空间

如果你不是很有经验的电脑用户,又或者没有特殊的使用要求,在Windows XP中选择“系统管理的大小”的方法来自动处理虚拟内存,一般情况下应该会比选择“自定义大小”的方法来得安全和稳定。不过,有一点大家必须注意,由于虚拟内存的“页面文件”(pagefile.sys)会随着电脑使用过程进行收缩和扩展,为使系统管理虚拟内存能够进行得顺利和更具弹性,我们必须保证分页文件所在的硬盘拥有足够的可用空间。

3、最小值等于最大值

选择“自定义大小”的方法来处理虚拟内存,并将最大值和最小值都设为同一数值。有很多人都相信用这种方法来处理虚拟内存有助于提高系统的性能。他们所持的理由是,当最大值和最小值都相等时,系统无需时刻进行收缩和扩展页面文件的动作。省去了这些工作,相应地就是提高系统效率。

这种方法,很多人坚信有效,但同样地,也有人指出其实并没有效果。但不管怎样也好,如要将最大值和最小值设为相等,我们必须坚守一个原则,那就是虚拟内存的大小必须足够,否则系统轻则会出现效率下降(要进行更多复写动作来腾出空间),严重的更会造成系统不稳定。

4、整理页面文件

文件数据保存在硬盘上久了,文件碎片(fragment)自然会产生。要保持或提高硬盘的工作效率,我们应不时为硬盘进行一次碎片整理。所谓虚拟内存,其实也是硬盘上的资料文件,那么虚拟内存是否也应该像普通文件般需要整理呢?

Windows系统处理页面文件(即虚拟内存)的方法有别于一般的文件。相比之下,页面文件比一般文件更少出现碎片,为页面文件进行整理通常是没有必要的。事实上,当Windows XP进行磁盘碎片整理时,页面文件不会牵涉其中。

虽然Windows不会对页面文件进行整理,但事实上页面文件也有碎片存在。追求“尽善尽美”的朋友可能仍想对页面文件进行碎片整理。大家不妨试试下面的方法:

在桌面“我的电脑”图标上单击鼠标右键,在随后出现的功能菜单中选“属性”。进入系统属性的设置窗口,用鼠标点选“高级”-->“性能”-->“设置”-->“高级”-->“更改”,在随后出现的“虚拟内存”设置窗口中选中“无分页文件”一项。最后单击“设置”按钮退出,并重新启动电脑。

重新启动后,检查一下磁盘根目录中还有没有pagefile.sys页面文件存在,如有就将之删除。清除掉虚拟内存的页面文件后,现在我们再进行磁盘碎片整理。完成后,按照前面的步骤重新设置一定数量的虚拟内存,并启动电脑使之生效。经上述方法处理后,新得出的页面文件将会是没有碎片的。

另外,如果想查看页面文件碎片的具体情况呢?启动磁盘碎片整理程序,为存在有页面文件的硬盘进行一次“分析”,再点选“查看报告”,看看“页面文件碎片”一栏便会一目了然.

5、虚拟内存的理想大小

想以“自定义大小”的方法来处理虚拟内存,究竟应该设置多大的虚拟内存呢?在Windows XP中,如果由操作系统自己定义虚拟内存,系统通常会把最小值设置为物理内存的1.5倍。当扩展时,最大值则介于物理内存的2.5至3倍。一般情况下,用户想自定义虚拟内存的大小,均可参照这个比例设置。

真的要参照这个比例吗?如果我的电脑上有1GB的内存,难不成最小值要设置为1.5GB,最大值是2.5至3GB。这样一来。Pagefile.sys页面文件至少为1.5GB,太不现实了!

其实,大内存的系统跟小内存的系统相比,在设置虚拟内存时,标准有些不同。

如果大家有512MB以上甚至1GB的内存,既然物理内存已经相当充足,所需的虚拟内存反而应该减少。故在大内存的系统中,虚拟内存的最小值可以设成物理内存的一半。比如有1GB的内存,虚拟内存的最小值设成512MB,最大值则维持3GB以备不时之需。注意:虽然最大值设为3GB,系统是不会立即出现3GB大小的pagefile.sys文件,实际上它首先会以最小值出现,待有扩展需要时才会递增。

另外,有些大内存的朋友,可能会干脆不设置虚拟内存,以此强迫系统使用速度较快的内存。其实这是不太明智的做法。正所谓凡事都不要做得太绝对,完全没有虚拟内存也不行。原因是不少应用程序在设计时要求必须使用虚拟内存,没有了就会造成系统不稳定或死机。

至于小内存的系统,例如256MB,参照1.5倍及3倍的设置比例最稳当。即虚拟内存最小值设为384MB,最大值768MB。

6、手工订制最准确的虚拟内存

0.5倍、1.5倍、3倍,哇!好像买衣服时分大、中、小号,完全没有个性。究竟设置虚拟内存有没有更“贴身剪裁”的方法呢?

在Windows XP桌面的“开始”→“运行”中输入perfmon.msc,一个与系统性能有关的监视器便会出现。看看显示器的底部,有三个计数器(pages/sec、Avg.Disk Queue Length及rocessor Time,)。为了便于我们接下来对虚拟内存的页面文件进行精确监测,现在请大家将这三个计数器逐一点选,并按键盘上的Delete键将它们删除。请大家放心,删除后,下次再启动系统性能监视器时,这三个项目会重新出现。

删除后,现在请在图表中央位置单击鼠标右键,在随后出现的功能菜单中点选“添加计数器”一项,跟着在跳出窗口的“性能对象”一栏选“Process”。之后再在“从列表选择”一栏中点选“Page File Bytes”。不清楚“Page File Bytes”代表什么意思,只要单击“说明”按钮,解说文字便会出现在对话框之下。

选定“Page File Bytes”后,再在右方的“从列表选择范例”一栏选取“Total”项,之后依次单击“添加”和“关闭”按钮,一个名为“Page File Bytes”的计数器便会出现在性能监视器的下方中。

重复以上的动作,再添加一个名为“Page File Bytes Peak”的计数器(即Process下面的Page File Bytes Peak)。

现在,回头看一下监视器,图表中应该正在显示并计量着刚才新增加的两个计数器。如无意外,这两个计数器在图表上的显示不正确,即数值靠近最高比例线,没有动态变化。不用怕,这并不表示你的电脑出了什么问题,而是图表比例设得不太恰当而已!用鼠标右键逐一单击监视器底部的“Page Fele Bytes”和“Page File By8tes Peak”计数器,并选“属性”一项。在“数据”页面的“比例”一栏中改为0.0000001,这样显示器中的图表便不再是没有动静了。

如果你看过系统提供的说明,相信应该知道“Page File Bytes”和“Page File Bytes Peak”正是代表了系统监测期间所使用的虚拟内存及其峰值是多大。因此,需要精确地手工设置虚拟内存,可参考图表下方显示的数字,其单位是Bytes

想知道在正常的情况下,你的系统会耗用多少虚拟内存?请将平时日常使用的应用软件同时启动并让它们开始工作,接着再看性能监视器上所显示的数值,心中有数了吧。

人总有疯狂的时候,想知道自己疯狂使用电脑时系统需要多少虚拟内存,现在就尽情地将电脑上的程序启动并运行(例如,开十多个IE浏览器窗口上网,播放MP3和DVD影片,再进行光盘刻录或DV影片压缩编码),看看监视器的百分比会升高到多少。

在图表上右击鼠标,点选“属性”,进入“图表”页面勾选“水平格线”一项。这样图表中会出现一条条的水平分割线,是不是好分辨了?

图表中的红色垂直线跑得太快,来不及开启电脑上的程序进行测试?

同样,在图表上单击鼠标右键,选“属性”,在常规页面的“自动抽样间隔”一项中将1秒改为5秒。此时,图表中的“图形时间”数值便会由1分40秒变成8分20秒。换言之,红色垂直线走完一圈需花费8分20秒,这个时间应该足以让大家开启并运行很多应用程序,然后再慢慢查看图表中的结果。

最后,通过监视器的图表,相信大家已经能粗略估计你的电脑系统应设置多大的虚拟内存了。

三、出现“虚拟内存不够”的几个可能

1、感染病毒

有些病毒发作时会占用大量内存空间,导致系统出现内存不足的问题。赶快去杀毒,升级病毒库,然后把防毒措施做好!

2、虚拟内存设置不当

虚拟内存设置不当也可能导致出现内存不足问题,一般情况下,虚拟内存大小为物理内存大小的2倍即可,如果设置得过小,就会影响系统程序的正常运行。重新调整虚拟内存大小以WinXP为例,右键点击“我的电脑”,选择“属性”,然后在“高级”标签页,点击“性能”框中的“设置”按钮,切换到“高级”标签页,然后在“虚拟内存”框中点击“更改”按钮,接着重新设置虚拟内存大小,完成后重新启动系统就好了。

3、系统空间不足

虚拟内存文件默认是在系统盘中,如WinXP的虚拟内存文件名为“pagefile.sys”,如果系统盘剩余空间过小,导致虚拟内存不足,也会出现内存不足的问题。系统盘至少要保留300MB剩余空间,当然这个数值要根据用户的实际需要而定。用户尽量不要把各种应用软件安装在系统盘中,保证有足够的空间供虚拟内存文件使用,而且最好把虚拟内存文件安放到非系统盘中。

4、因为SYSTEM用户权限设置不当

基于NT内核的Windows系统启动时,SYSTEM用户会为系统创建虚拟内存文件。有些用户为了系统的安全,采用NTFS文件系统,但却取消了SYSTEM用户在系统盘“写入”和“修改”的权限,这样就无法为系统创建虚拟内存文件,运行大型程序时,也会出现内存不足的问题。问题很好解决,只要重新赋予SYSTEM用户“写入”和“修改”的权限即可,不过这个仅限于使用NTFS文件系统的用户。

四、虚拟内存的优化

1. 启用磁盘写入缓存

在“我的电脑”上单击鼠标右键选择“属性->硬件”,打开设备管理器找到当前正在使用的硬盘,单击鼠标右键选择属性。在硬盘属性的的“策略”页中,打开“启用磁盘上的写入缓存”。

这个选项将会激活硬盘的写入缓存,从而提高硬盘的读写速度。不过要注意一点,这个功能打开后,如果计算机突然断电可能会导致无法挽回的数据丢失。因此最好在有UPS的情况下再打开这个功能。当然,如果你平常使用计算机时不要进行什么重要的数据处理工作,没有UPS也无所谓,这个功能不会对系统造成太大的损失。

2. 打开Ultra MDA

在设备管理其中选择IDE ATA/ATAPI控制器中的“基本/次要IDE控制器”,单击鼠标右键选择“属性”,打开“高级设置”页。这里最重要的设置项目就是“传输模式”,一般应当选择“DMA(若可用)”。

3. 配置恢复选项

Windows XP 运行过程中碰到致命错误时会将内存的快照保存为一个文件,以便进行系统调试时使用,对于大多数普通用户而言,这个文件是没有什么用处的,反而会影响虚拟内存的性能。所以应当将其关闭。

在“我的电脑”上单击鼠标右键,选择“属性->高级”,在“性能”下面单击“设置”按钮,在“性能选项”中选择“高级”页。这里有一个“内存使用”选项,如果将其设置为“系统缓存”,Windows XP 将使用约4MB的物理内存作为读写硬盘的缓存,这样就可以大大提高物理内存和虚拟内存之间的数据交换速度。默认情况下,这个选项是关闭的,如果计算机的物理内存比较充足,比如256M或者更多,最好打开这个选项。但是如果物理内存比较紧张,还是应当保留默认的选项。

页面文件的设置

页面文件的大小计算

对于不同的计算机而言,页面文件的大小是各不相同的。关于页面文件大小的设置,有两个流传甚广的“公式”,“物理内存X2.5”或者“物理内存X1.5”。这两种计算方法固然简便,但是并不适用于所有的计算机。设置页面文件大小最准确的方法是看看计算机在平常运行中实际使用的页面文件大小。

通过Windows XP自带的日志功能可以监视计算机平常使用的页面文件的大小,从而进行最准确的设置,具体步骤如下。

一、在“我的电脑”上单击鼠标右键,选择“属性->高级”,单击“性能”下面的“设置”按钮,然后选择“高级”页,单击“虚拟内存”下方的“更改”按钮。选择“自定义大小”,并将“起始大小”和“最大值”都设置为300M,这只是一个临时性的设置。设置完成后重新启动计算机使设置生效。

二、进入“控制面板->性能与维护->管理工具”,打开“性能”,展开“性能日志和警告”,选择“计数器日志”。在窗口右侧单击鼠标右键选择“新建日志设置”

三、随便设置一个日志名称,比如“监视虚拟内存大小”。

四、在“常规”页中单击“添加计数器”按钮。

在“性能对象”中选择“Paging File”,然后选中“从列表选择记数器”下面的“%Usage Peak”,并在右侧“从列表中选择范例”中选择“_Total”。最后单击“添加”和“关闭”按钮。

五、别忘了记住“日志文件”页中的日志文件存放位置和文件名,我们后面需要查看这个日志来判断Windows XP平常到底用了多少虚拟内存,在这个例子中,日志文件被存放在D:\Perflog目录下。

另外还要设置“日志文件类型”为“文本文件”,这样便于阅读。

这时你可以看到刚才新建的日志条目前面的图标变成了绿色,这表明日志系统已经在监视虚拟内存了。如果图标还是红色,你应该单击鼠标右键选择“开始”来启动这个日志。

过一段时间后打开这个CVS文件,我们可以看到如下内容的条目。

这个日志文件记录这一段时间中页面文件的使用情况,注意这里的单位是%,而不是MB。通过简单的计算,我们就可以得到页面文件的最小尺寸,公式是“页面文件尺寸X百分比”。比如这个例子中,虚拟内存最大的使用比率是31%,300MBX31%=93MB,这个值就是虚拟内存的最小值(注意,300MB是前面的设置的临时值)。

如果物理内存较大,可以考虑将页面文件的“起始大小”和“最大值”设置为相等,等于上一步中计算出来的大小。这样硬盘中不会因为页面文件过渡膨胀产生磁盘碎片,其副作用是由于“最大值”被设置的较小,万一偶然出现虚拟内存超支的情况,可能会导致系统崩溃。

设置页面文件

现在回到“虚拟内存”的设置对话框中选择自定义大小并按照上面的计算结果分别设置“初始大小”和“最大值”。这里我们将“初始大小”设置为91M,而将“最大值”设置成了200M,这样比较保险

对页面文件进行碎片整理

Windows XP运行时需要大量访问页面文件,如果页面文件出现碎片,系统性能将会受到严重影响,而且会缩短硬盘的使用寿命。所以我们很有必要对页面文件定期进行碎片整理。

不过别忘了,页面文件是系统关键文件,Windows XP运行时无法对其进行访问。所以对它进行碎片整理并不是一件容易的事情。我们有两种方案可以选择,一是安装Windows双系统,然后启动另外一个Windows对Windows XP所在的分区进行碎片整理。二是使用专门的工具软件,比如System File Defragmenter等。

⑶ 内存虚拟化技术,具体的实现方法有哪两种

从系统的观点看,有三种主要的存储虚拟化方法:

  • 基于主机的虚拟存储;

  • 基于存储设备的虚拟存储;

  • 基于网络的虚拟存储。

  • 方法1:基于主机的虚拟存储

    基于主机的虚拟存储依赖于代理或管理软件,它们安装在一个或多个主机上,实现存储虚拟化的控制和管理。由于控制软件是运行在主机上,这就会占用主机的处理时间。因此,这种方法的可扩充性较差,实际运行的性能不是很好。基于主机的方法也有可能影响到系统的稳定性和安全性,因为有可能导致不经意间越权访问到受保护的数据。这种方法要求在主机上安装适当的控制软件,因此一个主机的故障可能影响整个SAN系统中数据的完整性。软件控制的存储虚拟化还可能由于不同存储厂商软硬件的差异而带来不必要的互操作性开销,所以这种方法的灵活性也比较差。

    但是,因为不需要任何附加硬件,基于主机的虚拟化方法最容易实现,其设备成本最低。使用这种方法的供应商趋向于成为存储管理领域的软件厂商,而且目前已经有成熟的软件产品。这些软件可以提供便于使用的图形接口,方便地用于SAN的管理和虚拟化,在主机和小型SAN结构中有着良好的负载平衡机制。从这个意义上看,基于主机的存储虚拟化是一种性价比不错的方法。

    方法2:基于存储设备的虚拟化

    基于存储设备的存储虚拟化方法依赖于提供相关功能的存储模块。如果没有第三方的虚拟软件,基于存储的虚拟化经常只能提供一种不完全的存储虚拟化解决方案。对于包含多厂商存储设备的SAN存储系统,这种方法的运行效果并不是很好。依赖于存储供应商的功能模块将会在系统中排斥JBODS(Just a Bunch of Disks,简单的硬盘组)和简单存储设备的使用,因为这些设备并没有提供存储虚拟化的功能。当然,利用这种方法意味着最终将锁定某一家单独的存储供应商。

    基于存储的虚拟化方法也有一些优势:在存储系统中这种方法较容易实现,容易和某个特定存储供应商的设备相协调,所以更容易管理,同时它对用户或管理人员都是透明的。但是,我们必须注意到,因为缺乏足够的软件进行支持,这就使得解决方案更难以客户化(customzing)和监控。

    方法3:基于网络的虚拟存储

    基于网络的虚拟化方法是在网络设备之间实现存储虚拟化功能,具体有下面几种方式:

    1. 基于互联设备的虚拟化

    基于互联设备的方法如果是对称的,那么控制信息和数据走在同一条通道上;如果是不对称的,控制信息和数据走在不同的路径上。在对称的方式下,互联设备可能成为瓶颈,但是多重设备管理和负载平衡机制可以减缓瓶颈的矛盾。同时,多重设备管理环境中,当一个设备发生故障时,也比较容易支持服务器实现故障接替。但是,这将产生多个SAN孤岛,因为一个设备仅控制与它所连接的存储系统。非对称式虚拟存储比对称式更具有可扩展性,因为数据和控制信息的路径是分离的。

    基于互联设备的虚拟化方法能够在专用服务器上运行,使用标准操作系统,例如Windows、Sun Solaris、Linux或供应商提供的操作系统。这种方法运行在标准操作系统中,具有基于主机方法的诸多优势--易使用、设备便宜。许多基于设备的虚拟化提供商也提供附加的功能模块来改善系统的整体性能,能够获得比标准操作系统更好的性能和更完善的功能,但需要更高的硬件成本。

    但是,基于设备的方法也继承了基于主机虚拟化方法的一些缺陷,因为它仍然需要一个运行在主机上的代理软件或基于主机的适配器,任何主机的故障或不适当的主机配置都可能导致访问到不被保护的数据。同时,在异构操作系统间的互操作性仍然是一个问题。

    3. 基于路由器的虚拟化

    基于路由器的方法是在路由器固件上实现存储虚拟化功能。供应商通常也提供运行在主机上的附加软件来进一步增强存储管理能力。在此方法中,路由器被放置于每个主机到存储网络的数据通道中,用来截取网络中任何一个从主机到存储系统的命令。由于路由器潜在地为每一台主机服务,大多数控制模块存在于路由器的固件中,相对于基于主机和大多数基于互联设备的方法,这种方法的性能更好、效果更佳。由于不依赖于在每个主机上运行的代理服务器,这种方法比基于主机或基于设备的方法具有更好的安全性。当连接主机到存储网络的路由器出现故障时,仍然可能导致主机上的数据不能被访问。但是只有联结于故障路由器的主机才会受到影响,其他主机仍然可以通过其他路由器访问存储系统。路由器的冗余可以支持动态多路径,这也为上述故障问题提供了一个解决方法。由于路由器经常作为协议转换的桥梁,基于路由器的方法也可以在异构操作系统和多供应商存储环境之间提供互操作性。

⑷ 不属于存储管理功能的是( ). A:内存分配 B:地址映射 C:实现虚拟存储器 D:硬盘空间管理 答案:D

不属于存储管理功能的是硬盘空间管理。

原因:

1、磁盘管理是一项计算机使用时的常规任务,它是以一组磁盘管理应用程序的形式提供给用户的,它们位于"计算机管理"控制台中.它包括查错程序和磁盘碎片整理程序以及磁盘整理程序。

2、存储器管理的对象是主存,也称内存。它的主要功能包括分配和回收主存空间,提高主存利用率,扩充主存,对主存信息实现有效保护。

3、存储管理主要指的是内存管理,涉及到硬盘的只有虚拟内存之类的内容,和硬盘空间管理没有关系。

(4)不具有虚拟存储功能的内存管理方法是扩展阅读

存储管理的功能:

(1)寻址空间

操作系统让系统看上去有比实际内存大得多的内存空间。虚拟内存可以是系统中实际物理空间的许多倍。每个进程运行在其独立的虚拟地址空间中。这些虚拟空间相互之间都完全隔离开来,所以进程间不会互相影响。同时,硬件虚拟内存机构可以将内存的某些区域设置成不可写。这样可以保护代码与数据不会受恶意程序的干扰。

(2)内存映射

内存映射技术可以将映象文件和数据文件直接映射到进程的地址空间。在内存映射中,文件的内容被直接连接到进程虚拟地址空间上。

(3)物理内存分配

内存管理子系统允许系统中每个运行的进程公平地共享系统中的物理内存。

(4)共享虚拟内存

尽管虚拟内存允许进程有其独立的虚拟地址空间,但有时也需要在进程之间共享内存。 例如有可能系统中有几个进程同时运行BASH命令外壳程序。

为了避免在每个进程的虚拟内存空间内都存在BASH程序的拷贝,较好的解决办法是系统物理内存中只存在一份BASH的拷贝并在多个进程间共享。

动态库则是另外一种进程间共享执行代码的方式。共享内存可用来作为进程间通讯(IPC)的手段,多个进程通过共享内存来交换信息。 Linux支持SYSTEM V的共享内存IPC机制。

参考资料来源:网络-存储管理

网络-磁盘管理

⑸ 不属于存储管理功能的是( ). A:内存分配 B:地址映射 C:实现虚拟存储器 D:硬盘空间管理 答案:D 为什么

存储管理指的是管理内部存储器,而文件管理才与硬盘空间管理有关。

⑹ 什么是虚拟内存它的作用是什么

虚拟内存,是硬盘上的一个区间,专门由系统划分出来,在物理内存不够的情况下,把这个区间当成内存使用,但是一般系统不会在物理内存用完后才使用虚拟内存,所以虚拟内存一般都会占用的,但是由于是硬盘上的,所以速度还是没有物理内存那么快.当你运行大型程序的时候虚拟内存的重要就体现出来了.

⑺ 计算机管理内存的方法有哪些优缺点是什么

内存管理是操作系统最重要的一部分,它决定了操作系统的性能。为了说明如何进行内存访问的操作,有必要先介绍有关内存管理的一些术语及背景。


2.1 虚拟内存

所谓虚拟内存就是用硬盘空间来弥补计算机物理内存不足的技术。Windows操作系统用虚拟内存来动态管理运行时的交换文件。为了提供比实际物理内存还多的内存容量,Windows操作系统占用了硬盘上的一部分空间作为虚拟内存。当CPU有要求时,首先会读取内存中的资料。当内存容量不够用时,Windows就会将需要暂时存储的数据写入硬盘。所以,计算机的内存大小等于实际物理内存容量加上“分页文件”(就是交换文件)的大小。Windows 98中分页文件名采用Win386.swp形式,而Windows 2K/XP/2003中采用pagefile.sys,默认位于系统分区的根目录下,具有隐藏属性。如果需要的话,“分页文件”会动用硬盘上所有可以使用的空间。

安装好Windows以后,系统采用默认的设置自动处理虚拟内存,为了优化系统的 工作性能,根据Windows操作系统中虚拟内存的设置方法,可以自己动手设置内存管理参数。


2.2 CPU工作模式

计算机系统有不同的工作模式,在不同的模式下,CPU的寻址方式是不一样的,通常见到的CPU工作模式如下所述。

2.2.1.实模式

实模式是为了Pentium处理器与8086/8088兼容而设置的。8086和8088只能工作于实模式,而80286及以上的处理器可工作于实模式或者保护模式下。实模式操作方式只允许微处理器寻址第一个1MB的存储空间,从0x00000~0xFFFFF。在实模式下的存储器寻址是段地址+偏移地址。例如段寄存器的内容是0x1000,则它寻址开始于0x10000的段,偏移量大小从0x0000~0xFFFF,即偏移量的空间大小是216=64KB。

2.2.2.保护地址模式

保护地址模式又称为虚拟地址存储管理方式。保护模式下主要有两种特征。
(1)内存分段管理
在保护模式下,各个16位的段寄存器里面放置的是选择符。各项任务共享的内存空间由全局选择符来索引;而某个任务独立使用的内存空间由局部选择符来索引。由选择符的高13位作为偏移量,再以CPU内部事先初始化好的GDTR(全局描述符表寄存器)中的32位基地址为基,可以获得相应的描述符。由描述符中的线性地址决定段的基地址。再利用指令(或其他方式)给出的偏移量,便可以得到线性地址,即
线性地址=段线性基地址+偏移量
保护模式采用上面介绍的分段管理,可以实现的存储器寻址范围为4GB,通常把通过段变换获得的地址称为线性地址。这种线性地址是同32位物理地址对应的,为了获得更大的寻址范围,还可以对线性地址实行分页管理。在保护模式下,处理器通过CRO控制寄存器的PG(page)位进行管理,当PG=0时,由段变换获得的线性地址可直接作为物理地址使用;若PG=1,则进一步进行页变换。
(2)内存分页管理

分页管理的基本思想是将内存分为大小固定为4KB或者1MB的若干页,通过一定机制对内存进行管理。与前面的分段管理类似,程序或数据将根据其长度分配若干页。为了进行页面管理,在分页管理机制中采用了页表、页目录对线性地址作页变换。


2.3 逻辑、线性和物理地址

在保护地址模式下,经常遇到三种地址:逻辑地址(Logical Address)、线性地址(Linear Address)和物理地址(Physical Address)。CPU通过分段机制将逻辑地址转换为线性地址,再通过分页机制将线性地址转换为物理地址。
(1)逻辑地址
这是内存地址的精确描述,通常表示为十六进制:xxxx:YYYYYYYY,这里xxxx为selector(选择器),而YYYYYYYY是针对selector所选择的段地址的线性偏移量。除了指定xxxx的具体数值外,还可使用具体的段寄存器的名字来替代,如CS(代码段),DS(数据段),ES(扩展段),FS(附加数据段#1),GS(附加数据段#2)和SS(堆栈段)。这些符号都来自旧的“段:偏移量”风格,在 8086 实模式下使用此种方式来指定“far pointers”(远指针)。
(2)线性地址
线性地址是逻辑地址到物理地址变换之间的中间层,是处理器可寻址的内存空间(称为线性地址空间)中的地址。程序代码会产生逻辑地址,或者说是段中的偏移地址,加上相应段的基地址就生成了一个线性地址。
如果启用了分页机制,那么线性地址可以再经变换以产生一个物理地址。若没有启用分页机制,那么线性地址直接就是物理地址。不过,在开启分页功能之后,一个线性地址可能没有相对映的物理地址,因为它所对应的内存可能被交换到硬盘中。32位线性地址可用于定位4GB存储单元。
(3)物理地址

所谓物理地址,就是指系统内存的真正地址。对于32 位的操作系统,它的范围为0x00000000~0xFFFFFFFF,共有4GB。只有当CPU工作于分页模式时,此种类型的地址才会变得非常“有趣”。本质上,一个物理地址是CPU插脚上可测量的电压。操作系统通过设立页表将线性地址映射为物理地址。Windows 2K/XP所用页表布局的某些属性对于调试软件开发人员非常有用。


2.4 存储器分页管理机制

程序代码和数据必须驻留在内存中才能得以运行,然而系统内存量很有限,往往不能容纳一个完整程序的所有代码和数据,特别是在多任务系统中,如Windows,可能需要同时打开多个执行程序,如画图程序,浏览器等,想让内存驻留所有这些程序显然不大可能,因此首先能想到的就是将程序分割成小部分,只让当前系统运行它所有需要的那部分留在内存,其他部分都留在硬盘(虚拟内存)。当系统处理完当前任务片段后,再从外存中调入下一个待运行的任务片段。于是,存储器分页管理机制随之而被发明。
如前所述,在保护模式下,控制寄存器CR0中的最高位PG位控制分页管理机制是否生效。如果PG=1,分页机制生效,把线性地址转换为物理地址。如果PG=0,分页机制无效,线性地址就直接作为物理地址。必须注意,只有在保护方式下分页机制才可能生效。只有在保证使PE位为1的前提下,才能够使PG位为1,否则将引起通用保护 故障。

分页机制把线性地址空间和物理地址空间分别划分为大小相同的块。这样的块称为页。通过在线性地址空间的页与物理地址空间的页之间建立映射,分页机制可以实现线性地址到物理地址的转换。线性地址空间的页与物理地址空间的页之间的映射可根据需要来确定。线性地址空间的任何一页,可以映射为物理地址空间中的任何一页。


2.5 线性地址到物理地址的转换

线性地址空间的页到物理地址空间的页之间的映射用表来描述。目前所见到的有4KB和1MB大小的物理分页,对于4KB页面的分页,线性地址到物理地址的转换过程如图所示。对于1MB页面分页,线性地址到物理地址的转换与4KB的基本相似,不同的是线性地址的低22位对应一个物理页面。

对于4KB页面的线性地址到物理地址的转换示意图


对于4KB页面分页,页映射表的第一级称为页目录表,存储在一个物理页中。页目录表共有1024个页目录项(PDE,page directory entry),其中,每个PDE为4字节长,包含对应第二级表所在物理地址空间页的页码。页映射表的第二级称为页表,每张页表也被存储在一个物理页中。每张页表有1024个页表项(PTE,page table entry),每个PTE为4字节长,其中PTE的低12位用来存放诸如“页是否存在于内存”或“页的权限”等信息。

一个线性地址大小为4个字节(32bit),包含着找到物理地址的信息,分为3个部分:第22位到第31位这10位(最高10位)是页目录中的索引,第12位到第21位这10位是页表中的索引,第0位到第11位这12位(低12位)是页内偏移。在把一个线性地址转换成物理地址时,CPU首先根据CR3中的值,找到页目录所在的物理页。然后根据线性地址的第22位到第31位这10位(最高的10bit)的值作为索引,找到相应的PDE,其中含有这个虚拟地址所对应页表的物理地址。有了页表的物理地址,再把虚拟地址的第12位到第21位这10位的值作为索引,找到该页表中相应的PTE,其中就有这个虚拟地址所对应物理页的物理地址。最后用线性地址的最低12位,也就是页内偏移,加上这个物理页的物理地址,就得到了该线性地址所对应的物理地址。

⑻ 什么是虚拟内存,它的作用是什么,如何更改虚拟内存

虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。

它的作用与物理内存基本相似,但它是作为物理内存的“后备力量”而存在的,但是,它并不是在只有物理内存不够用时才发挥作用的,也就是说在物理内存够用时也有可能使用虚拟内存。

可以在任一本地硬盘上设定.
选择“控制面板→系统→高级→性能”中的“设置→高级→更改”,打开虚拟内存设置窗口,在驱动器[卷标]中默认选择的是系统所在的分区,如果想更改到其他分区中,首先要把原先的分区设置为无分页文件,然后再选择其他分区。

⑼ 现代操作系统中,一般采用()和()两种存储管理方法。—交换和虚拟内存有何不同

现在操作系统中,一般采用比较欢和两组二交换的轻松管理方式,你交换和虚拟内容存在不同,根据他的不同进行交换和模拟的需要。