CN100416686C - 闪存及其在光驱中动态加载固件操作模块的方法 - Google Patents

闪存及其在光驱中动态加载固件操作模块的方法 Download PDF

Info

Publication number
CN100416686C
CN100416686C CNB2005100521207A CN200510052120A CN100416686C CN 100416686 C CN100416686 C CN 100416686C CN B2005100521207 A CNB2005100521207 A CN B2005100521207A CN 200510052120 A CN200510052120 A CN 200510052120A CN 100416686 C CN100416686 C CN 100416686C
Authority
CN
China
Prior art keywords
operation module
code
rom drive
flash memory
firmware operation
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
CNB2005100521207A
Other languages
English (en)
Other versions
CN1661703A (zh
Inventor
李基柱
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.)
Toshiba Samsung Storage Technology Korea Corp
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1661703A publication Critical patent/CN1661703A/zh
Application granted granted Critical
Publication of CN100416686C publication Critical patent/CN100416686C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/02Analogue recording or reproducing
    • G11B20/04Direct recording or reproducing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

一种闪存,其中,当需要时被下载有用于调试一光驱的码和用于控制所述光驱的码,陆续执行所下载的码,并删除已执行的码。所述闪存包括其中执行和删除从一外部源接收的一固件操作模块的第一区域,被分配用于存储一用于加载已经被存储在所述第一区域中的固件操作模块的码、用于执行已经被存储在所述第一区域中的固件操作模块的码和一固件码的第二区域。

Description

