多用户存储管理方法和系统技术方案

技术编号:14920468 阅读:97 留言:0更新日期:2017-03-30 13:20
一种多用户存储管理方法和系统,该方法包括:处理单元将磁盘应用程序文件映像到内存中,确定内存映像文件中经常调用指令和数据的地址空间;处理单元将常用指令和数据地址空间的权限设为可以被高级缓存属性;锁定单元分别锁定对上述常用指令进行缓存的高级指令缓存单元和对上述常用数据进行缓存的高级数据缓存单元;系统包括映像单元、处理单元、高级数据缓存单元、高级指令缓存单元以及锁定单元;实施本发明专利技术所述的一种多用户存储方法和系统,加速文件I/O操作,减少了内核缓冲,提高了磁盘访问的速度;高速缓存被永久缓存,减少了进程中的读写操作,提高了CPU的处理效率,大大降低了系统的开销。

【技术实现步骤摘要】

本专利技术涉及计算机存储
,更具体地说,涉及一种嵌入式的多用户系统的存储管理方法和系统。
技术介绍
缓存有buffer和高级缓存两种,buffer是由各种进程分配的,被用在如输入队列等方面,一个简单的例子如某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先前读入的字段放在buffer中保存。高级缓存经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成高级缓存以方便下次被访问,这样可提供系统性能。高级缓存高速缓冲存储器一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问。存储器的高速缓冲存储器存储了频繁访问的RAM位置的内容及这些数据项的存储地址。当处理器引用存储器中的某地址时,高速缓冲存储器便检查是否存有该地址。如果存有该地址,则将数据返回处理器;如果没有保存该地址,则进行常规的存储器访问。因为高速缓冲存储器总是比主RAM存储器速度快,所以当RAM的访问速度低于微处理器的速度时,常使用高速缓冲存储器。由于高级缓存的存取速率相当快,使得CPU的利用率大大提高,进而使整个系统的性能得以提升。但是嵌入式的多任务、多用户系统在多进程并发执行时会不断地快速切换进程,每次切换都要采用新的进入执行态进程的页表,这样就需要频繁地清除高级缓存和TLB,并重新从内存320中装载数据,增加了许多开销。
技术实现思路
针对嵌入式系统在多进程并发执行时会不断地快速切换进程,每次切换都要采用新的进入执行态进程的页表,造成开销增加的问题,提出一种存储管理方法和系统,通过快速切换进程和把常用的程序锁定在高级缓存中,大减少进程执行过程中或共享过程中的开销。一种多用户存储管理方法,适用于嵌入式的多用户系统内存管理,该方法包括以下步骤:(A)处理单元将磁盘应用程序文件映像到内存中,确定内存映像文件中经常调用指令和数据的地址空间;(B)处理单元将常用指令和数据地址空间的权限设为可以被高级缓存属性;及(C)锁定单元分别锁定对上述常用指令进行缓存的高级指令缓存单元和对上述常用数据进行缓存的高级数据缓存单元。所述处理单元用于设定处理系统内存中应用程序中的特定的地址空间的权限以及确定将要被锁定的指令或数据的地址空间;所述高级指令缓存单元用于缓存将要被锁定的应用程序中的指令部分;所述高级数据缓存单元用于缓存将要被锁定的应用程序中的数据部分。优选地,步骤(C)包括检查高级指令缓存单元的步骤(C-1):处理单元检查指令高级缓存是否过载,若过载,则经过异常处理后,结束锁定;及检查数据高级缓存的步骤(C-2):处理单元检查数据高级缓存是否过载,若过载,则经过异常处理后,结束锁定。如上所述的一种多用户存储管理方法,所述高级指令缓存单元用于对根据应用程序的存储地址将经常使用的指令进行缓存。如上所述的一种多用户存储管理方法,所述高级数据缓存单元用于对根据应用程序的存储地址将经常使用的数据进行缓存。如上所述的方法对应的多用户存储管理系统,包括映像单元、处理单元、高级数据缓存单元、高级指令缓存单元以及锁定单元;处理单元:用于指定内存的锁定区域和解锁区域,检查高级数据缓存单元和高级指令缓存单元是否过载;高级指令缓存单元:用于缓存将要被锁定的应用程序中的指令部分;高级数据缓存单元:用于缓存将要被锁定的应用程序中的数据部分;锁定单元:将已经缓存了数据或指令的高级数据缓存单元或高级指令缓存单元进行锁定;所述多用户存储管理系统还包括用于对系统内存进行初始化,对高级数据缓存单元和高级指令缓存单元清零的初始化单元、用于存储磁盘应用程序映像文件的内存以及磁盘应用文件。如上所述的多用户存储管理系统,其特征在于,所述内存分别与所述映像单元、初始化单元以及处理单元连接,所述高级数据缓存单元以及高级指令缓存单元连接在所述处理单元与所述锁定单元的中间。实施本专利技术所述的一种多用户存储方法和系统,加速文件I/O操作,减少了内核缓冲,提高了磁盘访问的速度;将重复调用的指令和数据,多个进程需要访问同样的数据或者指令,将这些数据和指令保存在高速缓存中,而且高速缓存单元能够想任何进程独立地提供数据,指令或者数表,大大加速了处理速度;同时,高速缓存被永久缓存,减少了进程中的读写操作,提高了CPU的处理效率,大大降低了系统的开销。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术中映像文件存储管理方法实施例的流程示意图;图2是本专利技术中映像文件存储管理方法实施例的流程图;图3是本专利技术中本专利技术中映像文件存储管理系统实施例的逻辑组成示意图。具体实施方式buffer是由各种进程分配的,被用在如输入队列等方面,一个简单的例子如某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先前读入的字段放在buffer中保存。高级缓存经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成高级缓存以方便下次被访问,这样可提供系统性能。高级缓存高速缓冲存储器一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问。存储器的高速缓冲存储器存储了频繁访问的RAM位置的内容及这些数据项的存储地址。当处理器引用存储器中的某地址时,高速缓冲存储器便检查是否存有该地址。如果存有该地址,则将数据返回处理器;如果没有保存该地址,则进行常规的存储器访问。因为高速缓冲存储器总是比主RAM存储器速度快,所以当RAM的访问速度低于微处理器的速度时,常使用高速缓冲存储器。由于高级缓存的存取速率相当快,使得CPU的利用率大大提高,进而使整个系统的性能得以提升。但是嵌入式系的多任务、多用户系统在多进程并发执行时会不断地快速切换进程,每次切换都要采用新的进入执行态进程的页表,这样就需要频繁地清除高级缓存和TLB,并重新从内存320中装载数据,增加了许多开销。本专利技术要解决的问题是:嵌入式的多任务、多用户系统在多进程并发执行时会不断地快速切换进程,每次切换都要采用新的进入执行态进程的页表,这样就需要频繁地清除高级缓存和TLB,并重新从内存320中装载数据,增加了许多开销,降低了CPU的处理速度。本专利技术提出的技术方案是:针对嵌入式系统在多进程并发执行时会不断地快速切换进程,每次切换都要采用新的进入执行态进程的页表,造成开销增加的问题、处理速度变慢的问题,提出一种存储管理方法和系统,通过快速切换进程和把常用的程序锁定在高级缓存中,大减少进程执行过程中或共享过程中的开销,提高了CPU的处理速度,系统包括初始化单元310、映像单元330、内存320、处理单元350、高级数据缓存单元360、高级指令缓存单元370以及锁定单元380,初始化单元310将高级数据缓存单元360、高级指令缓存单元370的数据清除,为存入指令和数据做准备,映像单元330将磁盘中的应用程序文件映像到内存320中,使内存320映像文件与磁盘文件建立逐字节对应的关系,处理单元350是本专利技术中的映像文件管理系统的关键组成部分,它将内存320映像文件中常用的指令和数据对应的区域设置成可被高级缓存属性,确定可被高级缓存指令和数据在内存320中的地址,利用高级数据缓存单元360和高级指令缓存单元370进行缓存,高级数据缓存单元360、高级指令缓存单元370分别用于缓存数据和指令,锁定单元3本文档来自技高网...

