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

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

Info

Publication number
CN1661703A
CN1661703A CN2005100521207A CN200510052120A CN1661703A CN 1661703 A CN1661703 A CN 1661703A CN 2005100521207 A CN2005100521207 A CN 2005100521207A CN 200510052120 A CN200510052120 A CN 200510052120A CN 1661703 A CN1661703 A CN 1661703A
Authority
CN
China
Prior art keywords
operation module
flash memory
code
rom drive
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.)
Granted
Application number
CN2005100521207A
Other languages
English (en)
Other versions
CN100416686C (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 (21)

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

Applications Claiming Priority (3)

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

Publications (2)

Publication Number Publication Date
CN1661703A true CN1661703A (zh) 2005-08-31
CN100416686C 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008138258A1 (fr) * 2007-05-15 2008-11-20 Huawei Technologies Co., Ltd. Procédé d'exploitation de dispositif périphérique, dispositif périphérique et hôte

Families Citing this family (11)

* 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 부트 프로그램을 내장한 디스크를 구비하는 하드 디스크 드라이브와 그를 포함하는 컴퓨터 시스템, 상기 하드 디스크 드라이브의 펌웨어 다운로드 방법 및 그를 포함하는 기록 매체
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
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
US8032707B2 (en) 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
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代码补丁方法

Family Cites Families (12)

* 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
KR0183726B1 (ko) * 1995-07-31 1999-04-15 윤종용 씨디 오케이와 비디오 씨디로부터 신호를 재생하는 씨디 재생장치
KR100195106B1 (ko) * 1996-06-28 1999-06-15 윤종용 광 디스크 재생 제어 장치 및 그 방법
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

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008138258A1 (fr) * 2007-05-15 2008-11-20 Huawei Technologies Co., Ltd. Procédé d'exploitation de dispositif périphérique, dispositif périphérique et hôte
GB2463809A (en) * 2007-05-15 2010-03-31 Huawei Tech Co Ltd Peripheral device operation method, peripheral device and host
GB2463809B (en) * 2007-05-15 2012-04-25 Huawei Tech Co Ltd Peripheral device operation method, peripheral device and host

Also Published As

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

Similar Documents

Publication Publication Date Title
CN1661703A (zh) 闪存及其在光驱中动态加载固件操作模块的方法
CN100343790C (zh) 显示装置及其虚拟工作区的管理方法
CN1237443C (zh) 在调试异构体系结构中的集成可执行程序时设置断点的方法和设备
US6052778A (en) Embedded system having dynamically linked dynamic loader and method for linking dynamic loader shared libraries and application programs
KR100441115B1 (ko) 정보 단말기의 자바 프로그램 처리 속도 향상을 위한 자바컴파일 온 디멘드 서비스 시스템 및 그 방법
US9519466B2 (en) Executable code for constrained computing environments
TWI439931B (zh) 用於增加三角差動效能之目的碼之產生
CN1292342C (zh) 在集成可执行程序中访问全局变量的系统和装置
CN1885264A (zh) 用于嵌入式系统的软件包构建方法和系统
CN1904836A (zh) 用于创建操作系统分区表的方法和系统
CN1139780A (zh) 多计算机系统中程序包更换方法及其计算机
CN100343820C (zh) 程序处理装置
CN1410881A (zh) 通用的软件开发支持系统
CN1786910A (zh) 一种bios在线升级方法
CN104484207A (zh) 交换机的镜像升级方法及适用的linux操作系统和交换机
CN1231836C (zh) 排错装置及排错方法
CN1292119A (zh) 减少存储器需求的程序代码执行装置
CN100337198C (zh) 一种移动通信设备应用程序处理系统
CN1529848A (zh) 进行软件应用的时间优化的替换
CN1664791A (zh) 一种虚拟存储模型及其方法
US20030188147A1 (en) Method for downsizing a computer operating system
CN1275741A (zh) 网络和网络终端
CN1184573C (zh) 网络终端
US20090235248A1 (en) System and Method for Managing Virtual Hard Drives in a Virtual Machine Environment
CN1892595A (zh) 计算机平台系统程序远程操控更新方法及系统

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