闪存及其在光驱中动态加载固件操作模块的方法
技术领域
本发明涉及一种闪存和一种用于向光驱动态加载一固件操作模块的方法,当需要时可以在该闪存中下载用于调试一光驱的代码和用于控制该光驱的代码,并连续地执行和随后删除这些代码。
背景技术
光驱的闪存存储用于驱动该光驱的固件代码、用于调试该光驱的代码和用于控制该光驱的代码。
固件通常是一种连接软件和硬件的介体。例如,当若干硬件被安装到一主板上时,即使是该硬件的电源被接通,在没有固件的情况下,不能驱动该硬件。另外,为了访问每个装置以执行一应用程序所预期的操作,需要适当的介体,即固件。所述固件执行很多功能,诸如是运行一硬件、缓冲硬件与软件的冲突、和向硬件传送由所述软件控制的内容等。所述固件被装载在一计算机的格式(FORM)区域中;因此,即使当电源被关闭时也能存储数据。因此,所述固件包含若干接通所述计算机电源所需的例行程序和若干自动运行的程序。
调试表示一种处理,在这种处理中,光盘驱动器发现和校正错误,即消除或避免错误。
当固件区域的功能增加时,固件代码增加;因此,只有有限的空间能够被用于向所述光驱添加用于调试该光驱的代码和用于控制该光驱的代码。在实际的用户环境中,并不需要在开发光驱中所使用的所述光驱调试码和所述光驱控制码。例如,所述实际用户环境是由一用户所进行的闪存的正规操作,这种操作并不包括诸如调试码和光驱控制码的用于开发所述光驱的操作码。由于安装了具有增加的对象尺寸和用于调试、控制和执行其它操作的附加代码的固件,所以,闪存的可记录区域减小了。
发明内容
本发明提供一种闪存,在该闪存中,当需要时,可以向其加载用于调试一光驱的代码和用于控制该光驱的代码,执行所述代码的功能,并随后删除这些代码。
本发明的一个方面还提供了一种将一固件操作模块动态地加载到一光驱上的方法,借助于该方法,具有各种功能的一固件可以被安装到所述闪存的一个小区域中,并在该闪存的小区域中有效执行调试和控制所述光驱的操作。
根据本发明的一个方面,提供了一种闪存,包括被分配用于从一外部源接收、执行和删除一固件操作模块的一第一区域,和被分配存储用于加载存储在所述第一区域中的所述固件操作模块的代码、用于执行存储在所述第一区域中的所述固件操作模块的代码和一固件码的一第二区域。
根据本发明的一个方面,所述固件操作模块包括用于调试一光驱的代码和用于控制该光驱的代码。
根据本发明的一个方面,用于加载存储在所述第一区域中的所述固件操作模块的代码和用于执行存储在所述第一区域中的所述固件操作模块的代码被分配给除所述第一和第二区域外的另一个区域。
根据本方面的一个方面,提供了一种用于由一光驱执行固件动态加载的方法,该方法包括:从一存储多个固件操作模块的主机向所述光驱传送一使所述主机向所述光驱加载一固件操作模块的命令;使用存储在所述闪存中的一固件操作模块加载码将所述固件操作模块加载到所述光驱的闪存的动态分配区域中;和将存储在所述闪存中的一固件操作模块执行码传送给所述动态分配区域,并使用该固件操作模块执行码执行所述固件操作模块。
根据本发明的一个方面,在传送和执行所述固件操作模块执行码后,删除在所述动态分配区域中所存储的码。
根据本发明的一个方面,所述闪存包括一被分配执行和删除从所述主机下载的一固件操作模块的区域,和被分配存储用于从主机向在前区域下载所述固件操作模块的代码、用于执行存储在所述在前区域中的所述固件操作模块的代码和一固件码的另一区域。
根据本发明的一个方面,提供一种在闪存中动态分配一操作码的方法,包括:对于在一硬件设备正常操作期间不被用户使用且被存储在一主机中的所述硬件设备的操作码,当需要使用所述操作码并从所述主机接收所述操作码时,暂时将所述操作码存储在一动态分配区域中;和分配另一存储区域,用于存储一加载该暂时存储的所述硬件设备的操作码的加载码和存储一执行所述暂时存储的所述硬件设备的操作码的执行码。
根据本发明的一个方面,提供一种用于将一固件操作模块动态加载到一光驱上的方法,包括:将一命令从给一主机传送给所述光驱,以将所述固件操作模块下载到所述光驱;使用存储在所述闪存中的一固件操作模块加载码将所固件操作模块下载到包括在所述光驱中的一闪存的动态分配区域中;将存储在所述闪存中一固件操作模块执行码传送给所述动态分配区域;使用所述固件操作模块执行码执行所述固件操作模块的功能;和删除存储在所述闪存的所述动态分配区域中的已执行的固件操作模块,其中,所述固件操作模块的功能包括用于调试所述光驱的操作和/或用于控制所述光驱的操作。
本发明的附加方面和/或优点部分地将在下面进行描述,部分地将从该描述中看出,或通过本发明的实践可以学习到。
附图说明
通过下面结合附图对实施例的描述,本发明的这些和/或其它方面都将变得更加明显和更容易理解。其中:
图1A和1B示出了根据本发明一实施例的闪存的结构;和
图2的框图示出了根据本发明一实施例在光驱中动态加载一固件操作模块的方法。
具体实施方式
下面将参考附图详细描述本发明的实施例,所述附图中示出了这些实施例的例子,其中,在整个附图中,相同的标号表示相同的元件。下面将参照附图解释所述实施例。
图1A所示的闪存包括至少一个动态分配区域100a、一个动态模块加载码区域102a、一个动态模块执行码区域104a和一个固件码区域106a。例如,所述动态模块可以被分别存储在所述闪存中并在运行时可选择地装载。
所述动态分配区域100a被用于存储、执行和删除从一主机接收的一固件操作模块(例如用于调试一光驱的代码和控制该光驱的代码)。为了执行一固件操作,一固定地址的区域被分配给所述闪存的某个区域。例如,所述固件操作模块被存储在所述动态分配区域100a中,从所述动态分配区域100a顺序执行所述固件操作模块,然后从所述动态分配区域100a中删除该固件操作模块。
现存闪存存储光驱调试码和光驱控制码。但是,由于用户在闪存的正常操作期间内既不使用光驱调试码也不使用光驱控制码,所以,只有在需要时才从主机向所述动态分配区域100a下载所述光驱调试码和光驱控制码,然后再执行和删除这些码。
动态模块加载码区域102a存储用于从主机加载一固件操作模块的代码(此后,该代码被称之为动态模块加载码)。使用该动态模块加载码,从主机输出的所述固件操作模块能够被加载到动态分配区域100a中。
动态模块执行码区域104a存储用于执行所述固件操作模块的代码。使用所述动态模块执行码,可以执行存储在所述动态分配区域100a中的固件操作模块。
固件码区域106a存储用于执行所述光驱的固件码。
如图1A所示,动态模块加载码区域102a和动态模块执行码104a彼此相互分开并分别存储所述动态模块加载码和所述动态模块执行码。
但是,图1B的闪存包括动态分配区域100b和固件码区域102b,分别用于存储一动态模块加载码、一动态模块执行码和一固件码。这些区域对应于图1A所示的区域102a和106a,所以省略其描述。
图2的框图示出了根据本发明一个方面用于在一光驱中动态加载固件操作模块的方法。现在将参照图1A来进行描述。向/从图1A所示闪存输出/输入数据是由光驱的控制器(未示出)控制的。
图2所示固件操作模块被存储在主机中。由于在正常用户操作期间并不需要调试光驱的代码和控制该光驱的代码,所以,只有在需要时这些代码才被加载到闪存中,进而在该闪存中执行并删除这些代码。存储在所述主机中的固件操作模块由多个对象组成。
当所述主机在操作步骤200向光驱发出模块加载命令时,通过在操作步骤202执行所述动态模块加载码将需要的固件操作模块加载到动态分配区域100a中。
当需要的固件操作模块被加载到动态分配区域100a时,主机在操作步骤204向光驱发出一模块执行命令。
在操作步骤206,响应于来自主机的所述模块执行命令,所述光驱将存储在动态模块执行码区域104a中的动态模块执行码加载到动态分配区域100a中,并在操作步骤206使用该动态模块执行码执行该固件操作模块。
然后,清除动态分配区域100a,以便能够执行下一个固件操作模块。
如上所述,当需要时,所述光驱调试码和光驱控制码被下载到闪存中,执行被下载到所述闪存中的每个码的功能,然后删除被下载到所述闪存中每个已执行的码。因此,所述闪存区域的效率被最大化。另外,具有各种功能的固件被安装在闪存的一小区域中并在闪存的该小区域中有效执行调试和控制所述光驱的操作。
虽然已经示出和描述了本发明的几个实施例,但本领域内的普通技术人员应当理解,在不脱离本发明的原理和精神、权利要求及其等效物所定义的范围的前提下,可以对这些实施例做出改变。

