CN106339250B - 一种计算机虚拟内存的管理方法 - Google Patents

一种计算机虚拟内存的管理方法 Download PDF

Info

Publication number
CN106339250B
CN106339250B CN201610696055.XA CN201610696055A CN106339250B CN 106339250 B CN106339250 B CN 106339250B CN 201610696055 A CN201610696055 A CN 201610696055A CN 106339250 B CN106339250 B CN 106339250B
Authority
CN
China
Prior art keywords
memory
computer
application program
virtual memory
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610696055.XA
Other languages
English (en)
Other versions
CN106339250A (zh
Inventor
郭笃刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201610696055.XA priority Critical patent/CN106339250B/zh
Publication of CN106339250A publication Critical patent/CN106339250A/zh
Application granted granted Critical
Publication of CN106339250B publication Critical patent/CN106339250B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种计算机虚拟内存管理方法,所述的方法是通过对计算机中应用程序的监控识别,确认虚拟内存构建成功后,识别计算机中应用程序的使用频率和使用时间,将应用程序的使用频率和使用时间数据与计算机系统预先设置的标准数据进行对比,并判断对比结果,根据使用情况将应用程序运行数据在固态硬盘的虚拟内存内分为隐藏区和运行区,依据隐藏区的应用程序的数量是否达到预先设定的范围值时,通过结束计算机中应用程序的运行来控制固态硬盘的虚拟内存的开启或关闭。本发明的方法可以加大应用程序的运行数量,提高虚拟内存的管理效率,同时大幅度提高应用程序的内存使用、内存分配的效率,从而提高计算机工作效率。

Description

一种计算机虚拟内存的管理方法
技术领域
本发明属于计算机内存管理技术领域,具体来讲是涉及一种计算机虚拟内存的管理方法。
背景技术
虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存,而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。目前,大多数操作系统都使用了虚拟内存,如Windows家族的“虚拟内存”;Linux的“交换空间”等。
虚拟存储管理是当程序的存储空间要求大于实际的内存空间时,就使得程序难以运行。虚拟存储技术就是利用实际内存空间和相对大的多的外部储存器存储空间相结合构成一个远远大于实际内存空间的虚拟存储空间,程序就运行在这个虚拟存储空间中。能够实现虚拟存储的依据是程序的局部性原理,即程序在运行过程中经常体现出运行在某个局部范围之内的特点.在时间上,经常运行相同的指令段和数据,在空间上,经常运行与某一局部存储空间的指令和数据,有些程序段不能同时运行或根本得不到运行。虚拟内存是把一个程序所需要的存储空间分成若干页或段,程序运行用到页和段就放在内存里,暂时不用就放在外存中。当用到外存中的页和段时,就把它们调到内存,反之就把它们送到外存中,装入内存中的页或段可以分散存放。
随着信息的价值和使用持续增长,计算机中的应用程序越来越多,而是使用频率对内存的影响也逐渐加大,当应用程序的数量及存储空间要求大于实际的内存空间时,就使得程序难以运行了,并且严重影响了计算机的运行速度。而适当的虚拟存储技术可以利用实际内存空间和相对大的多的外部储存器存储空间相结合构成一个远远大于实际内存空间的虚拟存储空间,并对虚拟内存空间进行分区管理,既能够实现虚拟存储的局部性管理,还能使应用程序在运行过程中经常体现出运行在某个局部范围或固定的时间之内。
发明内容
本发明解决的技术问题是提供了一种将应用程序使用频率和使用时间数据量化控制的计算机虚拟内存的管理方法。
本发明的技术方案如下:
一种计算机虚拟内存的管理方法,适用于PC设备,所述的管理方法包括以下步骤:(1)监控识别:检测虚拟内存是否正常,确认虚拟内存构建成功后,然后通过监控计算机中运行的多个应用程序,识别计算机中应用程序的使用频率和使用时间,生成数据后存储;(2)数据对比:将应用程序的使用频率和使用时间数据与计算机系统预先设置的标准数据进行对比,并判断对比结果;(3)虚拟内存控制:根据使用情况将应用程序运行数据在固态硬盘的虚拟内存内进行分区,分为隐藏区和运行区,根据步骤(2)中的对比结果将超过预设时间内未使用的应用程序置于隐藏区隐藏,需要使用时再调出,未超过预设时间的应用程序在按照内存分配管理在运行区中运行;(4)硬件内存控制:依据步骤三(3)中隐藏区的应用程序的数量是否达到预先设定的范围值时,所述的范围值是指根据使用者的需求设定的极限范围值,可以包括上限值和下限值,也可以是其中的一种,通过结束计算机中应用程序的运行来控制固态硬盘的虚拟内存的开启或关闭。
进一步的,所述的检测虚拟内存是指检测虚拟内存是否被修改,包括虚拟内存区域划分是否正常,隐藏区和运行区的内存大小是否改变,如果改变,改变后的内存大小是否满足计算机的使用需求,过高的内存占用率会发出警示提醒。
进一步的,所述的虚拟内存构建是指当计算机的应用程序开启时,将存放于快速执行区内的与私有应用非相关代码标记为代码A,伪造系统调用将代码A从快速执行区移出,另行保存;获取代码A在快速执行区的地址、偏移以及大小;对于快速执行区中因移出代码A而空出的区域作为虚拟内存进行重新划分为代码区和内存区,代码区用来存放执行频繁复杂的代码块,内存区域用来存放交互频繁的数据区;当应用程序关闭时,释放所述的虚拟内存,伪造系统调用将所述代码A还原至其初始的保存位置。
进一步的,所述的固态硬盘的虚拟内存的开启是计算机运行时自动开启,关闭是隐藏区的应用程序数量达到极限值时系统会发出提醒指示以确认是否关闭,在计算机注销、重新启动、关机的情况下固态硬盘的虚拟内存关闭,当计算机处于睡眠或锁定状态时固态硬盘的虚拟内存不关闭,而睡眠或锁定状态时应用程序会全部在虚拟内存隐藏区运行。
进一步的,所述的标准数据是在计算机系统中设置的应用程序使用时间的极限数据,所述的极限数据包含程序名称、程序类型、程序在计算机运行内存中所占比例、程序最近的使用时间。
进一步的,所述的内存分配管理是以内存分配单元为单位,通过虚拟内存调度匹配置换来完成虚拟内存与物理内存的映射,其中虚拟内存调度仅调入或调出内存分配单元中较大的内存块,以减少调度执行次数,内存分配单元中较小的内存块需要时在物理内存中移动,以少量的内存数据移动增加虚拟内存调度转换匹配率,这样可以提高虚拟内存调度准确率和效率。
进一步的,所述的映射是指内存管理单元根据计算机应用程序执行的标识查询映射关系表,获取应用程序所需内存和计算机物理内存的大小,所述的内存管理单元将应用程序运行内存与计算机物理内存的对应关系写入到映射关系表中,当应用程序运行内存的大小大于计算机物理内存时,将应用程序运行内存通过链接分配分配到虚拟内存中虚拟。
与现有技术相比,本发明的方法具有以下优点:通过对计算机中应用程序的监控识别,确认虚拟内存构建成功后,识别计算机中应用程序的使用频率和使用时间,将应用程序的使用频率和使用时间数据与计算机系统预先设置的标准数据进行对比,并判断对比结果,根据使用情况将应用程序运行数据在固态硬盘的虚拟内存内分为隐藏区和运行区,依据隐藏区的应用程序的数量是否达到预先设定的范围值时,通过结束计算机中应用程序的运行来控制固态硬盘的虚拟内存的开启或关闭。本发明的方法可以加大应用程序的运行数量,提高虚拟内存的管理效率,同时大幅度提高应用程序的内存使用、内存分配的效率,从而提高计算机工作效率。
附图说明
图1是本发明所述的一种计算机虚拟内存管理方法的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于对本发明实施例的理解,下面将结合附图及具体实施例为例做进一步的解释说明,实施例并不构成对本发明实施例的限定。
如图1所示,一种计算机虚拟内存的管理方法,在个人PC设备中,所述的管理方法包括以下步骤:
(1)监控识别:经检测,PC设备中虚拟内存正常,确认虚拟内存构建成功,打开360浏览器后同时运行多个页面,然后通过监控计算机中运行的360浏览器,识别计算机中360浏览器的使用频率和使用时间,生成数据后存储;(2)数据对比:将360浏览器应用程序的使用频率和使用时间数据与计算机系统预先设置的标准数据进行对比,并判断对比结果;(3)虚拟内存控制:根据使用情况将应用程序运行数据在固态硬盘的虚拟内存内进行分区,分为隐藏区和运行区,根据步骤(2)中的对比结果将超过预设时间内未使用的应用程序置于隐藏区隐藏,需要使用时再调出,未超过预设时间的应用程序在按照内存分配管理在运行区中运行;(4)硬件内存控制:依据步骤三(3)中隐藏区的应用程序的数量是否达到预设的上限值20时,通过结束计算机中应用程序的运行来控制固态硬盘的虚拟内存的开启或关闭。
其中,所述的检测虚拟内存是指检测虚拟内存是否被修改,包括虚拟内存区域划分是否正常,隐藏区和运行区的内存大小是否改变,如果改变,改变后的内存大小是否满足计算机的使用需求,过高的内存占用率会发出警示提醒。所述的虚拟内存构建是指当计算机的应用程序开启时,将存放于快速执行区内的与私有应用非相关代码标记为代码A,伪造系统调用将代码A从快速执行区移出,另行保存;获取代码A在快速执行区的地址、偏移以及大小;对于快速执行区中因移出代码A而空出的区域作为虚拟内存进行重新划分为代码区和内存区,代码区用来存放执行频繁复杂的代码块,内存区域用来存放交互频繁的数据区;当应用程序关闭时,释放所述的虚拟内存,伪造系统调用将所述代码A还原至其初始的保存位置。所述的固态硬盘的虚拟内存的开启是计算机运行时自动开启,关闭是隐藏区的应用程序数量达到极限值时系统会发出提醒指示以确认是否关闭,在计算机注销、重新启动、关机的情况下固态硬盘的虚拟内存关闭,当计算机处于睡眠或锁定状态时固态硬盘的虚拟内存不关闭,而睡眠或锁定状态时应用程序会全部在虚拟内存隐藏区运行。所述的标准数据是在计算机系统中设置的应用程序使用时间的极限数据,所述的极限数据包含程序名称、程序类型、程序在计算机运行内存中所占比例、程序最近的使用时间。所述的内存分配管理是以内存分配单元为单位,通过虚拟内存调度匹配置换来完成虚拟内存与物理内存的映射,其中虚拟内存调度仅调入或调出内存分配单元中较大的内存块,以减少调度执行次数,内存分配单元中较小的内存块需要时在物理内存中移动,以少量的内存数据移动增加虚拟内存调度转换匹配率,这样可以提高虚拟内存调度准确率和效率。所述的映射是指内存管理单元根据计算机应用程序执行的标识查询映射关系表,获取应用程序所需内存和计算机物理内存的大小,所述的内存管理单元将应用程序运行内存与计算机物理内存的对应关系写入到映射关系表中,当应用程序运行内存的大小大于计算机物理内存时,将应用程序运行内存通过链接分配分配到虚拟内存中虚拟。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。

Claims (2)

1.一种计算机虚拟内存的管理方法,适用于PC设备,其特征在于,所述的管理方法包括以下步骤:(1)监控识别:检测虚拟内存是否正常,确认虚拟内存构建成功后,然后通过监控计算机中运行的多个应用程序,识别计算机中应用程序的使用频率和使用时间,生成数据后存储;(2)数据对比:将应用程序的使用频率和使用时间数据与计算机系统预先设置的标准数据进行对比,并判断对比结果;(3)虚拟内存控制:根据使用情况将应用程序运行数据在固态硬盘的虚拟内存内进行分区,分为隐藏区和运行区,根据步骤(2)中的对比结果将超过预设时间内未使用的应用程序置于隐藏区隐藏,需要使用时再调出,未超过预设时间的应用程序在按照内存分配管理在运行区中运行;(4)硬件内存控制:依据步骤三(3)中隐藏区的应用程序的数量是否达到预先设定的范围值时,通过结束计算机中应用程序的运行来控制固态硬盘的虚拟内存的开启或关闭;
所述的检测虚拟内存是指检测虚拟内存是否被修改,包括虚拟内存区域划分是否正常,隐藏区和运行区的内存大小是否改变,如果改变,改变后的内存大小是否满足计算机的使用需求,过高的内存占用率会发出警示提醒;
所述的虚拟内存构建是指当计算机的应用程序开启时,将存放于快速执行区内的与私有应用非相关代码标记为代码A,伪造系统调用将代码A从快速执行区移出,另行保存;获取代码A在快速执行区的地址、偏移以及大小;对于快速执行区中因移出代码A而空出的区域作为虚拟内存进行重新划分为代码区和内存区,代码区用来存放执行频繁复杂的代码块,内存区域用来存放交互频繁的数据区;当应用程序关闭时,释放所述的虚拟内存,伪造系统调用将所述代码A还原至其初始的保存位置;
所述的固态硬盘的虚拟内存的开启是计算机运行时自动开启,关闭是隐藏区的应用程序数量达到极限值时系统会发出提醒指示以确认是否关闭,在计算机注销、重新启动、关机的情况下固态硬盘的虚拟内存关闭,当计算机处于睡眠或锁定状态时固态硬盘的虚拟内存不关闭,而睡眠或锁定状态时应用程序会全部在虚拟内存隐藏区运行;
所述的标准数据是在计算机系统中设置的应用程序使用时间的极限数据,所述的极限数据包含程序名称、程序类型、程序在计算机运行内存中所占比例、程序最近的使用时间;
所述的内存分配管理是以内存分配单元为单位,通过虚拟内存调度匹配置换来完成虚拟内存与物理内存的映射,其中虚拟内存调度仅调入或调出内存分配单元中较大的内存块,以减少调度执行次数,内存分配单元中较小的内存块需要时在物理内存中移动,以少量的内存数据移动增加虚拟内存调度转换匹配率。
2.如权利要求1所述的一种计算机虚拟内存的管理方法,其特征在于,所述的映射是指内存管理单元根据计算机应用程序执行的标识查询映射关系表,获取应用程序所需内存和计算机物理内存的大小,所述的内存管理单元将应用程序运行内存与计算机物理内存的对应关系写入到映射关系表中,当应用程序运行内存的大小大于计算机物理内存时,将应用程序运行内存通过链接分配分配到虚拟内存中虚拟。
CN201610696055.XA 2016-08-19 2016-08-19 一种计算机虚拟内存的管理方法 Active CN106339250B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610696055.XA CN106339250B (zh) 2016-08-19 2016-08-19 一种计算机虚拟内存的管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610696055.XA CN106339250B (zh) 2016-08-19 2016-08-19 一种计算机虚拟内存的管理方法

Publications (2)

Publication Number Publication Date
CN106339250A CN106339250A (zh) 2017-01-18
CN106339250B true CN106339250B (zh) 2019-09-27

Family

ID=57825390

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610696055.XA Active CN106339250B (zh) 2016-08-19 2016-08-19 一种计算机虚拟内存的管理方法

Country Status (1)

Country Link
CN (1) CN106339250B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766122B (zh) * 2017-09-28 2021-01-15 苏州浪潮智能科技有限公司 一种宿主机的可用内存空间设置方法和装置
CN108920292A (zh) * 2018-06-26 2018-11-30 河南孚点电子科技有限公司 一种计算机内存监管方法
CN111611083B (zh) * 2020-05-26 2023-05-02 北京字节跳动网络技术有限公司 虚拟内存上限检测方法、装置、计算机设备及存储介质
CN112162818B (zh) * 2020-09-16 2023-04-07 Oppo(重庆)智能科技有限公司 一种虚拟内存分配方法、装置、电子设备及存储介质
CN112764929A (zh) * 2021-01-22 2021-05-07 山东云海国创云计算装备产业创新中心有限公司 一种内存页置换方法、系统、设备及计算机可读存储介质
CN113434288B (zh) * 2021-06-16 2022-12-09 荣耀终端有限公司 内存管理的方法及电子设备
CN116107922A (zh) * 2021-09-30 2023-05-12 荣耀终端有限公司 一种应用程序的管理方法及电子设备
CN113778695B (zh) * 2021-11-12 2022-04-29 深圳华锐分布式技术股份有限公司 跨应用生命周期的内存快照管理方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101782836A (zh) * 2009-01-19 2010-07-21 华硕电脑股份有限公司 虚拟内存的控制系统及控制方法
CN104111896A (zh) * 2014-07-30 2014-10-22 云南大学 大数据处理中的虚拟内存管理方法及其装置
CN105808322A (zh) * 2016-04-01 2016-07-27 深圳市硅格半导体股份有限公司 多分区虚拟内存的映射控制方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7650489B2 (en) * 2006-03-23 2010-01-19 Intel Corporation Determining coherency between a non-volatile memory and a system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101782836A (zh) * 2009-01-19 2010-07-21 华硕电脑股份有限公司 虚拟内存的控制系统及控制方法
CN104111896A (zh) * 2014-07-30 2014-10-22 云南大学 大数据处理中的虚拟内存管理方法及其装置
CN105808322A (zh) * 2016-04-01 2016-07-27 深圳市硅格半导体股份有限公司 多分区虚拟内存的映射控制方法及装置

Also Published As

Publication number Publication date
CN106339250A (zh) 2017-01-18

Similar Documents

Publication Publication Date Title
CN106339250B (zh) 一种计算机虚拟内存的管理方法
Sazeides et al. Implementations of context based value predictors
CN104572307B (zh) 一种对虚拟资源进行弹性调度的方法
CN112640380A (zh) 用于对事件的输入流进行异常检测的设备和方法
CN104899153A (zh) 后台应用清理方法及系统
CN108304554A (zh) 文件拆分方法、装置、计算机设备和存储介质
Sultan An econometric study of economic growth, energy and exports in Mauritius: Implications for trade and climate policy
CN101611402A (zh) 用于优化数据集的变化的系统和方法
CN112412763A (zh) 一种云端控制的空压机协同作业方法、及其相关设备
US20200233724A1 (en) Workload placement in a cluster computing environment using machine learning
CN106775944A (zh) 云平台下基于文化‑多蚁群算法虚拟机整合的方法
Katoen GSPNs revisited: Simple semantics and new analysis algorithms
CN103544151B (zh) linux系统中数据处理的方法及系统
Poppe et al. Seagull: An infrastructure for load prediction and optimized resource allocation
EP3011456B1 (en) Sorted event monitoring by context partition
CN110096339A (zh) 一种基于系统负载实现的扩缩容配置推荐系统及方法
US10216606B1 (en) Data center management systems and methods for compute density efficiency measurements
CN205621168U (zh) 一种基于刷卡机多模式控制的实验室管理系统
CN103455525B (zh) 基于用户的搜索推广行为确定推广帐号状态的方法与设备
CN109460287A (zh) 资源混合调度的控制方法及系统
Nie et al. An improved ant colony optimization algorithm for improving cloud resource utilization
AU2022320198A1 (en) Trust scoring service for fraud prevention systems
CN202838471U (zh) 一种门禁系统
Li et al. Codec: Cost-effective duration prediction system for deadline scheduling in the cloud
CN104037771B (zh) 电网负荷下降调整方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 262700, No. 1299, golden light street, Shouguang City, Shandong, Weifang

Patentee after: Guo Du Gang

Address before: 262799 No. 69, golden light East Street, Shandong, Weifang

Patentee before: Guo Du Gang

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 262700 Weifang Institute of science and technology, Xueyuan Road 166, Shouguang City, Shandong, Weifang

Patentee after: Guo Dugang

Address before: 262700, No. 1299, golden light street, Shouguang City, Shandong, Weifang

Patentee before: Guo Dugang