闪存及其程序规划和重复烧录的方法技术

技术编号:3085946 阅读:170 留言:0更新日期:2012-04-11 18:40
一种闪存及其程序规划和重复烧录的方法,是用来将修改过的应用程序经编译后,烧录在一规划过的闪存。闪存包含一固定程序区块,是包含烧录完整且不需再修改的程序;一应用程序区块,是包含可修改或变更的应用程序;以及,一回呼函数进入点区块,包含一回呼函数进入点矩阵。进入点矩阵记录在应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值。重复烧录时,只需烧录该回呼函数进入点区块和该应用程序区块的程序代码。故可提升烧录的效率,且减少维护程序的时间。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术是关于一种,尤指一种闪存及在闪存规划出程序进入点矩阵后再在闪存中重复烧录程序的方法。随着MMI(人机接口)应用及需求的日益广泛,软件的复杂度及长度也随着增加,尤其是软件的分工及整合更是明确,对一位软件工程师来说,某一部分程序修改后,必须经由编译器将所有程序重新再编译,因此新的程序代码往往都是牵一发而动全身。如附图说明图1所示,一个完整的手机软件,是从上层的应用程序(如MMI应用程序)到下层部分固定程序(如驱动程序、通讯协议程序、操作系统、字型、图文件、影像文件等)所分工完成的,当工程师修改部分应用程序时,其大部分固定程序往往是不需要变动或更改,惟有两者间需要联系时,会因为应用程序中的回呼函数经过部分修改后而改变了其起始地址,如图2所示,固定程序区块中的一程序A要联系的应用程序A’,其回呼函数经过部分修改后而改变起始地址。此时必须经由编译器将所有程序重新编译且烧录一次。从而,固定程序才能够呼叫到应用程序中的回呼程序而不会造成系统运作的不正常。但结果是,耗费了整个烧录时间,而且过程繁琐,增加研发成本。因此,本专利技术的主要目的是提供一种,当被修改的应用程序被编译后,只需烧录回呼函数进入点区块以及应用程序点区块的程序代码即可,而固定程序区块的程序代码并不需要再重新烧录,如此可节省整个烧录时间。本专利技术的又一目的是提供一种,就程序设计而言,将成熟且完整的程序放在内存中的固定程序区块而将正在开发或必须再维护修改部分的程序放在应用程序区块,只需将其起始地址加入到进入点矩阵,如此重复烧录过程中便可再度提升烧录的效率,也同时减少维护程序的时间。根据本专利技术的一个方面,提供了一种闪存,通过内存的规划将该内存分成三部分,该三部分为一固定程序区块,其中包含烧录完整且不需再修改的程序;一应用程序区块,其中包含可修改或变更的应用程序;以及一回呼函数进入点区块,其中包含一回呼函数进入点矩阵,该进入点矩阵记录在该应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值。根据本专利技术的另一方面,提供一种闪存中固定程序呼叫回呼函数的方法,其中该闪存通过内存的规划将该内存分成三部分,该三部分包括一固定程序区块,其中包含烧录完整且不需再修改的程序;一应用程序区块,其中包含可修改或变更的应用程序;以及一回呼函数进入点区块,其中包含一回呼函数进入点矩阵,该进入点矩阵记录在该应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值,该方法包括有以下步骤a)当该固定程序区块中的一程序呼叫该应用程序区块中的回呼函数时,先到该回呼函数进入点区块寻找该回呼函数在一回呼函数对照表的一起始地址值;b)再进入在该应用程序区块的该回呼程序的一闪存起始地址。根据本专利技术的再一方面,提供了一种闪存程序重复烧录方法,其中该闪存通过内存的规划将该内存分成三部分,该三部分包括一固定程序区块,其中包含烧录完整且不需再修改的程序;一应用程序区块,其中包含可修改或变更的应用程序;以及一回呼函数进入点区块,其中包含一回呼函数进入点矩阵,该进入点矩阵记录在该应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值,该方法包括有步骤将修改的一应用程序进行编译;b)将编译后的应用程序烧录在所述闪存的应用程序区块和回呼函数进入点区块中。较佳地,在步骤b)中,只需烧录该回呼函数进入点区块和该应用程序区块的程序代码。根据本专利技术的再另一方面,提供了一种闪存的规划方法,主要是包含如下步骤a)将一闪存分成三部分一固定程序区块,一应用程序区块和一回呼函数进入点区块;b)将成熟且完整的程序放在该固定程序区块;c)将正在开发或必须再维护修改部分的程序放在该应用程序区块;以及d)将回呼函数的起始地址加入到该回呼函数进入点区块的一进入点矩阵。图1是常规手机软件架构示意图;图2是已知闪存经编译器编译新修改后的程序架构变化示意图;图3是依照本专利技术一实施例的内存规划示意图;图4是依照本专利技术一实施例的程序进入点矩阵中程序呼叫时的动作示意图;以及图5是依照本专利技术的一实施例的程序重新编译前后,固定程序呼叫回呼函数的动作示意图。再请参阅图4,当固定程序区块中的一固定程序A或B呼叫应用程序区块中的回呼函数A”或B”时,要分别先到回呼函数进入点区块寻找一回呼函数对照表的起始地址值A’或B’后,再进入应用程序区块中回呼函数A”或B”以完成下层固定程序呼叫的动作。因而,不管应用程序如何修改,经编译器编译后,应用程序中的回呼函数起始地址都将纪录在回呼函数进入点区块的进入点矩阵。当下层固定程序呼叫上层回呼程序时只需到此进入点矩阵便可通过对照表找出上层回呼函数的起始地址。最后,请参阅图5。本图是依照本专利技术程序重新编译前后,固定程序呼叫回呼函数的动作示意图。依照本专利技术,如图上代表回呼函数A”的方块的移位,当一应用程序被修改并经编译后,固定程序区块中的一固定程序A所要呼叫的应用程序区块中的一回呼函数A”会变更起始地址,而起始地址值A’亦随之改变。但是,固定程序A尚保持在原地址。所以,在此情形下,当一工程师修改应用程序并编译后,只需要烧录回呼函数进入点区块以及应用程序区块的程序代码便可,而固定程序区块的程序代码并不需要再重新烧录,如此可省下烧录固定程序区块的时间部分。由以上的叙述,以程序设计的观点而言,若将成熟且完整的程序放在内存中的固定程序区块,而将正在开发或必须再维护修改部分的程序放在应用程序区块。当固定程序区块中的程序需要呼叫到应用程序区块中的回呼函数时,只需将其起始地址值加入到点矩阵,如此重复烧录过程便可再度提升烧录的效率,也同时减少维护程序的时间。本专利技术的闪存程序重复烧录方法,用在一手机软件烧录过程中实施时,将程序进入点矩阵加入到手机软件架构中,经过实际烧录测试,结果显示所需烧录时间将只为原架构烧录时间的十分之一。以上所述的内容,仅为本专利技术的一较佳实施例而已,并非用来限定本专利技术实施的范围。故即凡依本专利技术的权利要求所述的形状、构造、特征所作出的等效变化与修饰,均应包括于本专利技术的保护范围内。本文档来自技高网...

