CN102339243A - 内存存取控制方法 - Google Patents
内存存取控制方法 Download PDFInfo
- Publication number
- CN102339243A CN102339243A CN2010102379029A CN201010237902A CN102339243A CN 102339243 A CN102339243 A CN 102339243A CN 2010102379029 A CN2010102379029 A CN 2010102379029A CN 201010237902 A CN201010237902 A CN 201010237902A CN 102339243 A CN102339243 A CN 102339243A
- Authority
- CN
- China
- Prior art keywords
- storage location
- internal storage
- instruction
- access
- control method
- 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.)
- Pending
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种内存存取控制方法,包含下列步骤:A)执行与第一内存单元相关的特定程序;B)将步骤A)的执行结果储存至第二内存单元;C)拦截与该第一内存单元实体地址相关的存取指令,其中,该存取指令为写入指令或者读出指令;D)判断该存取指令是否用以存取该第一内存单元的启动内存区块;E)若步骤D)的判断为是,则判断该存取指令是否为该读出指令;F)若该存取指令为该读出指令,则回传步骤B)中储存于该第二内存单元的执行结果;及G)若该存取指令为该写入指令,则略过该写入指令。
Description
【技术领域】
本发明是关于一种内存存取控制技术,特别是指一种用于解决中断电(power lost)后造成无法正常开机(bootup)相关问题的内存存取控制法。
【背景技术】
一般而言,当电子装置正在执行其操作系统相关的程序时,如果过程中有中断电的情况发生,可能会造成电子装置下次开机时会有问题,更甚者,可能会造成电子装置下次无法开机。
举例来说,当电子装置所执行的某一操作系统相关的程序会影响到电子装置启动(bootstrap)内存区域的内容时,在此程序执行过程中若有中断电的情况发生,即可能影响启动内存区域的内容,造成启动加载程序(bootloader)被毁损或被抹除(erase),而使得电子装置下次无法正常开机。
有鉴于此,本发明针对上述问题,提供了一种内存存取控制方法,以解决电子装置在操作系统相关的程序执行过程中,有中断电发生而造成无法正常开机的相关问题。
【发明内容】
本发明的主要目的在于提供一种中断电不会影响正常开机的内存存取控制方法。
为达到上述目的,本发明的一种内存存取控制方法,实现于一电子装置,该电子装置包含处理器、第一内存单元,及第二内存单元,该方法利用所述处理器执行,并包含下列步骤:
A)执行与该第一内存单元相关的特定程序;
B)将步骤A)的执行结果储存至该第二内存单元;
C)拦截与该第一内存单元的实体地址相关的存取指令,其中,该存取指令为写入指令或者读出指令;
D)判断该存取指令是否用以存取该第一内存单元的启动内存区块;
E)若步骤D)的判断为是,则判断该存取指令是否为该读出指令;
F)若该存取指令为该读出指令,则回传步骤B)中储存于该第二内存单元的执行结果;
G)若该存取指令为该写入指令,则略过该写入指令。
与现有技术相比较,本发明的功效在于由拦截该存取指令,将存取数据重新导向,保留该启动内存区块的原始数据,以避免影响该电子装置开机所需数据。
【附图说明】
图1是一方块图,说明实现本发明内存存取控制方法的电子装置。
图2是一流程图,说明本发明内存存取控制方法的较佳实施例。
【具体实施方式】
请参阅图1、图2和图3,有关本发明的前述及其它技术内容、特点与功效,在以下配合参考图式的一个较佳实施例的详细说明中,将可清楚的呈现。
参阅图1与图2,本发明内存存取控制方法的较佳实施例,实现于一电子装置。该电子装置包含处理器1、与该处理器1连接第一内存单元2,及与该处理器1连接的第二内存单元3。该第一内存单元2包括数个区块,其中之一被规划为启动(bootstrap)内存区块21,该启动内存区块21具有一区块信息(blockinformation)储存区域211;该启动内存区块21储存有与该电子装置的开机程序相关的程序(例如,启动加载程序(bootloader))及信息;该区块信息储存区域211储存有与该第一内存单元2内所有区块的相关信息(如指示某一区块是否为一坏区块的信息(bad block information))。
其中,该第一内存单元2为三星(Samsung)的多阶储存单元(Multi-Level Flash Memory,简称MLC)闪存。该第二内存单元3为随机存取内存(Random-Access Memory,简称RAM)。
一般而言,当该电子装置的该处理器1正在执行某些程序时,会影响到该第一内存单元2的该启动内存区块21内储存的数据,在程序执行过程中若有中断电的情况发生,即可能影响该启动内存区块21的内容,而使得该电子装置下次无法正常开机。举例来说,MLC的一虚拟闪存层(Virtual Flash Layer,简称VFL)格式化(format)程序,会将区块的相关信息写到该第一内存单元2的第0区块的第124页(page),此程序执行过程中,必须将整个第0区块重新抹除,若此时发生中断电,则必然会造成该电子装置下次无法正常开机。
在本较佳实施例中,该内存存取控制方法的实施整合于该开机程序的一程序,当该电子装置的该处理器1加载该程序并执行后,可完成该内存存取控制方法。
本发明内存存取控制方法包含下列步骤。
如步骤S41所示,该处理器1执行与该第一内存单元2相关的特定程序。在本较佳实施例中,该特定程序用以检查该第一内存单元2的所有区块的相关信息,其执行结果为对应于该第一内存单元2内坏区块的信息;进一步来说,该第一内存单元2为MLC闪存,该特定程序用以检查该第一内存单元2的VFL的区块相关信息。
如步骤S42所示,该处理器1将步骤S41的执行结果暂存(cache)于该第二内存单元3。
如步骤S43所示,该处理器1拦截(intercept)与该第一内存单元2的实体位置(physical address)相关的一存取指令,其中,该存取指令为写入指令或读出指令。在本较佳实施例中,该处理器1是拦截该第一内存单元2的一闪存接口层(Flash Interface Layer,简称FIL)的该存取指令;进一步来说,该第一内存单元2为MLC闪存,该写入指令为FIL写入指令,该读出指令为FIL读出指令。
如步骤S44所示,该处理器1判断该存取指令是否用以存取该第一内存单元2的该启动内存区块21,若是,则继续进行步骤S46的处理,否则,继续进行步骤S45的处理。在本较佳实施例中,该处理器1是判断该存取指令是否用以存取该第一内存单元2的该启动内存区块21内的该区块信息储存区域211;进一步来说,该第一内存单元2为MLC闪存,该处理器1是判断该存取指令是否用以存取该第一内存单元2的第0区块的第124页。
如步骤S45所示,该处理器1进行对应该存取指令的正常存取操作,此正常存取操作与对于该第一内存单元2的存取操作方式相同,故不在此赘述。
如步骤S46所示,该处理器1判断该存取指令是否为该读出指令,若该存取指令为该读出指令,则继续进行步骤S47,若该存取指令为该写入指令,该处理器1略过该写入指令并直接回返(return),继续进行该开机程序的剩余处理。
如步骤S47所示,该处理器1回传步骤S42中暂存于该第二内存单元3的执行结果,即,对应于该第一内存单元2内坏区块的信息,以供该开机程序后续使用。
综上所述,由本发明内存存取控制方法,可将开机程序中与对应该第一内存单元2的该启动内存区块21的该存取指令相关的数据重新导向,保留该启动内存区块21的原始数据,以避免影响开机程序所需数据;而且,开机程序所需的部分数据可于开机时动态检测而得,举例来说,该第一内存单元2内区块的相关信息是利用该特定程序于开机时动态检测而得,就算区块的相关信息已被抹除或毁损,也不影响开机程序;故确实能达成本发明的目的。
以上所述仅为本发明的较佳实施例,不能以此限定本发明实施的范围,即依本发明权利要求书及发明说明内容所作的简单的等效变化与修饰,都仍属本发明专利涵盖的范围。
Claims (5)
1.一种内存存取控制方法,实现于一电子装置,该电子装置包含处理器、第一内存单元,及第二内存单元,该方法利用该处理器执行,其特征在于,所述内存存取控制方法包含下列步骤:
A)执行与该第一内存单元相关的特定程序;
B)将步骤A)的执行结果储存至该第二内存单元;
C)拦截与该第一内存单元的实体地址相关的存取指令,其中,该存取指令为写入指令或者读出指令;
D)判断该存取指令是否用以存取该第一内存单元的启动内存区块;
E)若步骤D)的判断为是,则判断该存取指令是否为该读出指令;
F)若该存取指令为该读出指令,则回传步骤B)中储存于该第二内存单元的执行结果;
G)若该存取指令为该写入指令,则略过该写入指令。
2.根据权利要求1所述的内存存取控制方法,其特征在于:在步骤A)中,该特定程序用以检查该第一内存单元的区块的相关信息,其执行结果为对应于该第一内存单元内坏区块的信息。
3.根据权利要求2所述的内存存取控制方法,其特征在于:在步骤A)中,该特定程序用以检查该第一内存单元的一虚拟闪存的区块相关信息。
4.根据权利要求1所述的内存存取控制方法,其特征在于:在步骤C)中,是拦截该第一内存单元的一闪存接口层的该存取指令。
5.根据权利要求1所述的内存存取控制方法,其特征在于:在步骤D)中,是判断该存取指令是否用以存取该第一内存单元的该启动内存区块内的一区块信息储存区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102379029A CN102339243A (zh) | 2010-07-28 | 2010-07-28 | 内存存取控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102379029A CN102339243A (zh) | 2010-07-28 | 2010-07-28 | 内存存取控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102339243A true CN102339243A (zh) | 2012-02-01 |
Family
ID=45514985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102379029A Pending CN102339243A (zh) | 2010-07-28 | 2010-07-28 | 内存存取控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102339243A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899512A (zh) * | 2015-05-26 | 2015-09-09 | 浪潮电子信息产业股份有限公司 | 一种Windows系统服务描述符表防篡改装置及方法 |
CN106650463A (zh) * | 2016-12-16 | 2017-05-10 | 郑州云海信息技术有限公司 | 防止windows系统服务描述表被篡改的系统和方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194607A (ja) * | 1998-12-24 | 2000-07-14 | Yamatake Corp | メモリ・バックアップ方法 |
CN1979450A (zh) * | 2005-12-05 | 2007-06-13 | 英业达股份有限公司 | 高速缓存数据回存方法 |
TWI308694B (en) * | 2005-12-13 | 2009-04-11 | Wistron Corp | Method of data protection for computers |
CN101477482A (zh) * | 2008-10-14 | 2009-07-08 | 深圳市共进电子有限公司 | 一种嵌入式Linux系统中的断电时恢复闪存数据的方法 |
CN101483050A (zh) * | 2008-01-10 | 2009-07-15 | 信亿科技股份有限公司 | 内存磁盘及其操作方法 |
-
2010
- 2010-07-28 CN CN2010102379029A patent/CN102339243A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194607A (ja) * | 1998-12-24 | 2000-07-14 | Yamatake Corp | メモリ・バックアップ方法 |
CN1979450A (zh) * | 2005-12-05 | 2007-06-13 | 英业达股份有限公司 | 高速缓存数据回存方法 |
TWI308694B (en) * | 2005-12-13 | 2009-04-11 | Wistron Corp | Method of data protection for computers |
CN101483050A (zh) * | 2008-01-10 | 2009-07-15 | 信亿科技股份有限公司 | 内存磁盘及其操作方法 |
CN101477482A (zh) * | 2008-10-14 | 2009-07-08 | 深圳市共进电子有限公司 | 一种嵌入式Linux系统中的断电时恢复闪存数据的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899512A (zh) * | 2015-05-26 | 2015-09-09 | 浪潮电子信息产业股份有限公司 | 一种Windows系统服务描述符表防篡改装置及方法 |
CN106650463A (zh) * | 2016-12-16 | 2017-05-10 | 郑州云海信息技术有限公司 | 防止windows系统服务描述表被篡改的系统和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10970226B2 (en) | Method for performing access management in a memory device, associated memory device and controller thereof, and associated electronic device | |
CN103164342B (zh) | 数据可用性的挂载时协调 | |
US8463826B2 (en) | Incremental garbage collection for non-volatile memories | |
US8205070B2 (en) | Device bootup from a NAND-type non-volatile memory | |
CN102855193B (zh) | 非易失性存储系统中未使用的逻辑地址的挂载时去映射 | |
US9927985B2 (en) | Method of dynamic table journaling | |
US7793036B2 (en) | Method and arrangements for utilizing NAND memory | |
US20120317377A1 (en) | Dual flash translation layer | |
KR102443600B1 (ko) | 하이브리드 메모리 시스템 | |
CN109388517A (zh) | 存储器控制器、包括存储器控制器的存储器系统和应用处理器 | |
US10552335B2 (en) | Method and electronic device for a mapping table in a solid-state memory | |
KR20100094241A (ko) | 예비 블록을 포함하지 않는 불휘발성 메모리 장치 | |
US20100174850A1 (en) | Data moving method and system utilizing the same | |
CN110297603A (zh) | 基于固态硬盘的随机写性能提升方法、装置和计算机设备 | |
CN103927130B (zh) | 基于内存管理单元mmu的统一内外存架构 | |
CN106095416A (zh) | 一种在应用程序中的跳转处理方法、装置及智能终端 | |
CN104021089A (zh) | 快闪存储器控制芯片与存储装置以及快闪存储器控制方法 | |
CN103955389A (zh) | 一种基于pcm的系统启动方法 | |
US20100115004A1 (en) | Backup system that stores boot data file of embedded system in different strorage sections and method thereof | |
US11550724B2 (en) | Method and system for logical to physical (L2P) mapping for data-storage device comprising nonvolatile memory | |
US8423730B2 (en) | Method and apparatus for supporting diverse memory access schemes | |
US9069480B2 (en) | Method of creating target storage layout table referenced for partitioning storage space of storage device and related electronic device and machine-readable medium | |
CN102339243A (zh) | 内存存取控制方法 | |
US20140181379A1 (en) | File Reading Method, Storage Device And Electronic Device | |
CN114138176A (zh) | Nor Flash的擦除、升级方法及装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120201 |