Claims (11)

1. 一种用于由一光驱执行固件动态加载的方法,该方法包括:
从一存储多个固件操作模块的主机向所述光驱传送一使所述主机向所述光驱加载一固件操作模决的命令;
使用存储在所述闪存中的一固件操作模块加载码将所述固件操作模块加载到所述光驱的闪存的动态分配区域中;和
将存储在所述闪存中的一固件操作模块执行码传送给所述动态分配区域,并使用该固件操作模块执行码执行所述固件操作模块。
2. 据权利要求1所述的方法,还包括:
在传送和执行所述固件操作模块执行码后,删除在所述动态分配区域中所存储的码。
3. 根据权利要求1所述的方法,其中,所述闪存包括:
分配一第一区域,用于执行和然后删除从所述主机下载的一固件操作模块;和
分配另一区域,用于存储一用于从主机向所述第一区域下载所述固件操作模块的码、存储一用于执行存储在所述第一区域中的所述固件操作模块的码,和存储一固件码。
4. 根据权利要求1所述的方法,其中,所述固件操作模块是一动态模块。
5. 一种在闪存中动态分配一操作码的方法,包括:
对于在一硬件设备正常操作期间不被用户使用且被存储在一主机中的所述硬件设备的操作码,当需要使用所述操作码并从所述主机接收所述操作码时,暂时将所述操作码存储在一动态分配区域中;和
分配另一存储区域,用于存储一加载该暂时存储的所述硬件设备的操作码的加载码和存储一执行所述暂时存储的所述硬件设备的操作码的执行码。
6. 根据权利要求5所述的在闪存中动态分配所述操作码的方法,其中,所述硬件设备的操作码由一固件操作模块组成。
7. 根据权利要求5所述的在闪存中动态分配所述操作码的方法,其中,所述硬件设备是一光驱。
8. 根据权利要求7所述的在闪存中动态分配所述操作码的方法,其中,所述光驱的操作码包括:
一调试码,用于调试所述光驱;和
一用于控制所述光驱的码。
9. 根据权利要求5所述的在闪存中动态分配所述操作码的方法,其中,还包括:
在执行所述操作码之后,删除暂时存储在所述动态分配存储区域中的所述操作码。
10. 根据权利要求5所述的在闪存中动态分配所述操作码的方法,其中,还包括:
将所述加载码存储在与所述执行码分开的所述闪存的一存储位置中。
11. 一种用于将一固件操作模块动态加载到一光驱上的方法,包括:
将一命令从给一主机传送给所述光驱,以将所述固件操作模块下载到所述光驱;
使用存储在所述闪存中的一固件操作模块加载码将所固件操作模块下载到包括在所述光驱中的一闪存的动态分配区域中;
将存储在所述闪存中一固件操作模块执行码传送给所述动态分配区域;
使用所述固件操作模块执行码执行所述固件操作模块的功能;和
删除存储在所述闪存的所述动态分配区域中的已执行的固件操作模块,
其中,所述固件操作模块的功能包括用于调试所述光驱的操作和/或用于控制所述光驱的操作。
CNB2005100521207A 2004-02-25 2005-02-25 闪存及其在光驱中动态加载固件操作模块的方法 Expired - Fee Related CN100416686C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020040012543A KR100564613B1 (ko) 2004-02-25 2004-02-25 플래시 메모리 및 광 드라이브의 펌웨어 모듈 동적 로딩동작 방법
KR0012543/2004 2004-02-25
KR0012543/04 2004-02-25