【技术保护点】
一种多用户存储管理方法,适用于嵌入式的多用户系统内存(320)管理,该方法包括以下步骤:(A)处理单元(350)将磁盘应用程序文件映像到内存(320)中,确定内存(320)映像文件(340)中经常调用指令和数据的地址空间;(B)处理单元(350)将常用指令和数据地址空间的权限设为可以被高级缓存属性;及(C)锁定单元(380)分别锁定对上述常用指令进行缓存的高级指令缓存单元(370)和对上述常用数据进行缓存的高级数据缓存单元(360);所述处理单元(350)用于设定处理系统内存(320)中应用程序中的特定的地址空间的权限以及确定将要被锁定的指令或数据的地址空间;所述高级指令缓存单元(370)用于缓存将要被锁定的应用程序中的指令部分;所述高级数据缓存单元(360)用于缓存将要被锁定的应用程序中的数据部分。

【技术特征摘要】
1.一种多用户存储管理方法,适用于嵌入式的多用户系统内存(320)管理,该方法包括以下步骤:(A)处理单元(350)将磁盘应用程序文件映像到内存(320)中,确定内存(320)映像文件(340)中经常调用指令和数据的地址空间;(B)处理单元(350)将常用指令和数据地址空间的权限设为可以被高级缓存属性;及(C)锁定单元(380)分别锁定对上述常用指令进行缓存的高级指令缓存单元(370)和对上述常用数据进行缓存的高级数据缓存单元(360);所述处理单元(350)用于设定处理系统内存(320)中应用程序中的特定的地址空间的权限以及确定将要被锁定的指令或数据的地址空间;所述高级指令缓存单元(370)用于缓存将要被锁定的应用程序中的指令部分;所述高级数据缓存单元(360)用于缓存将要被锁定的应用程序中的数据部分。2.根据权利要求1所述的一种多用户存储管理方法,其特征在于,步骤(C)包括检查高级指令缓存单元(370)的步骤(C-1):处理单元(350)检查指令高级缓存是否过载,若过载,则经过异常处理后,结束锁定。3.根据权利要求1所述的一种一种多用户存储管理方法,其特征在于,步骤(C)还包括检查数据高级缓存的步骤(C-2):处理单元(350)检查数据高级缓存是否过载,若过载,则经过异常处理后,结束锁定。4.如权利要求1-3所述的一种多用户存储管理方法,其特征在于,所述高级指令缓存单元(370)用于对根据应用程序的存储地址将经常使用的指令进行缓存。5....

【专利技术属性】
技术研发人员:程仔卡李增光陈海洪程佶李宝科
申请(专利权)人:深圳市云海麒麟计算机系统有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1