【技术保护点】
一种闪存,通过内存的规划将该内存分成三部分,该三部分为: 一固定程序区块,其中包含烧录完整且不需再修改的程序; 一应用程序区块,其中包含可修改或变更的应用程序;以及 一回呼函数进入点区块,其中包含一回呼函数进入点矩阵,该进入点矩阵记录在该应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值。

【技术特征摘要】
1.一种闪存,通过内存的规划将该内存分成三部分,该三部分为一固定程序区块,其中包含烧录完整且不需再修改的程序;一应用程序区块,其中包含可修改或变更的应用程序;以及一回呼函数进入点区块,其中包含一回呼函数进入点矩阵,该进入点矩阵记录在该应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值。2.一种闪存中固定程序呼叫回呼函数的方法,其中该闪存通过内存的规划将该内存分成三部分,该三部分包括一固定程序区块,其中包含烧录完整且不需再修改的程序;一应用程序区块,其中包含可修改或变更的应用程序;以及一回呼函数进入点区块,其中包含一回呼函数进入点矩阵,该进入点矩阵记录在该应用程序区块内的所有回呼函数当被固定程序呼叫时的起始地址值,该方法包括有以下步骤a)当该固定程序区块中的一程序呼叫该应用程序区块中的回呼函数时,先到该回呼函数进入点区块寻找该回呼函数在一回呼函数对照表的一起始地址值;b)再进入在该应用程序区块的该回呼程序的一闪存起始地址。3.一...

【专利技术属性】
技术研发人员:吴铉桂张富钧
申请(专利权)人:光宝科技股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1