Publications (2)

Publication Number Publication Date
CN1661703A CN1661703A (zh) 2005-08-31
CN100416686C true CN100416686C (zh) 2008-09-03

Family

ID=35010955

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100521207A Expired - Fee Related CN100416686C (zh) 2004-02-25 2005-02-25 闪存及其在光驱中动态加载固件操作模块的方法

Country Status (3)

Country Link
US (1) US7814261B2 (zh)
KR (1) KR100564613B1 (zh)
CN (1) CN100416686C (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
KR100801014B1 (ko) * 2006-08-21 2008-02-04 삼성전자주식회사 Dos 부트 프로그램을 내장한 디스크를 구비하는 하드 디스크 드라이브와 그를 포함하는 컴퓨터 시스템, 상기 하드 디스크 드라이브의 펌웨어 다운로드 방법 및 그를 포함하는 기록 매체
CN101051279B (zh) * 2007-05-15 2010-04-14 华为技术有限公司 外围设备运行方法、外围设备及主机
US8631203B2 (en) 2007-12-10 2014-01-14 Microsoft Corporation Management of external memory functioning as virtual cache
US9015704B2 (en) * 2008-03-24 2015-04-21 International Business Machines Corporation Context agent injection using virtual machine introspection
US8032707B2 (en) 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
CN102520947A (zh) * 2011-12-09 2012-06-27 中兴通讯股份有限公司 自动移除代码的方法及装置
CN103645917B (zh) * 2013-12-03 2016-09-14 北京中电华大电子设计有限责任公司 Java卡的Java代码补丁方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1148235A (zh) * 1995-07-31 1997-04-23 三星电子株式会社 Cd播放机
CN1170207A (zh) * 1996-06-28 1998-01-14 三星电子株式会社 数字视盘播放机及其再现控制方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1254937B (it) * 1991-05-06 1995-10-11 Aggiornamento dinamico di memoria non volatile in un sistema informatico
JPH1027097A (ja) 1996-07-11 1998-01-27 Anritsu Corp フラッシュromのデータ書換え方法および装置
US5930504A (en) * 1996-07-22 1999-07-27 Intel Corporation Dynamic nonvolatile memory update in a computer system
GB9713094D0 (en) * 1997-06-21 1997-08-27 Philips Electronics Nv Optical disc drive
US6574747B2 (en) * 2000-06-02 2003-06-03 Microsoft Corporation Extensible execute in place (XIP) architecture and related methods
US6889340B1 (en) * 2000-10-13 2005-05-03 Phoenix Technologies Ltd. Use of extra firmware flash ROM space as a diagnostic drive
KR100432857B1 (ko) 2002-02-26 2004-05-24 주식회사 레인콤 기록 매체 재생 장치를 이용한 주변 기기 펌웨어업그레이드 방법 및 장치
US7017004B1 (en) * 2002-03-29 2006-03-21 Microsoft Corporation System and method for updating contents of a flash ROM
KR20030083118A (ko) 2002-04-19 2003-10-30 엘지전자 주식회사 광 디스크 기록 재생기의 소프트웨어 업데이트 방법
US20040054945A1 (en) * 2002-09-17 2004-03-18 Smith Gerald E. Symbol support in embedded firmware images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1148235A (zh) * 1995-07-31 1997-04-23 三星电子株式会社 Cd播放机
CN1170207A (zh) * 1996-06-28 1998-01-14 三星电子株式会社 数字视盘播放机及其再现控制方法

Also Published As

Publication number Publication date
CN1661703A (zh) 2005-08-31
KR100564613B1 (ko) 2006-03-29
US20050188365A1 (en) 2005-08-25
KR20050086165A (ko) 2005-08-30
US7814261B2 (en) 2010-10-12

Similar Documents

Publication Publication Date Title
CN100416686C (zh) 闪存及其在光驱中动态加载固件操作模块的方法
KR101088192B1 (ko) 플래시 메모리 프로그래밍을 위한 시스템 및 방법
CN100461096C (zh) 动态注册表分区系统和方法
US6052778A (en) Embedded system having dynamically linked dynamic loader and method for linking dynamic loader shared libraries and application programs
US5717886A (en) Semiconductor disk device and memory management method
CN100461105C (zh) 一种智能化设备软件升级与修复的方法和系统
CN100511156C (zh) 强制性地终止输入/输出操作阻止的线程的设备和方法
CN101216773A (zh) 一种嵌入式Linux系统固件下载方法和装置
CN113672342B (zh) 嵌入式虚拟化系统及构建、测试方法、终端及介质
CN106155759A (zh) 虚拟机批量创建方法及装置
EP1956482A1 (en) Generating delta updates for a processing device
CN109992517B (zh) 基于uefi的固件模块调试方法和系统
CN114168255A (zh) 容器云平台中异构指令集容器的运行方法和装置
CN100507871C (zh) 嵌入式文件系统的测试方法及系统
CN110018866B (zh) 用户界面主题更新方法、装置、系统、车机及车辆
CN103003033A (zh) 机器人系统的控制方法和装置
CN101340311B (zh) 显示控制设备、显示控制程序和显示控制方法
CN1260662C (zh) 网络和网络终端
US20030188147A1 (en) Method for downsizing a computer operating system
CN112732287B (zh) 一种程序烧录方法、主电路板及子电路板
CN112130858B (zh) 一种代码编译方法及编译服务器
CN103631648A (zh) 一种任务处理方法及系统
CN113641577A (zh) 一种终端产品应用程序的调试方法、装置
CN101770508A (zh) 移动通信终端中的数据访问方法和设备
CN114253655A (zh) 基于mips64指令集的安全容器隔离方法和装置

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
ASS Succession or assignment of patent right

Owner name: TOSHIBA SAMSUNG STORAGE TECHNO

Free format text: FORMER OWNER: SAMSUNG ELECTRONICS CO., LTD.

Effective date: 20140723

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20140723

Address after: Gyeonggi Do, South Korea

Patentee after: Toshiba Samsung Storage Technology Korea Co.,

Address before: Gyeonggi Do, South Korea

Patentee before: Samsung Electronics Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080903

Termination date: 20170225

CF01 Termination of patent right due to non-payment of annual fee