CN100392590C - 更改控制器中软件的方法和装置以及相应的控制器 - Google Patents

更改控制器中软件的方法和装置以及相应的控制器 Download PDF

Info

Publication number
CN100392590C
CN100392590C CNB2003801066326A CN200380106632A CN100392590C CN 100392590 C CN100392590 C CN 100392590C CN B2003801066326 A CNB2003801066326 A CN B2003801066326A CN 200380106632 A CN200380106632 A CN 200380106632A CN 100392590 C CN100392590 C CN 100392590C
Authority
CN
China
Prior art keywords
software section
memory block
software
old
new
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
Application number
CNB2003801066326A
Other languages
English (en)
Other versions
CN1729449A (zh
Inventor
P·约斯特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN1729449A publication Critical patent/CN1729449A/zh
Application granted granted Critical
Publication of CN100392590C publication Critical patent/CN100392590C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

更改在一个控制器的第一存储区中的软件来控制操作过程的方法和装置,其中通过执行新的软件部分代替执行旧的软件部分,并且在第一存储区中写入旧的软件部分,其中在第二存储区写入新的软件部分,和通过第一存储区内的第一转移,来代替第一存储区内的旧的软件部分而执行第二存储区内的新的软件部分,其中在执行新的软件部分后,通过第二存储区的第二转移,重新跳转回到第一存储区,并且继续执行在第一存储区中的其它的与旧的软件部分不同的软件,其中旧的软件仍保存在第一存储区。

Description

更改控制器中软件的方法和装置以及相应的控制器
本发明涉及对在一个控制器中第一存储区内的软件进行更改的方法和装置以及相应的控制器并且涉及按照独立权利要求实现该方法的计算机程序。
特别是在汽车工业中,借助软件将越来越复杂的功能转换到单个的控制器中。越来越频繁需要在交给最终用户稍前或还有稍后将软件的更改注入控制器。一般可通过以下方式消除控制器的软件的更改,即将更改注入新的软件集成等级,并且将这个新建立的软件完整地装入控制器、特别是通过在所谓的快速EPROM存储器中存储、也即通过快速存储装入。由于现有的软件规模,控制器的快速存储譬如现在已经持续直到30分钟。由于不断提升功能和功能性,并且由于由此更大的软件规模和更多的软件包这个时间在将来提升更大。
因此,本发明的任务是减少用于控制器的快速存储的这种时间耗费,由此也可得到其它优点。
本发明的出发点是更改在一个控制器的第一存储区中软件的方法和装置,以控制操作过程、特别是在车辆以及相应控制器中,其中通过执行新的软件部分来代替执行旧的软件部分,并且在第一存储区中写入旧的软件部分。在大多数情况下,软件更改、特别是程序代码的更改与不需更改的软件部分相比很小。现在优选有目的地将待更改的部分或通常只是一个软件部分装入控制器,其中这些软件部分在说明书中也称为补丁容器或包含在这样一种补丁容器中。
因此,优选地只将新的软件部分写入第二存储区,其中通过在第一存储区的第一转移代替第一存储区的旧的软件部分而执行在第二存储区的新的软件部分,并且在执行新的软件部分后通过第二存储区的第二转移重新跳转回到第一存储区,其中继续执行在第一存储区的与旧软件部分不同的其它的软件,并且旧的软件部分仍存储在第一存储区内。
这就是说,为实现更改现有的软件、也即实现更改旧的软件部分,安装一个特殊的中央补丁管理,用该中央补丁管理有目的地通过跳入和跳出来更改软件的需更改的部分。由此一方面可优选在快速存储大的软件段或软件部分时明显地减少高的时间耗费,因为其一,不如上所述地重新写入整个软件,并且其二也可节省所需的用于更改软件、也即特别清除这些软件和写入新的软件的时间耗费。
此外,由此在更改软件和软件部分时得到一个较高的灵活性,并且另一方面通过尽可能地小的改写也就是清除和写入软件部分来得到一个较小的错误率。
优选地这特别通过以下方式得以实现,即使用第二存储区、也即补丁容器区,只用于记录新的软件部分并且在程序运行或软件运行时连入新的软件部分。
在此,优选地通过至少一个链表实现第一转移和第二转移。在此,链表提供节省储存数据的位置的可能性、特别是储存软件部分,这些软件部分同时具有时间上的而且也有逻辑的顺序。由于按照这种可比较的或相同的软件部分的方式方法具有多种版本,所以链表是一个适当的附件以储存事先不可确定数量的不同软件部分的版本。在链表中,对软件部分的每个版本或对每个软件部分都导入一个指向这个软件部分的下一个版本的指针。可使用一个特殊的指针状态以对下面情况进行编码,即所属的版本是各软件部分的当前版本。同样,这种特殊的指针状态用作为相应的软件部分的识别符或标识符。在此,作为指针使用相对的或绝对的地址。在一个链表中,由此与分别存储的软件部分一起或与如包括软件部分的一个数据记录的一个信息单元一起,存储一个指向各下一个逻辑相连的信息单元的存储位置的指针、特别是在这里指向下一个新软件部分的存储位置,或是指向具有新软件部分的数据记录的存储位置,或也指向其它的跟随在旧软件部分的后边的软件的存储位置。这样,首先在该时刻能够占据这些储存位置,在这个时刻提供待存储的或待执行的信息。此外,给这个信息分配各下一个空闲的储存位置是可能的,由此这个过程此外也导致无缝隙地使用存储器。
现在,优选地将一个新软件部分的起始地址用作第一转移,拟用于从第一存储区跳出,其中能够用这个地址至少部分地改写旧的软件部分、也即需更改的软件部分。作为替代方案也可在第一存储区中设置存储单元以嵌入跳出地址。由此,在第一存储区内设置一个到补丁容器内的跳转。然后优选将其它与旧软件部分不同的软件的起始地址用作第二转移,拟用于跳回,以使无缝隙地在转换旧的软件部分以后使用或处理在第一存储区的其它的跟随的软件。
优选在新的软件部分包含这样的信息,该信息给出应代替哪些旧的软件部分和/或这种信息说明了在通过哪些新的软件部分代替旧的软件部分。对此,第二存储区、也即特别是在包括新的软件部分以及也许包括附加信息的补丁表内的每个读入的补丁容器,除至少一个新的软件部分外,还包括一个用于第一转移的地址、用于第二转移的地址、和用于可通过至少一个新的软件部分代替的旧的软件部分的开始的地址。作为附加的信息,优选可在补丁容器中包括至少一个新的软件部分的长度和/或也包括至少一个旧的软件部分的长度。这些元素、也即用于第一转移的地址、用于第二转移的地址、用于旧的软件部分的开始的地址、以及也许还有新的软件部分的长度和/或旧的软件部分的长度都可综合成在补丁容器中的一个数据记录、也即在第二存储区的、特别是在补丁表中的一个数据记录。这样,为代替旧的软件部分所需的信息,优选地针对每个旧的软件部分分别综合在一个这样的数据记录内。
在此,优选第一存储区作为第一表格和优选第二存储区作为第二表格(补丁表格)在同一存储器中得以实现。
在此,此外第一存储区和第二存储区都可优选地划分成相同大小的软件段,其中在第二存储区中的每个软件段中可写入一个新的软件部分。
然后,优选地也可给每个数据记录或每个软件段根据实施方案配备一种识别符,该识别符允许列入一个旧的软件部分和一个代替此的新的软件部分。
其它的优点和优选的方案可从说明书中以及权利要求的特征中得到。
根据在附图中所示的进一步详细说明本发明。图中:
图1示出了一个具有相应的软件的控制器,其中旧的软件部分用新的软件部分代替,并且
图2示出了具有控制器软件的第一存储区以及按照本发明所述的补丁容器,并且
图3举例示出了在补丁容器中的一个可能的数据记录。
图1示出了具有处理单元101、特别是具有微控制器以及存储装置102、特别是被划分成两个存储区103和104的控制器100。这些存储区103和104可位于控制器100的同一存储器或不同的存储器内。通过除了线路连接的通信连接以外还可表现为无线的通信连接的接口105,相应的新的软件部分由一个带有第二存储装置107的信源106、譬如另一个计算机导入控制器100。通过只传送需更改的数据、也即只传送新的软件部分和不传送整个软件,这导致明显小的传输速率,特别是也能够使用空中接口、也即无线电、超声、红外等等。除此之外,在这个位置还可同样使用线路连接的传输。
现在,图2示出了第一存储区200和第二存储区201、特别是以表格形式所示的。在此,第一存储区包括单元格或软件段205-216。单元格205-216的相应的地址分别存储在块203中。同样,第二存储区201、也即补丁表包括多个单元格217-223,也是软件段,其中能够存入所谓的补丁容器。还有在这里在块204中,对各单元格、也即对各补丁容器存储相应的地址。
如在图2中所看到的,在从第一存储区200中的旧的软件部分内,在软件段207后在软件段208中产生一个跳出到补丁表201中。在此,用跳转地址亦即到软件段218的转移将旧的软件部分208至少部分地改写。这就是说,第一更改A1以从第一存储区200到第二存储区201的转移V1A1开始。在软件段218、219运行完之后,从带有第二转移V2A1的软件段220重新转回或跳回第一存储区软件段210。如此则通过在段218和219中的新的软件部分代替软件段208和209内的旧的软件部分、也即来回跳转。在此,旧的软件部分仍包含在第一存储区中的段208和209内。
第二更改A2举例示出了在段212后的一个跳出,跳转到在第二存储区201中的段223的起点,并且示出了一个跳回,跳回到存储段214的起点。这就是说,通过第一转移V1A2和跳回或第二转移V2A2,用软件段223在软件运行方面代替软件段213,其中至少部分地仍然保持在软件段213中的旧的软件部分。只代替包括补丁表的跳转地址的部分。
为产生如图2所示的这种状态,需要这样的信息,即哪种软件部分、也即从存储区200的哪些旧的软件部分应如何更改。该信息被装入补丁表201中。
在控制器重新启动时,用补丁管理建立存储区200和存储区201之间的地址关系。补丁管理譬如放置在引导装入器中、也即在启动控制器时被处理的启动程序中。在此,按照本发明根据花费在补丁表中可包括许多在补丁管理范围内的许多信息。这些信息、这些元素可综合在单个的数据记录内,如这在图3所示的那样。该管理也可由控制器的管理单元101以自身方式实现,方式是通过将相应的信息存放在补丁容器内。
为产生补丁表的数据记录,在此提供一个辅助装置、特别是在计算机106内的辅助装置,该辅助装置上分析源代码的更改,并且据此产生补丁表的数据记录或软件部分。这些数据记录譬如由一个跳出地址、由原始软件、也即旧的软件部分,补丁表的目的地址、也即指向一个补丁容器的指针、由新的软件部分、也即譬如更改的或新的十六进制代码组成,譬如也可由已更改的程序代码的长度、也即旧的软件部分长度或新的程序代码也即新的软件部分的长度组成,以及由到第一存储区的跳回地址、也即跳回到与旧的软件部分不同的其它软件、也即特别到原始程序的跳回地址组成。此外,可给补丁容器分配一个标始符和识别符,并且它们由此被包含在数据记录中。
在此,实现本发明所述方法的信息不是都需要的,这样,譬如从起始地址和软件部分的长度可确定最终地址。尽管如此,信息的使用或者意味着时间优势,因为一个地址不须计算,而是给出了,或者在这点上的冗余信息使得检验软件的更改成为可能,和由此可能提高安全性。
同样地,用一个如此建立起来的补丁管理重新取消在软件中的更改。然后,在这样一种取消中,在第一存储区中可设置针对跳出地址的存储空间,以致于在重新使用旧的软件部分时该部分不被部分地改写。
作为这样一个补丁容器或数据记录的例子,在图3中示出了存储块300。在此,用301譬如给出了一个程序地址、也即旧的需代替的软件部分的地址,用块302给出了在补丁表中的地址。程序块303给出了新的特殊的程序代码、也即应代替旧的软件部分的新的软件部分。用块304给出了譬如新的软件部分的长度、也即以比特、字节或任意其它量为单位的代码长度,并且最后块305给出了到其它软件部分的返回地址、也即特别到第一存储区200中源程序的返回地址。
除此以外,如上所述,同样也包括识别符、也即标识符,譬如代替给出的代码长度或者附加的。这样一个如程序块300的补丁容器或整个的补丁表可很简单地通过总线系统装入控制器,譬如通过具有CAN消息的CAN总线系统。如果象所谈到的那样使用识别符或标识符、也即将其分配给一个补丁容器,则可有目的地完全实现和跟踪譬如给用户的误差报告的更改,并且也可建立并存储更改的历史,无须损失稳定测试过的程序代码、也即无错误的软件的透明度。如果纠错并无所期望的反应,则很容易恢复旧的状态、也即简单地从补丁容器中取出。通过服务于本发明方法的小的数据率,一种简单的通过空中接口的软件改正或改进,如所提到的,是可能的。
此外,有利的是,将数据的存储区、也即软件分段成同样大小的数据文件、也即同样大小的软件段,这些软件段然后同样如上述的方法那样彼此链接并且针对更改存储在补丁表中。也就是说,在第一存储区200和第二存储区201中的单元格或数据包或在其中所保存的软件无须大小一定相同,而是通过地址和补丁管理进行管理。但是,使用在第一和第二存储区的大小相同的软件段是有利的,并且作为数据记录总是交换这样完整的软件段或通过新的软件段代替旧的软件段。
由此,通过详尽描述的本发明,得到具有全部优点的控制器的一个递增的快速存储。

Claims (19)

1.用于更改在一个控制器的第一存储区中的软件来控制操作过程的方法,其中通过执行新的软件部分来代替执行旧的软件部分,并且在第一存储区中写入所述旧的软件部分,其特征在于,在第二存储区写入所述新的软件部分,和通过第一存储区的第一转移,代替在第一存储区中的旧的软件部分来执行在第二存储区中的新的软件部分,其中通过第二存储区的第二转移在执行所述新的软件部分后,重新返回到第一存储区中,并且继续执行在第一存储区中的其它的与旧的软件部分不同的软件,其中所述旧的软件部分仍保存在第一存储区,
将该第二存储区中新软件部分的起始地址用作第一转移,其中用这个起始地址至少部分地改写所述旧的软件部分,
将其他与所述旧的软件部分不同的软件的该第一存储区中的起始地址用作第二转移。
2.按照权利要求1所述的方法,其特征在于,第二存储区只用于记录新的软件部分。
3.按照权利要求1所述的方法,其特征在于,通过至少一个链表实现所述第一转移和所述第二转移。
4.按照权利要求1所述的方法,其特征在于,在新的软件部分中包含这样的信息,该信息说明了应代替哪些旧的软件部分。
5.按照权利要求1所述的方法,其特征在于,在新的软件部分中包含这样的信息,该信息说明了应通过哪些新的软件部分来代替所述旧的软件部分。
6.按照权利要求1所述的方法,其特征在于,第二存储区除至少一个新的软件部分外,还包括针对第一转移的一个地址,针对第二转移的一个地址,和将要被至少一个新的软件部分代替的所述旧的软件部分的开始的地址。
7.按照权利要求6所述的方法,其特征在于,所述至少一个新的软件部分、所述针对第一转移的地址、所述针对第二转移的地址、和所述旧的软件部分的开始的地址综合到第二存储区的一个数据记录中。
8.按照权利要求6所述的方法,其特征在于,第二存储区此外还包括至少一个新的软件部分的长度和/或至少一个旧的软件部分的长度。
9.按照权利要求8所述的方法,其特征在于,所述至少一个新的软件部分的长度和/或所述至少一个旧的软件部分的长度、所述至少一个新的软件部分、所述针对第一转移的地址、所述针对第二转移的地址、和所述旧的软件部分的开始的地址综合到第二存储区的一个数据记录中。
10.按照权利要求6所述的方法,其特征在于,设置至少两个旧的软件部分和至少两个代替这两个旧的软件部分的新的软件部分,其中所述至少一个新的软件部分、所述针对第一转移的地址、所述针对第二转移的地址、和所述旧的软件部分的开始的地址分别综合到一个数据记录中,并且被写入第二存储区。
11.按照权利要求8所述的方法,其特征在于,设置至少两个旧的软件部分和至少两个代替这两个旧的软件部分的新的软件部分,其中所述至少一个新的软件部分的长度和/或所述至少一个旧的软件部分的长度、所述至少一个新的软件部分、所述针对第一转移的地址、所述针对第二转移的地址、和所述旧的软件部分的开始的地址分别综合到一个数据记录中,并且被写入第二存储区中。
12.按照权利要求1所述的方法,其特征在于,在同一存储器中,设置第一表格作为第一存储区,并设置第二表格作为第二存储区。
13.按照权利要求1或12所述的方法,其特征在于,将第一存储区和第二存储区划分成同样大小的软件段,其中在第二存储区的每个软件段中都能够写入一个新的软件部分。
14.按照权利要求7或者9所述的方法,其特征在于,每个数据记录都配有一个识别符。
15.按照权利要求13所述的方法,其特征在于,每个软件段都配有一个识别符。
16.按照权利要求14所述的方法,其特征在于,针对在第一存储区内的包含一个旧的软件部分的数据记录的识别符和具有代替所述旧的软件部分的新的软件部分的相应的数据记录的识别符是相同的。
17.按照权利要求15所述的方法,其特征在于,针对在第一存储区内的包含一个旧的软件部分的软件段的识别符和具有代替所述旧的软件部分的新的软件部分的相应的软件段的识别符是相同的。
18.用于更改在一个控制器的第一存储区中软件以控制操作过程的装置,其中通过执行新的软件部分代替执行旧的软件部分,并且在第一存储区中写入所述旧的软件部分,其特征在于,包含这样的装置,该装置将所述新的软件部分写入第二存储区,和将第一转移写入第一存储区,由此代替第一存储区中所述旧的软件部分而执行第二存储区中所述新的软件部分,其中该装置也将第二转移写入第二存储区,由此在执行所述新的软件部分后,重新返回到第一存储区,并且继续执行在第一存储区中的其它与所述旧的软件部分不同的软件,其中所述旧的软件仍保存在第一存储区内,其中将该第二存储区中新软件部分的起始地址用作第一转移,其中用这个起始地址至少部分地改写所述旧的软件部分,并且其中将其他与所述旧的软件部分不同的软件的该第一存储区中的起始地址用作第二转移。
19.带有第一存储区的控制器,使在该存储区中存有旧的软件部分和其它的与所述旧的软件部分不同的软件部分,其特征在于,该控制器包括第二存储区,该存储区包括代替所述旧的软件部分的新的软件部分,其特征在于,包括这样的装置,该装置将所述新的软件部分写入第二存储区,和将第一转移写入第一存储区,由此代替第一存储区中所述旧的软件部分而执行第二存储区中所述新的软件部分,其中该装置也将第二转移写入第二存储区,由此在执行所述新的软件部分后,重新返回到第一存储区,并且继续执行在第一存储区中的其它与所述旧的软件部分不同的软件,其中所述旧的软件部分仍保存在第一存储区内,其中将该第二存储区中新软件部分的起始地址用作第一转移,其中用这个起始地址至少部分地改写所述旧的软件部分,并且其中将其他与所述旧的软件部分不同的软件的该第一存储区中的起始地址用作第二转移。
CNB2003801066326A 2002-12-19 2003-12-17 更改控制器中软件的方法和装置以及相应的控制器 Expired - Fee Related CN100392590C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10260103A DE10260103A1 (de) 2002-12-19 2002-12-19 Verfahren und Vorrichtung zur Änderung von Software in einem Steuergerät sowie entsprechendes Steuergerät
DE10260103.8 2002-12-19

Publications (2)

Publication Number Publication Date
CN1729449A CN1729449A (zh) 2006-02-01
CN100392590C true CN100392590C (zh) 2008-06-04

Family

ID=32404083

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2003801066326A Expired - Fee Related CN100392590C (zh) 2002-12-19 2003-12-17 更改控制器中软件的方法和装置以及相应的控制器

Country Status (5)

Country Link
US (1) US20060156297A1 (zh)
EP (1) EP1614035A2 (zh)
CN (1) CN100392590C (zh)
DE (1) DE10260103A1 (zh)
WO (1) WO2004057465A2 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006016891A1 (de) 2006-04-11 2007-10-25 Robert Bosch Gmbh Erweiterung der Funktionalität einer Serien-Software in einem Steuergerät
SE534471C2 (sv) * 2010-01-13 2011-09-06 Scania Cv Ab Metod och system för att uppdatera programvara
DE102010039021B4 (de) 2010-08-06 2023-02-23 Robert Bosch Gmbh Verfahren zur Rekonfiguration von Softwareparametern in einem Mikrocontroller sowie Mikrocontroller und Steuergerät
US9395975B2 (en) * 2014-07-21 2016-07-19 Sandisk Technologies Llc Method and system for generating a ROM patch
US9626179B2 (en) 2014-07-21 2017-04-18 Sandisk Technologies Llc Method and system for using a ROM patch
JP7169340B2 (ja) 2017-07-25 2022-11-10 オーロラ ラブズ リミテッド 車両ecuソフトウェアのためのソフトウェアデルタ更新の構築およびツールチェーンに基づく異常検出

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6076134A (en) * 1993-02-12 2000-06-13 Fujitsu Limited Memory patching device
GB2373888A (en) * 2001-03-30 2002-10-02 Toshiba Res Europ Ltd Dynamic vector address allocation for a code patching scheme

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4831517A (en) * 1986-10-10 1989-05-16 International Business Machines Corporation Branch and return on address instruction and methods and apparatus for implementing same in a digital data processing system
US5481713A (en) * 1993-05-06 1996-01-02 Apple Computer, Inc. Method and apparatus for patching code residing on a read only memory device
US5619698A (en) * 1995-05-05 1997-04-08 Apple Computer, Inc. Method and apparatus for patching operating systems
US6421679B1 (en) * 1995-10-27 2002-07-16 International Business Machines Corporation Concurrent patch to logical partition manager of a logically partitioned system
US5802549A (en) * 1995-12-14 1998-09-01 International Business Machines Corporation Method and apparatus for patching pages of ROM
US5901225A (en) * 1996-12-05 1999-05-04 Advanced Micro Devices, Inc. System and method for performing software patches in embedded systems
US5938766A (en) * 1997-03-21 1999-08-17 Apple Computer, Inc. System for extending functionality of a digital ROM using RAM/ROM jump tables and patch manager for updating the tables
US6189145B1 (en) * 1997-05-28 2001-02-13 International Business Machines Corporation Concurrent patch to logical partition manager of a logically partitioned system
US7430670B1 (en) * 1999-07-29 2008-09-30 Intertrust Technologies Corp. Software self-defense systems and methods
JP2004536405A (ja) * 2001-07-16 2004-12-02 ユキング レン 組み込みソフトウェア更新システム
US8539469B2 (en) * 2004-05-11 2013-09-17 Microsoft Corporation Efficient patching

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6076134A (en) * 1993-02-12 2000-06-13 Fujitsu Limited Memory patching device
GB2373888A (en) * 2001-03-30 2002-10-02 Toshiba Res Europ Ltd Dynamic vector address allocation for a code patching scheme

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN. Batalden, GD Christie, RA Graham, CS Gregg, LE Sheppard,FP,page 273 line1-last line,page 274 line6-last line,figure 2,Maintainable ROS Code Through the Combination of ROMAnd EEPROM. 1990
IBM TECHNICAL DISCLOSURE BULLETIN. Batalden, GD Christie, RA Graham, CS Gregg, LE Sheppard,FP,page 273 line1-last line,page 274 line6-last line,figure 2,Maintainable ROS Code Through the Combination of ROMAnd EEPROM. 1990 *

Also Published As

Publication number Publication date
CN1729449A (zh) 2006-02-01
WO2004057465A2 (de) 2004-07-08
DE10260103A1 (de) 2004-07-01
WO2004057465A3 (de) 2005-01-13
EP1614035A2 (de) 2006-01-11
US20060156297A1 (en) 2006-07-13

Similar Documents

Publication Publication Date Title
CN100334565C (zh) 闪速存储器的数据管理设备和方法
CN101763894B (zh) 半导体存储装置和存储控制方法
EP2965318B1 (en) High speed flash controllers
CN100538659C (zh) 非易失性存储器系统内有效允许失序写处理的方法和装置
EP2939100B1 (en) Method and system for asynchronous die operations in a non-volatile memory
CN102449607B (zh) 具有多个闪存封装的存储系统
CN101853207B (zh) 存储装置
EP1769343B1 (en) Method and system for in-place updating content stored in a storage device
US20060259207A1 (en) Electronic control system for automobile
CN103677884B (zh) flash分区表文件生成及其数据升级方法、装置
CN100416686C (zh) 闪存及其在光驱中动态加载固件操作模块的方法
JPS605023B2 (ja) 記憶システム
CN106462479A (zh) 车辆控制装置、改编程序系统
CN100392590C (zh) 更改控制器中软件的方法和装置以及相应的控制器
CN106817259A (zh) Vsm系统的升级方法及装置
CN107678685A (zh) 基于闪存的存储路径优化的键值存储管理方法
CN100397339C (zh) 集成内电路电路编程的装置与方法
CN103399758A (zh) 硬件加速方法、装置和系统
KR101053948B1 (ko) 메모리 시스템 및 컴퓨터 시스템
CN101369251A (zh) 快闪式内存及操作一快闪式内存的方法
CN103339603A (zh) 计算机重新编程方法、数据存储介质和机动车辆计算机
WO2004027615A2 (en) Method of and apparatus for detecting an error in writing to persistent memory
CN100449498C (zh) 数据储存装置
EP1461711B1 (en) Method and apparatus for modifying the contents of a revision identification register
EP1022697B1 (en) Control apparatus for vending machine

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080604

Termination date: 20101217