CN104679578B - BD-java平台上的最小内存自适应机制及使用方法 - Google Patents
BD-java平台上的最小内存自适应机制及使用方法 Download PDFInfo
- Publication number
- CN104679578B CN104679578B CN201510108075.6A CN201510108075A CN104679578B CN 104679578 B CN104679578 B CN 104679578B CN 201510108075 A CN201510108075 A CN 201510108075A CN 104679578 B CN104679578 B CN 104679578B
- Authority
- CN
- China
- Prior art keywords
- file
- audio
- virtual
- font
- java
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明属于计算机软件技术领域,提供了BD‑java平台上的最小内存自适应机制及使用方法,包括:由BD‑java模块和虚拟文件系统组成的BD‑java平台,BD‑java模块由应用程序缓存管理器、音频缓存管理器、字体管理器组成,BD‑java模块与虚拟文件系统相连接;虚拟设备包括音频临时存储模块、字体临时存储模块、解压缩zip文件临时存储模块,虚拟文件系统将来自于BD‑java模块的音频、字体和文件缓存信息传递给对应的音频临时存储模块、字体临时存储模块和解压缩zip文件临时存储模块对客户端临时信息进行存储。本发明具有同时满足内存,性能和BD规范,能够应用到256M BD‑java平台的优点。
Description
技术领域
本发明属于计算机软件技术领域,特别涉及一种BD-java平台上的最小内存自适应机制及使用方法。
背景技术
从2002年发布BD规范1.0版开始,各生产厂家都以软件的要求来设计硬件的性能,导致几乎所有的厂商生产出来的硬件规格都偏高,成本也比市场预期的高。随着更多的生产厂家加入,蓝光播放器市场竞争的加剧,减少成本、增加生存空间是各厂家追求的目标。在这过程中降低硬件配置是其中重要的一环,就系统内存空间而言,主流趋势仍然是512M和384M的BD-java平台,所以减少内存的使用能直接减低成本。但是对于不同硬件平台,例如:PC机和BD播放器,硬件性能、内存缓冲大小相差很大,造成不同平台对软件的需求、性能和功能要求不一样,造成不同平台下的BD-Java平台差异很大,兼容性差。
传统技术一般存在如下问题:针对硬件平台差异大,性能需求也不同,BD-Java平台的设计很难做到一步到位,虽然减少内存的方法很多,实现方法也多种多样,但到目前为止没有一种通用技术能够兼用BD规范、性能和内存得以使用。一般采用的方法都是减少功能、牺牲性能,不能灵活实现动态内存的分配和调度,而在BD中的Java平台,其规范中牵涉的功能多、内存使用量大、调度复杂,很难在保持一定的性能时降低内存。
目前市场上的BD-Java平台很难运行在256M内存下的BD播放器上,性能也受到诸多限制,运行在256M播放器平台上的BD-Java平台也很难简单直接的移植到计算机平台上。
因此,计算机软件技术领域急需一种同时满足内存,性能和BD规范,能够应用到256M内存下BD播放器上的BD-Java平台。
发明内容
本发明提供了一种BD-java平台上的最小内存自适应机制及使用方法,技术方案如下:
BD-java平台上的最小内存自适应机制的使用方法,自适应机制包括:BD-java平台和虚拟设备,BD-java平台与虚拟设备电连接;
BD-java平台,包括BD-java模块和虚拟文件系统,BD-java模块由应用程序缓存管理器、音频缓存管理器、字体管理器组成,BD-java模块与虚拟文件系统相连接;
虚拟设备,包括音频临时存储模块、字体临时存储模块、解压缩zip文件临时存储模块,虚拟文件系统将来自于BD-java模块的音频、字体和文件缓存信息传递给对应的音频临时存储模块、字体临时存储模块和解压缩zip文件临时存储模块对客户端临时信息进行存储;
BD-java平台上的最小内存自适应机制的使用方法,包括如下步骤:
步骤一,BD-java模块读取文件,应用程序缓存管理器查找虚拟文件系统内部的文件映射表,对读取的文件是否存在进行判定,如果存在,则音频缓存管理器、字体管理器直接读取读取文件,进而执行步骤六,如果不存在,则执行步骤二;
步骤二,读取文件为新的不在内存中的文件,音频缓存管理器、字体管理器将会加载整个文件包所包含的资源文件,读取光盘文件;
步骤三,虚拟文件系统对读取的文件进行处理,判断读取文件的内存是否大于应用程序缓存管理器的剩余内存量,如果大于则遍历应用程序缓存管理器的历史使用记录,将虚拟文件系统内的文件移除到硬盘内,同时在虚拟文件系统内建立文件映射表,释放虚拟文件系统内存,进而执行步骤四,反之直接执行步骤四;
步骤四,虚拟文件系统将读取的文件传递给虚拟设备中的音频临时存储模块、字体临时存储模块,同时虚拟文件系统对读取的文件进行压缩;
步骤五,应用缓存管理器判定压缩后的文件是否大于虚拟设备中解压缩zip文件临时存储模块的最大阈值,如果大于,则虚拟文件系统读取并解压文件到硬盘,同时在虚拟文件系统内建立文件映射表,进而执行步骤六,反之,解压缩zip文件临时存储模块直接对压缩后的文件进行解压、读取,并且将建立文件映射表;
步骤六,返回应用缓存管理器,继续处理其他的光盘文件。
优选的,在BD-java平台上的最小内存自适应机制的使用方法中,步骤四中,虚拟文件系统将读取文件传递给虚拟设备中的音频临时存储模块同时对读取的文件进行压缩的具体步骤为:
BD-java平台内的应用程序缓存管理器命令音频缓存管理器对音频文件进行读取,音频缓存管理器通过java媒体框架播放器对BD碟或者文件包中的音频文件进行加载,加载的音频文件以音频数据的形式缓存在音频缓存管理器中,然后音频助手将缓存在音频缓存管理器内的音频数据传递给虚拟设备中的音频临时存储模块内,虚拟设备将根据当前的内存和硬盘空间决定如何加载;
优选的,在BD-java平台上的最小内存自适应机制的使用方法中,步骤四中,虚拟文件系统将读取文件传递给虚拟设备中的字体临时存储模块同时对读取的文件进行压缩的具体步骤为:
应用程序加载显示界面时,需要用新的字体显示,则创建新的字体,字体缓存管理器将从虚拟设备的字体临时存储模块上直接加载对应的字体,同时字体缓存管理器将负责创建和存储新的字体。
优选的,在BD-java平台上的最小内存自适应机制的使用方法中,应用程序缓存管理器能够同时加载多个音频文件进行播放。
本发明的有益效果:
本发明通过应用缓存管理器对读取的文件内存和压缩文件内存进行判定与内存剩余量进行判定,能够即时的将文件转移到播放设备的硬盘中,并且释放内存,能够保证处于256M低内存的BD-java平台始终处于工作状态,满足性能稳定和BD规范的要求,兼容性强。
附图说明
下面结合附图和具体实施方式来详细说明本发明:
图1为BD-java平台上的最小内存自适应机制的结构框图。
图2为BD-java平台上的最小内存自适应机制的使用方法的流程图。
具体实施方式
为了使本发明技术实现的措施、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
图1为BD-java平台上的最小内存自适应机制的结构框图。
本发明提供了一种BD-java平台上的最小内存自适应机制,包括:BD-java平台和虚拟设备,BD-java平台与虚拟设备电连接;BD-java平台1,包括BD-java模块11和虚拟文件系统12,BD-java模块11由应用程序缓存管理器111、音频缓存管理器112、字体管理器113组成,BD-java模块11与虚拟文件系统12相连接;虚拟设备2,包括音频临时存储模块21、字体临时存储模块22、解压缩zip文件临时存储模块23,虚拟文件系统12将来自于BD-java模块11的音频、字体和文件缓存信息传递给对应的音频临时存储模块21、字体临时存储模块22和解压缩zip文件临时存储模块23对客户端临时信息进行存储。
图2为BD-java平台上的最小内存自适应机制的使用方法的流程图,BD-java平台上的最小内存自适应机制的使用方法,包括如下步骤:
步骤一,BD-java模块读取文件,应用程序缓存管理器查找虚拟文件系统内部的文件映射表,对读取的文件是否存在进行判定,如果存在,则音频缓存管理器、字体管理器直接读取读取文件,进而执行步骤六,如果不存在,则执行步骤二;
步骤二,读取文件为新的不在内存中的文件,音频缓存管理器、字体管理器将会加载整个文件包所包含的资源文件,读取光盘文件;
步骤三,虚拟文件系统对读取的文件进行处理,判断读取文件的内存是否大于应用程序缓存管理器的剩余内存量,如果大于则遍历应用程序缓存管理器的历史使用记录,将虚拟文件系统内的文件移除到硬盘内,同时在虚拟文件系统内建立文件映射表,释放虚拟文件系统内存,进而执行步骤四,反之直接执行步骤四;
步骤四,虚拟文件系统将读取的文件传递给虚拟设备中的音频临时存储模块、字体临时存储模块,同时虚拟文件系统对读取的文件进行压缩;
音频缓存管理器读取应用缓存管理器的文件,具体步骤为:BD-java平台内的应用程序缓存管理器命令音频缓存管理器对音频文件进行读取,音频缓存管理器通过java媒体框架播放器对BD碟或者文件包中的音频文件进行加载,加载的音频文件以音频数据的形式缓存在音频缓存管理器中,然后音频助手将缓存在音频缓存管理器内的音频数据通过虚拟文件系统传递给虚拟设备中的音频临时存储模块内,虚拟设备将根据当前的内存和硬盘空间决定如何加载;
字体缓存管理器读取应用缓存管理器的文件,具体步骤为:应用程序加载显示界面时,需要用新的字体显示,则创建新的字体,字体缓存管理器将从虚拟设备的字体临时存储模块上直接加载对应的字体,同时字体缓存管理器将负责创建和存储新的字体;
步骤五,应用缓存管理器判定压缩后的文件是否大于虚拟设备中解压缩zip文件临时存储模块的最大阈值,如果大于,则虚拟文件系统读取并解压文件到硬盘,同时在虚拟文件系统内建立文件映射表,进而执行步骤六,反之,解压缩zip文件临时存储模块直接对压缩后的文件进行解压、读取,并且将建立文件映射表;
步骤六,返回应用缓存管理器,继续处理其他的光盘文件。
优选的,在本实施例中,应用程序缓存管理器能够同时加载多个音频文件进行播放。
本发明通过应用缓存管理器对读取的文件内存和压缩文件内存进行判定与内存剩余量进行判定,能够即时的将文件转移到播放设备的硬盘中,并且释放内存,能够保证处于256M低内存的BD-java平台始终处于工作状态,满足性能稳定和BD规范的要求,兼容性强。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等同物界定。
Claims (4)
1.BD-java平台上的最小内存自适应机制的使用方法,其特征在于,
自适应机制包括:BD-java平台和虚拟设备,BD-java平台与虚拟设备电连接;
BD-java平台,包括BD-java模块和虚拟文件系统,BD-java模块由应用程序缓存管理器、音频缓存管理器、字体管理器组成,BD-java模块与虚拟文件系统相连接;
虚拟设备,包括音频临时存储模块、字体临时存储模块、解压缩zip文件临时存储模块,虚拟文件系统将来自于BD-java模块的音频、字体和文件缓存信息传递给对应的音频临时存储模块、字体临时存储模块和解压缩zip文件临时存储模块对客户端临时信息进行存储;该BD-java平台上的最小内存自适应机制的使用方法,包括如下步骤:
步骤一,BD-java模块读取文件,应用程序缓存管理器查找虚拟文件系统内部的文件映射表,对读取的文件是否存在进行判定,如果存在,则音频缓存管理器、字体管理器直接读取读取文件,进而执行步骤六,如果不存在,则执行步骤二;
所述步骤二,读取文件为新的不在内存中的文件,音频缓存管理器、字体管理器将会加载整个文件包所包含的资源文件,读取光盘文件;
步骤三,虚拟文件系统对读取的文件进行处理,判断读取文件的内存是否大于应用程序缓存管理器的剩余内存量,如果大于则遍历应用程序缓存管理器的历史使用记录,将虚拟文件系统内的文件移除到硬盘内,同时在虚拟文件系统内建立文件映射表,释放虚拟文件系统内存,进而执行步骤四,反之直接执行步骤四;
所述步骤四,虚拟文件系统将读取的文件传递给虚拟设备中的音频临时存储模块、字体临时存储模块,同时虚拟文件系统对读取的文件进行压缩;
步骤五,应用缓存管理器判定压缩后的文件是否大于虚拟设备中解压缩zip文件临时存储模块的最大阈值,如果大于,则虚拟文件系统读取并解压文件到硬盘,同时在虚拟文件系统内建立文件映射表,进而执行步骤六,反之,解压缩zip文件临时存储模块直接对压缩后的文件进行解压、读取,并且将建立文件映射表;
所述步骤六,返回应用缓存管理器,继续处理其他的光盘文件。
2.根据权利要求1的BD-java平台上的最小内存自适应机制的使用方法,其特征在于,所述步骤四中,虚拟文件系统将读取文件传递给虚拟设备中的音频临时存储模块同时对读取的文件进行压缩的具体步骤为:
BD-java平台内的应用程序缓存管理器命令音频缓存管理器对音频文件进行读取,音频缓存管理器通过java媒体框架播放器对硬盘文件或者文件包中的音频文件进行加载,加载的音频文件以音频数据的形式缓存在音频缓存管理器中,然后音频助手将缓存在音频缓存管理器内的音频数据通过虚拟文件系统传递给虚拟设备中的音频临时存储模块内,虚拟设备将根据当前的内存和硬盘空间决定加载模式。
3.根据权利要求1的BD-java平台上的最小内存自适应机制的使用方法,其特征在于,所述步骤四中,虚拟文件系统将读取文件传递给虚拟设备中的字体临时存储模块同时对读取的文件进行压缩的具体步骤为:
应用缓存处理器加载显示界面时,需要用新的字体显示,则创建新的字体,字体缓存管理器将从虚拟设备的字体临时存储模块上直接加载对应的字体,同时字体缓存管理器将负责创建和存储新的字体。
4.根据权利要求1的BD-java平台上的最小内存自适应机制的使用方法,其特征在于,所述步骤一中的应用程序缓存管理器能够同时加载多个音频文件进行播放。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510108075.6A CN104679578B (zh) | 2015-03-12 | 2015-03-12 | BD-java平台上的最小内存自适应机制及使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510108075.6A CN104679578B (zh) | 2015-03-12 | 2015-03-12 | BD-java平台上的最小内存自适应机制及使用方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104679578A CN104679578A (zh) | 2015-06-03 |
CN104679578B true CN104679578B (zh) | 2018-09-07 |
Family
ID=53314674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510108075.6A Active CN104679578B (zh) | 2015-03-12 | 2015-03-12 | BD-java平台上的最小内存自适应机制及使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104679578B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106231347B (zh) * | 2016-08-16 | 2019-06-25 | Oppo广东移动通信有限公司 | 一种播放列表传输方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1675119A1 (en) * | 2003-10-10 | 2006-06-28 | Matsushita Electric Industrial Co., Ltd. | Reproduction device, program, and reproduction method |
CN1867987A (zh) * | 2003-10-10 | 2006-11-22 | 松下电器产业株式会社 | 再现装置、程序、再现方法 |
CN101019106A (zh) * | 2005-02-14 | 2007-08-15 | 松下电器产业株式会社 | 应用程序执行装置、管理方法和程序 |
CN101589369A (zh) * | 2007-03-02 | 2009-11-25 | 松下电器产业株式会社 | 再生装置、系统lsi、初始化方法 |
CN101656092A (zh) * | 2003-11-10 | 2010-02-24 | 松下电器产业株式会社 | 记录介质,播放装置,程序,播放方法,系统集成电路 |
-
2015
- 2015-03-12 CN CN201510108075.6A patent/CN104679578B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1675119A1 (en) * | 2003-10-10 | 2006-06-28 | Matsushita Electric Industrial Co., Ltd. | Reproduction device, program, and reproduction method |
CN1867987A (zh) * | 2003-10-10 | 2006-11-22 | 松下电器产业株式会社 | 再现装置、程序、再现方法 |
CN101656092A (zh) * | 2003-11-10 | 2010-02-24 | 松下电器产业株式会社 | 记录介质,播放装置,程序,播放方法,系统集成电路 |
CN101019106A (zh) * | 2005-02-14 | 2007-08-15 | 松下电器产业株式会社 | 应用程序执行装置、管理方法和程序 |
CN101589369A (zh) * | 2007-03-02 | 2009-11-25 | 松下电器产业株式会社 | 再生装置、系统lsi、初始化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104679578A (zh) | 2015-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8639909B2 (en) | Management of low-paging space conditions in an operating system | |
KR102584018B1 (ko) | 압축된 데이터 백그라운드를 캐싱하는 장치, 시스템 및 방법 | |
CN102047305B (zh) | 文件输入/输出调度器及其处理方法 | |
US9058112B2 (en) | Retrieving data in a storage system using thin provisioning | |
CN103136243B (zh) | 基于云存储的文件系统去重方法及装置 | |
KR101188472B1 (ko) | 데이터 즉시 청킹을 사용하여 파일 입출력을 스케줄 하는 방법 | |
US20110302365A1 (en) | Storage system using a rapid storage device as a cache | |
CN108647151A (zh) | 一种全闪系统元数据落盘方法、装置、设备及存储介质 | |
CN108052643B (zh) | 基于LSM Tree结构的数据存储方法、装置及存储引擎 | |
US20160092361A1 (en) | Caching technologies employing data compression | |
US11151155B2 (en) | Memory use in a distributed index and query system | |
CN103412884B (zh) | 一种异构存储介质下嵌入式数据库的管理方法 | |
US10116329B1 (en) | Method and system for compression based tiering | |
CN105426472A (zh) | 分布式计算系统及其数据处理方法 | |
US10649967B2 (en) | Memory object pool use in a distributed index and query system | |
US10482021B2 (en) | Priority-based storage and access of compressed memory lines in memory in a processor-based system | |
US20240289389A1 (en) | Graph data loading | |
US10803018B2 (en) | Compressed data rearrangement to optimize file compression | |
US20210124517A1 (en) | Method, device and computer program product for storing data | |
CN100580669C (zh) | 在Flash存储介质上的关于文件分配表的缓存实现方法 | |
CN104239231A (zh) | 一种加速二级缓存预热的方法及装置 | |
CN104679578B (zh) | BD-java平台上的最小内存自适应机制及使用方法 | |
CN103617039B (zh) | 一种访问用户空间文件系统的方法及装置 | |
CN102360381B (zh) | 一种对嵌入式程序进行无损压制的装置和方法 | |
CN107220069A (zh) | 一种针对非易失性内存的Shuffle方法 |
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 |