CN104717557B - 一种基于机顶盒读取Flash数据的方法 - Google Patents
一种基于机顶盒读取Flash数据的方法 Download PDFInfo
- Publication number
- CN104717557B CN104717557B CN201410681181.9A CN201410681181A CN104717557B CN 104717557 B CN104717557 B CN 104717557B CN 201410681181 A CN201410681181 A CN 201410681181A CN 104717557 B CN104717557 B CN 104717557B
- Authority
- CN
- China
- Prior art keywords
- flash
- file system
- data
- filesystem
- address
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4437—Implementing a Virtual Machine [VM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Read Only Memory (AREA)
Abstract
本发明属于机顶盒技术领域,尤其是涉及一种基于机顶盒读取FLASH数据的方法。本发明的目的在于:为解决现有技术存在的问题,提供一种基于机顶盒读取FLASH数据的方法,通过将FLASH文件系统区域数据复制到内存文件系统区域中,对内存文件系统区域数据进行读取操作,极大的提高机顶盒读取Flash的速度,从而提高了机顶盒的运行速度和启动速度。本发明包括步骤:当机顶盒首次启动时,将Flash文件系统的数据,按block块依次写入内存文件系统;每当用户修改数据时,先修改内存文件系统中的数据,然后再将内存文件系统中修改的数据,写到Flash文件系统;每次用户读取数据时,直接从内存文件系统读取相应的数据。
Description
技术领域
本发明属于机顶盒技术领域,尤其是涉及一种基于机顶盒读取FLASH数据的方法。
背景技术
随着数字电视产业的蓬勃发展,国内市场数字电视已经达到了饱和状态,海外市场,尤其是贫穷国家市场,成为数字电视的最重要市场。然而,这些市场,对成本要求非常高,因此机顶盒的Flash、内存等配置会非常低。因此,机顶盒软件启动速度以及机顶盒软件运行速度都会非常慢。不满足客户对数据传输速度的要求。
发明内容
本发明的目的在于:为解决现有技术存在的问题,提供一种基于机顶盒读取FLASH数据的方法,通过将FLASH文件系统区域数据复制到内存文件系统区域中,对内存文件系统区域数据进行读取操作,极大的提高机顶盒读取Flash的速度,从而提高了机顶盒的运行速度和启动速度。
本发明目的通过下述技术方案来实现:
一种基于机顶盒读取Flash数据的方法包括:
步骤1:机顶盒在Flash中设置连续的区域作为Flash文件系统,同时在内存中申请连续的区域作为内存文件系统;
步骤2:当机顶盒首次启动时,将Flash文件系统的数据,按block块依次写入内存文件系统,即建立Flash文件系统的数据与内存文件系统的数据之间的映射;
步骤3:每当用户修改Flash文件系统的数据时,先修改内存文件系统中的数据,然后再将内存文件系统中修改的数据,写到Flash文件系统;
步骤4:每次用户读取Flash文件系统的数据时,直接从内存文件系统读取相应的数据;
其中所述Flash文件系统中Block块数量为NUM_OF_BLOCKS_FILESYSTEM, Flash文件系统中block块的地址为:
Flash_FileSystem.start_address+Flash_FileSystem.block_size*X,其中X大于等于0到(NUM_OF_BLOCKS_FILESYSTEM-1)的整数,Flash文件系统中每个block块大小分别Flash_FileSystem.block_size;所述内存文件系统首地址为FlashRamBaseAdd,内存文件系统的大小为block_size* NUM_OF_BLOCKS_FILESYSTEM,内存文件系统的地址范围是:FlashRamBaseAdd到FlashRamBaseAdd+block_size* NUM_OF_BLOCKS_FILESYSTEM。
所述步骤2具体过程是:
步骤21:依次读取Flash文件系统中每个Block块的数据,每次读取后将数据写入内存文件系统中,每次写入的地址为FlashRamBaseAdd+N*Flash_FileSystem.block_size,其中N表示写入的次数;
步骤22:将Flash文件系统所占用的NUM_OF_BLOCKS_FILESYSTEM个Block块的数据读取到内存文件系统中。
进一步的,所述步骤3具体过程是:
步骤31:用户修改Flash文件系统的数据包括用户写数据和删除数据;
步骤32:当用户写数据时,根据要写入Flash文件系统的数据地址Flash_FileSystem.addr,计算出写地址偏移量Flash_FileSystem.Addr- Flash_FileSystem.start_address;根据写地址偏移量将要写入Flash文件系统的数据,写入到内存文件系统对应的地址FlashRamBaseAdd+(Flash_FileSystem.Addr- Flash_FileSystem.start_address),然后再将内存文件系统中修改的数据,同步到Flash文件系统中;
步骤33:当用户删除数据时,根据要删除Flash文件系统的数据地址Flash_FileSystem.addr1,计算出删除地址偏移量Flash_FileSystem.Addr1- Flash_FileSystem.start_address;根据删除地址偏移量将FF写入到内存文件系统对应的地址FlashRamBaseAdd+(Flash_FileSystem.Addr1- Flash_FileSystem.start_address),然后再将内存文件系统中修改为FF的数据,同步到Flash文件系统中。
本发明的有益效果:机顶盒应用程序在低性能配置的Flash(如价格便宜的串行Flash等)情况下,准确率高,速度快。传统读物理Flash数据方式速度慢、对Flash有一定损害等特征可以得到有效改善。
附图说明
图1是本发明流程图。
具体实施方式
下列非限制性实施例用于说明本发明。
原理:FLASH文件系统读写速度慢,内存(RAM)文件系统读写速度快。因此本设计的做法是:将FLASH文件系统的数据映射到内存文件系统中,直接对内存文件系统进行写数据或者读取数据。当内存文件系统数据有变化时,将内存文件系统数据同步到FLASH文件系统中。
实施例一: 参考图1所示,一种基于机顶盒读取Flash数据的方法包括:
步骤1:机顶盒在Flash中设置连续的区域作为Flash文件系统,同时在内存中申请连续的区域作为内存文件系统;
步骤2:当机顶盒首次启动时,依次读取Flash文件系统中每个Block的数据,每次读取后将数据写入内存文件系统中,每次写入的地址为FlashRamBaseAdd+N*flash_FileSystem.block_size,其中N表示写入的次数;然后将Flash文件系统所占用的NUM_OF_BLOCKS_FILESYSTEM个Block块的数据读取到内存文件系统中;
步骤3:每当用户修改Flash文件系统的数据时,先修改内存文件系统中的数据,然后再将内存文件系统中修改的数据,写到Flash文件系统;
步骤4:每次用户读取Flash文件系统的数据时,直接从内存文件系统读取相应的数据;
其中所述Flash文件系统中Block块数量为NUM_OF_BLOCKS_FILESYSTEM, Flash文件系统中block块的地址为:
Flash_FileSystem.start_address+Flash_FileSystem.block_size*X,其中X大于等于0到(NUM_OF_BLOCKS_FILESYSTEM-1)的整数,Flash文件系统中每个block块大小分别Flash_FileSystem.block_size;所述内存文件系统首地址为FlashRamBaseAdd,内存文件系统的大小为block_size* NUM_OF_BLOCKS_FILESYSTEM,内存文件系统的地址范围是:FlashRamBaseAdd到FlashRamBaseAdd+block_size* NUM_OF_BLOCKS_FILESYSTEM。
实施例二,在实施例一基础上,所述步骤3具体过程为:
步骤31:用户修改FLASH文件系统的数据包括用户写数据和删除数据;
步骤32:当用户写数据时,根据要写入FLASH文件系统的数据地址Flash_FileSystem.addr,计算出写地址偏移量Flash_FileSystem.Addr- flash_FileSystem.start_address;根据写地址偏移量将要写入FLASH文件系统的数据,写入到内存文件系统对应的地址FlashRamBaseAdd+(Flash_FileSystem.Addr- flash_FileSystem.start_address),然后再将内存文件系统中修改的数据,同步到FLASH文件系统中;
步骤33:当用户删除数据时,根据要删除FLASH文件系统的数据地址Flash_FileSystem.addr1,计算出删除地址偏移量Flash_FileSystem.Addr1- flash_FileSystem.start_address;根据删除地址偏移量将FF写入到内存文件系统对应的地址FlashRamBaseAdd+(Flash_FileSystem.Addr1- flash_FileSystem.start_address),然后再将内存文件系统中修改为FF的数据,同步到FLASH文件系统中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (2)
1.一种基于机顶盒读取Flash数据的方法,其特征在于包括:
步骤1:机顶盒在Flash中设置连续的区域作为Flash文件系统,同时在内存中申请连续的区域作为内存文件系统;
步骤2:当机顶盒首次启动时,依次读取Flash文件系统中每个Block块的数据,每次读取后将数据写入内存文件系统中,每次写入的地址为FlashRamBaseAdd+N*Flash_FileSystem.block_size,将Flash文件系统所占用的NUM_OF_BLOCKS_FILESYSTEM个Block块的数据读取到内存文件系统中,即建立Flash文件系统的数据与内存文件系统的数据之间的映射;其中N表示写入的次数;
步骤3:每当用户修改Flash文件系统的数据时,先修改内存文件系统中的数据,然后再将内存文件系统中修改的数据,写到Flash文件系统;其中,当用户写数据时,根据要写入Flash文件系统的数据地址Flash_FileSystem.addr,计算出写地址偏移量Flash_FileSystem.Addr- Flash_FileSystem.start_address;根据写地址偏移量将要写入Flash文件系统的数据,写入到内存文件系统对应的地址FlashRamBaseAdd+(Flash_FileSystem.Addr- Flash_FileSystem.start_address),然后再将内存文件系统中修改的数据,同步到Flash文件系统中;用户修改Flash文件系统的数据包括用户写数据和删除数据;
步骤4:每次用户读取Flash文件系统的数据时,直接从内存文件系统读取相应的数据;
其中所述Flash文件系统中Block块数量为NUM_OF_BLOCKS_FILESYSTEM, Flash文件系统中block块的地址为Flash_FileSystem.start_address+Flash_FileSystem.block_size*X, X为大于等于0,且小于NUM_OF_BLOCKS_FILESYSTEM-1的整数,Flash文件系统中每个block块大小分别Flash_FileSystem.block_size;所述内存文件系统首地址为FlashRamBaseAdd,内存文件系统的大小为Flash_FileSystem.block_size* NUM_OF_BLOCKS_FILESYSTEM,内存文件系统的地址范围是:
FlashRamBaseAdd到
FlashRamBaseAdd+ Flash_FileSystem.block_size* NUM_OF_BLOCKS_FILESYSTEM。
2.如权利要求1所述的一种基于机顶盒读取Flash数据的方法,其特征在于所述步骤3还包括:当用户删除数据时,根据要删除Flash文件系统的数据地址Flash_FileSystem.addr1,计算出删除地址偏移量Flash_FileSystem.Addr1- Flash_FileSystem.start_address;根据删除地址偏移量将FF写入到内存文件系统对应的地址FlashRamBaseAdd+(Flash_FileSystem.Addr1- Flash_FileSystem.start_address),然后再将内存文件系统中修改为FF的数据,同步到Flash文件系统中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410681181.9A CN104717557B (zh) | 2014-11-25 | 2014-11-25 | 一种基于机顶盒读取Flash数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410681181.9A CN104717557B (zh) | 2014-11-25 | 2014-11-25 | 一种基于机顶盒读取Flash数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104717557A CN104717557A (zh) | 2015-06-17 |
CN104717557B true CN104717557B (zh) | 2018-09-14 |
Family
ID=53416436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410681181.9A Expired - Fee Related CN104717557B (zh) | 2014-11-25 | 2014-11-25 | 一种基于机顶盒读取Flash数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104717557B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105739926A (zh) * | 2016-01-29 | 2016-07-06 | 四川长虹电器股份有限公司 | 提高机顶盒启动速度并延长Flash使用寿命的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040078512A1 (en) * | 1993-03-11 | 2004-04-22 | Kunihiro Katayama | File memory device and information processing apparatus using the same |
EP1712984A1 (en) * | 2005-04-15 | 2006-10-18 | Deutsche Thomson-Brandt Gmbh | Method and system for accessing logical data blocks in a storage system that includes multiple memories which are connected to at least one common bus |
CN101458662A (zh) * | 2007-12-14 | 2009-06-17 | 创惟科技股份有限公司 | 改进闪存存取效率的存储系统与方法 |
CN101625647A (zh) * | 2009-08-06 | 2010-01-13 | 青岛海信电器股份有限公司 | 加快嵌入式软件系统启动速度的方法 |
-
2014
- 2014-11-25 CN CN201410681181.9A patent/CN104717557B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040078512A1 (en) * | 1993-03-11 | 2004-04-22 | Kunihiro Katayama | File memory device and information processing apparatus using the same |
EP1712984A1 (en) * | 2005-04-15 | 2006-10-18 | Deutsche Thomson-Brandt Gmbh | Method and system for accessing logical data blocks in a storage system that includes multiple memories which are connected to at least one common bus |
CN101458662A (zh) * | 2007-12-14 | 2009-06-17 | 创惟科技股份有限公司 | 改进闪存存取效率的存储系统与方法 |
CN101625647A (zh) * | 2009-08-06 | 2010-01-13 | 青岛海信电器股份有限公司 | 加快嵌入式软件系统启动速度的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104717557A (zh) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101994021B1 (ko) | 파일 조작 방법 및 장치 | |
TWI510923B (zh) | 資料儲存裝置以及快閃記憶體控制方法 | |
CN102760118B (zh) | 一种将数据导出为Excel文件的方法及装置 | |
CN105183839A (zh) | 一种基于Hadoop的小文件分级索引的存储优化方法 | |
US10725686B2 (en) | Write stream separation into multiple partitions | |
US20150227424A1 (en) | Data storage device and data checking and correction for volatile memory | |
WO2017107948A1 (zh) | 文件的写聚合、读聚合方法及系统和客户端 | |
CN103593226A (zh) | 一种提高虚拟机磁盘io性能的方法 | |
CN105393228A (zh) | 读写闪存中数据的方法、装置及用户设备 | |
CN105446975A (zh) | 一种文件打包方法及装置 | |
CN104503955A (zh) | 一种生成个性化excel表单据的方法 | |
CN108037725A (zh) | 一种读写plc数据的方法和装置 | |
CN105653209A (zh) | 一种对象存储数据传输方法及装置 | |
CN104717557B (zh) | 一种基于机顶盒读取Flash数据的方法 | |
CN104536816A (zh) | 提高虚拟机迁移效率的方法 | |
US9904622B2 (en) | Control method for non-volatile memory and associated computer system | |
CN105045539B (zh) | 数据离线存储的控制方法和装置 | |
US9183128B2 (en) | Device controller for a memory device | |
CN111078384A (zh) | 核心数据迁移的方法、装置、计算机设备及存储介质 | |
CN104252415B (zh) | 一种重新分布数据的方法和系统 | |
CN104731980A (zh) | 一种针对缓存页面的页面管理方法及装置 | |
CN105260264A (zh) | 一种快照实现方法及快照系统 | |
CN104239248A (zh) | Pci-e多缓冲区dma数据传输方法 | |
CN106202262A (zh) | 一种信息处理方法及电子设备 | |
US20140289484A1 (en) | Portable apparatus using multi-core storage mechanism and data access method therefor |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180914 Termination date: 20201125 |