KR20040051123A - Apparatus and Method for Updating of Boot Flash Real-time - Google Patents

Apparatus and Method for Updating of Boot Flash Real-time Download PDF

Info

Publication number
KR20040051123A
KR20040051123A KR1020020078976A KR20020078976A KR20040051123A KR 20040051123 A KR20040051123 A KR 20040051123A KR 1020020078976 A KR1020020078976 A KR 1020020078976A KR 20020078976 A KR20020078976 A KR 20020078976A KR 20040051123 A KR20040051123 A KR 20040051123A
Authority
KR
South Korea
Prior art keywords
boot
boot file
checksum
file
error
Prior art date
Application number
KR1020020078976A
Other languages
Korean (ko)
Inventor
안도건
Original Assignee
엘지전자 주식회사
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 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020020078976A priority Critical patent/KR20040051123A/en
Publication of KR20040051123A publication Critical patent/KR20040051123A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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/4401Bootstrapping
    • G06F9/4403Processor initialisation

Landscapes

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

Abstract

PURPOSE: A method and a device for updating the boot flash in real-time are provided to automatically recover a failure due to an error occurring in the real-time update by realizing an update function as separating a structure of the boot flash into a CPU initializing block and a loading block. CONSTITUTION: A processor initializing unit(302) initializes a PCU and a kernel. A boot file(306) is dualized and loads an OS(Operating System) from an upper level after initializing peripheral devices. An error detector(304) selects an effective boot file from the dualized boot files and judges that the error is present in the selected boot file. The error detector judges the error of the boot file by using checksum.

Description

부트 플래시의 실시간 업데이트 방법 및 장치{Apparatus and Method for Updating of Boot Flash Real-time}Apparatus and Method for Updating of Boot Flash Real-time}

본 발명은 부트 플래시의 실시간 업데이트 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for real time update of a boot flash.

컴퓨터를 부팅시킨다는 것은 운영체계를 컴퓨터 메모리(RAM)에 적재 시키는 것이다. 운영체계가 일단 로드되면 사용자의 응용프로그램을 실행시킬 준비가 된 것이다. 간혹 '재부팅시키라'는 메시지를 보게되는 경우가 있는데, 이것은 단순히 운영체계를 다시 로드하는 것을 의미한다.To boot a computer is to load the operating system into computer memory (RAM). Once the operating system is loaded, you are ready to run your application. Occasionally you will see the message 'Reboot', which simply means reloading the operating system.

메인프레임과 같은 대형 컴퓨터들에서는 '부트'라는 말 대신, 같은 의미를 갖는 IPL이라는 용어를 사용한다. 또한 부트는 부팅행위를 나타내는 명사로도 쓰인다. 운영체계의 부팅은 컴퓨터에 아주 작은 프로그램을 적재함으로써 시작되는데, 바로 그 프로그램의 통제하에 전체 운영체계가 로드된다.Large computers like the mainframe use the term IPL instead of the word 'boot'. Boot is also used as a noun for booting. Booting of the operating system begins by loading a very small program into the computer, which is loaded under the control of the program.

부트는 운영체계에 따라 조금씩 다를 수 있지만, 컴퓨터를 켰을때 운영체계는 대개 다음 순서에 의해 자동으로 부트된다.Booting may vary slightly depending on the operating system, but when the computer is turned on, the operating system usually boots automatically in the following order.

컴퓨터는 켜지자마자 컴퓨터 롬(ROM)에 들어있는 바이오스가 기동되며 임무를 시작한다. 바이오스는 롬에 저장되어 있기 때문에 램에 저장된 정보와는 달리, 컴퓨터를 끄더라도 그 내용이 지워지지 않는다. 바이오스는 컴퓨터 부분품이 운영될 수 있는 상태인지를 확인하기 위하여 포스트(POST ; power-on self test)라고 불리우는 테스트를 수행한다. 그런 다음 바이오스의 부트 프로그램은 하드디스크에 있는 운영체계를 실제로 로드시키기 위한 특별한 부트 파일을 찾는다.As soon as the computer is turned on, the BIOS in the computer ROM is activated and the mission begins. Because the BIOS is stored in the ROM, unlike the information stored in RAM, the contents are not erased when the computer is turned off. BIOS performs a test called a power-on self test (POST) to verify that the computer parts can be operated. The BIOS boot program then looks for a special boot file to actually load the operating system on the hard disk.

부트 파일이 위치해 있는 드라이브를 인식하고 나면, 바이오스는 첫 번째섹터에 있는 정보를 찾아 메모리에 로드하기 위해 복사하게 되는데, 이 정보가 바로 마스터 부트 레코드(MBR ; Master Boot Record)라고 알려져 있는 정보이다.After recognizing the drive where the boot file is located, BIOS copies the information in the first sector to find and load it into memory, which is known as the Master Boot Record (MBR).

그 다음 부트 레코드를 메모리의 특정 위치(16진수로 7C00 번지에 해당한다)로 복사해 넣는다. 부트 레코드는 이제 바이오스가 다른 곳으로 분기하거나 컴퓨터의 부트 레코드에게 통제를 넘겨주기 위한 프로그램을 담고 있다.Then copy the boot record to a specific location in memory (7C00 in hexadecimal). The boot record now contains a program that allows the BIOS to branch elsewhere or give control to the computer's boot record.

부트 레코드가 초기 시스템 파일(MS-DOS인 경우 IO.SYS)을 디스켓이나 하드디스크로부터 읽어서 메모리에 로드한다. 초기 파일(IO.SYS인 경우 SYSINIT이라고 불리우는 프로그램)은 운영체계의 나머지 부분을 메모리로 로드한다.The boot record reads the initial system file (IO.SYS if it is MS-DOS) from a diskette or hard disk and loads it into memory. The initial file (a program called SYSINIT in the case of IO.SYS) loads the rest of the operating system into memory.

초기 파일(예를 들어 SYSINIT)이 시스템 파일(예를 들어 MSDOS.SYS)을 로드한다. 초기에 로드되는 시스템 파일 중에 하나로 시스템 구성 파일(DOS의 경우 CONFIG.SYS)이 있다. 시스템 구성파일은 로드해야 할 특정 시스템 파일(예를 들어 각종 장치를 위한 드라이버 파일들)들에 관한 정보를 담고 있다.The initial file (such as SYSINIT) loads the system file (such as MSDOS.SYS). One system file that is initially loaded is the system configuration file (CONFIG.SYS in DOS). System configuration files contain information about specific system files (eg driver files for various devices) to be loaded.

상기와 같은 동작을 수행하는 부프 플래시에 대하여 설명하기로 한다.The boolean flash performing the above operation will be described.

도 1은 종래의 부트 플래시의 구성을 개략적으로 나타낸 블럭도이다.1 is a block diagram schematically showing a configuration of a conventional boot flash.

도 1을 참조하면, 부트 플래시(100)는 하드웨어 초기화부(104), 상위로부터 OS등을 받는 로딩부(108)를 포함한다.Referring to FIG. 1, the boot flash 100 includes a hardware initialization unit 104 and a loading unit 108 that receives an OS from a higher level.

상기 하드웨어 초기화부(104)는 CPU와 커넬과 같은 프로세서, 주변 장치를 초기화한다. 상기 하드웨어 초기화부(104)는 프로세스의 초기화가 실패할 경우 정상적인 동작이 불가능하기 때문에 주의를 해야한다.The hardware initialization unit 104 initializes a processor, a peripheral device such as a CPU and a kernel. The hardware initialization unit 104 should be careful because normal operation is impossible when the initialization of the process fails.

상기와 같이 구성된 부트 플래시(100)의 업데이트는 쓰기 동작이 소프트웨어적으로 가능하다면 실시간 업데이트가 가능하고, 하드웨어 초기화부(104)와 로딩부(108)는 동시에 업데이트된다.The update of the boot flash 100 configured as described above may be updated in real time if the write operation is possible in software, and the hardware initialization unit 104 and the loading unit 108 are simultaneously updated.

즉, 부트 플래시(100)는 기능상으로 하드웨어 초기화부(104)와 로딩부(108)로 구분되어지지만, 하나의 모듈에 합쳐져 있기 때문에 부트 업데이트시 모두 동시에 업데이트해야만 한다.That is, the boot flash 100 is functionally divided into the hardware initialization unit 104 and the loading unit 108, but because they are combined into one module, all boot updates must be performed at the same time.

도 2는 종래의 부트 플래시의 부팅 순서를 나타낸 흐름도이다.2 is a flowchart illustrating a boot sequence of a conventional boot flash.

도 2를 참조하면, 파워가 온되면(S200), CPU가 초기화되고(S202), 커넬이 초기화된다(S204).Referring to FIG. 2, when the power is turned on (S200), the CPU is initialized (S202), and the kernel is initialized (S204).

그런다음 주변 장치의 초기화가 수행되면(S206), 상위로부터 OS의 로딩을 수행한다(S208).Then, when the initialization of the peripheral device is performed (S206), the OS is loaded from the upper (S208).

그러나 상기와 같은 종래에는 부트 업데이트시 장애가 발생하여 잘못된 데이터가 플래시에 저장되었을 경우, 보드 스스로의 복구가 불가능하고 복구하기 위해서는 운영자가 직접 부트 플래시를 교체해야하는 불편함이 있었다.However, in the related art, when a failure occurs during a boot update and wrong data is stored in a flash, the board itself is impossible to recover and there is an inconvenience in that the boot flash has to be replaced by the operator.

따라서, 본 발명의 목적은 부프플래시의 구조를 CPU 초기화 블럭과 로딩 블럭으로 분리하여 업데이트 기능을 구현함으로 인하여 실시간 업데이트시 발생할 수 있는 오류에 의한 장애를 자동으로 복구할 수 있는 부트 플래시의 실시간 업데이트 방법 및 장치를 제공할 수 있다.Therefore, an object of the present invention is to real-time update method of the boot flash that can automatically recover the failure due to errors that can occur during the real-time update by implementing the update function by separating the structure of the boost flash into the CPU initialization block and the loading block And an apparatus.

도 1은 종래의 부트 플래시의 구성을 개략적으로 나타낸 블럭도.1 is a block diagram schematically showing a configuration of a conventional boot flash.

도 2는 종래의 부트 플래시의 부팅 순서를 나타낸 흐름도.2 is a flowchart showing a boot sequence of a conventional boot flash.

도 3은 본 발명의 바람직한 일 실시예에 따른 부트 플래시의 구성을 개략적으로 나타낸 블럭도.Figure 3 is a block diagram schematically showing the configuration of a boot flash according to an embodiment of the present invention.

도 4는 본 발명의 바람직한 일 실시예에 따른 부팅 순서를 나타낸 흐름도.4 is a flow chart showing a boot sequence in accordance with one preferred embodiment of the present invention.

도 5는 본 발명의 바람직한 일 실시예에 따른 부트 파일을 업데이트하는 방법을 나타낸 흐름도.5 is a flowchart illustrating a method of updating a boot file according to an embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

100, 300 : 부트 플래시 104 : 하드웨어 초기화부100, 300: boot flash 104: hardware initialization unit

108 : 로딩부 302 : 프로세서 초기화부108: loading unit 302: processor initialization unit

304 : 에러 감지부 306 : 부트 파일304: error detection unit 306: boot file

상기 목적들을 달성하기 위하여 본 발명의 일 측면에 따르면, 상위로부터 받은 부트 파일에 대하여 체크섬을 구하고, 상기 구해진 체크섬과 함께 상기 부트 파일의 업데이트를 수행한 후, 재기동을 수행하고, 재기동에 의해 프로세서가 초기화되면, 유효한 부트 파일을 선택하고, 상기 선택된 부트 파일이 정상인지의 여부를 판단하여 상기 판단결과 상기 선택된 부트 파일이 정상이면, 동적 로딩기능을 이용하여 상기 부트 파일을 메모리에 적재하면서 수행하는 것을 특징으로 하는 부트 플래시의 업데이트 방법이 제공된다.According to an aspect of the present invention to achieve the above object, to obtain a checksum for the boot file received from a higher level, after performing the update of the boot file with the obtained checksum, restarting, the processor by restarting When initialized, selecting a valid boot file, determining whether the selected boot file is normal, and if the selected boot file is normal, performing the loading of the boot file into a memory by using a dynamic loading function. A boot flash update method is provided.

상기 선택된 부트 파일이 정상인지의 여부를 판단하는 것은 상기 선택된 부트 파일의 체크섬을 구하고, 상기 구해진 체크섬이 상기 업데이트된 체크섬과 같은지의 여부를 판단하여 상기 판단결과 상기 구해진 체크섬이 상기 업데이트된 체크섬과 같으면, 상기 부트 파일을 정상으로 판단한다.Determining whether the selected boot file is normal obtains a checksum of the selected boot file, determines whether the obtained checksum is equal to the updated checksum, and if the determined checksum is equal to the updated checksum, The boot file is determined to be normal.

상기 판단결과 상기 구해진 체크섬이 상기 업데이트된 체크섬과 다르면, 상기 부트 파일을 비정상으로 판단하여 상기 선택된 부트 파일을 삭제하고 다른 부트 파일을 사용하여 동작을 수행한다.As a result of the determination, if the obtained checksum is different from the updated checksum, the boot file is determined to be abnormal, the selected boot file is deleted, and an operation is performed using another boot file.

본 발명의 다른 측면에 따르면, CPU와 커넬의 초기화를 수행하는 프로세서 초기화부, 주변 장치의 초기화를 수행한 후, 상위로부터 운영체계의 로딩을 수행하는 부트 파일, 상기 이중화되어 있는 부트 파일중에서 유효한 부트 파일을 선택하고 상기 선택된 부트 파일의 오류 여부를 판단하는 에러 감지부를 포함하는 것을 특징으로 하는 부트 플래시가 제공된다.According to another aspect of the present invention, a processor initialization unit for initializing the CPU and the kernel, a boot file for performing the loading of the operating system from a higher level after performing the initialization of the peripheral device, the effective boot among the duplicated boot file Boot flash is provided, characterized in that it comprises an error detection unit for selecting a file and determines whether the selected boot file is an error.

상기 에러 감지부는 체크섬을 이용하여 부트 파일의 오류 여부를 판단한다.The error detector determines a boot file error using a checksum.

이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 3은 본 발명의 바람직한 일 실시예에 따른 부트 플래시의 구성을 개략적으로 나타낸 블럭도이다.3 is a block diagram schematically illustrating a configuration of a boot flash according to an exemplary embodiment of the present invention.

도 3을 참조하면, 부트 플래시(300)는 프로세서 초기화부(302), 에러 감지부(304), 부트 파일(306)을 포함한다.Referring to FIG. 3, the boot flash 300 includes a processor initializer 302, an error detector 304, and a boot file 306.

상기 프로세서 초기화부(302)는 CPU와 커넬을 초기화한다.The processor initialization unit 302 initializes the CPU and the kernel.

상기 부트 파일(306)은 주변 장치를 초기화하고, 상위로부터 OS의 로딩을 수행하는 것으로서, 이중화되어 있다. 즉, 상기 부트파일(306)은 부트 업데이트시 오류가 발생하였을 경우 복구하기 위하여 제1 부트 파일(306a), 제2 부트 파일(306b)로 이중화되어 있다.The boot file 306 is duplicated by initializing a peripheral device and loading an OS from a higher level. That is, the boot file 306 is duplicated into a first boot file 306a and a second boot file 306b in order to recover when an error occurs during boot update.

상기 에러 감지부(304)는 상기 이중화되어 있는 부트 파일(306)중에서 유효한 부트 파일(306)을 선택하고, 상기 선택된 부트 파일(306)에 대하여 오류 발생 여부를 판단한다. 즉, 상기 에러 감지부(304)는 상기 판단결과 상기 선택된 부트 파일(306)에 오류가 발생된 것으로 판단되면, 상기 선택된 부트 파일(306)을 삭제한 후, 다른 부트 파일을 선택한다.The error detector 304 selects a valid boot file 306 among the duplicated boot files 306 and determines whether an error occurs with respect to the selected boot file 306. That is, if it is determined that an error has occurred in the selected boot file 306, the error detector 304 deletes the selected boot file 306 and selects another boot file.

만약, 상기 판단결과 상기 선택된 부트 파일(306)에 오류가 발생되지 않은 것으로 판단되면, 상기 에러 감지부(304)는 상기 부트 파일(306)을 메모리에 적재하면서 해당 코드를 수행한다.If it is determined that no error occurs in the selected boot file 306, the error detector 304 loads the boot file 306 into a memory and executes the corresponding code.

상기 오류 검출은 예를 들어, 32비트 체크섬을 사용하여 오류 여부를 판단한다.The error detection uses, for example, a 32 bit checksum to determine whether there is an error.

상기와 같이 구성된 부트 플래시(300)에서 프로세서 초기화부(302)와 부트 파일(306)은 완전히 분리하여 각각 업데이트를 수행한다.In the boot flash 300 configured as described above, the processor initialization unit 302 and the boot file 306 are completely separated and updated.

도 4는 본 발명의 바람직한 일 실시예에 따른 부팅 순서를 나타낸 흐름도이다.4 is a flowchart illustrating a boot sequence according to an exemplary embodiment of the present invention.

도 4를 참조하면, 파워가 온되면(S400), CPU가 초기화되고(S402), 커넬이 초기화된다(S404).Referring to FIG. 4, when the power is turned on (S400), the CPU is initialized (S402), and the kernel is initialized (S404).

상기와 같이 프로세서가 초기화되면, 에러 감지부는 이중화된 부트 파일에서 유효한 부트 파일을 선택한다(S406).When the processor is initialized as described above, the error detector selects a valid boot file from the duplicated boot file (S406).

그런다음 상기 에러 감지부는 상기 선택된 부트 파일이 정상인지의 여부를 판단한다(S408). 여기서, 상기 에러 감지부는 상기 선택된 부트 파일이 정상인지의 여부를 판단하기 위하여 해당 파일의 체크섬을 구하여 상기 구해진 체크섬의 오류 발생 여부를 판단한다. 즉, 상기 에러 감지부는 상기 선택된 부트 파일에 대하여 미리 저장된 체크섬과 상기 구해진 체크섬을 비교한다. 여기서 상기 미리 저장된 체크섬은 부트 파일을 업데이트할때, 미리 구해져서 저장된 값이다.Then, the error detector determines whether the selected boot file is normal (S408). Here, the error detector obtains a checksum of the corresponding file to determine whether the selected boot file is normal and determines whether an error of the obtained checksum occurs. That is, the error detector compares the checksum previously stored with respect to the selected boot file with the obtained checksum. Here, the prestored checksum is a value that is obtained in advance when the boot file is updated.

상기 비교결과 상기 선택된 부트 파일에 대하여 미리 저장된 체크섬과 상기 구해진 체크섬이 같으면, 해당 부트 파일를 정상으로 판단한다. 만약, 상기 비교결과 상기 선택된 부트 파일에 대하여 미리 저장된 체크섬과 상기 구해진 체크섬이다르면, 상기 에러 감지부는 해당 부트 파일을 비정상으로 판단한다.As a result of the comparison, if the checksum stored in advance with respect to the selected boot file is equal to the obtained checksum, the corresponding boot file is determined to be normal. If the comparison result is a checksum stored in advance for the selected boot file and the obtained checksum, the error detector determines that the boot file is abnormal.

단계 408의 판단결과 상기 선택된 부트 파일이 정상이면, 동적 로딩 기능을 이용하여 상기 부트파일을 메모리에 적재하면서 해당 코드를 수행한다(S410). 여기서, 상기 해당 코드는 상기 메모리에 적재되는 부트 파일을 나타낸다.If the selected boot file is normal as a result of the determination of step 408, the corresponding code is executed while the boot file is loaded into a memory using a dynamic loading function (S410). Here, the corresponding code represents a boot file loaded in the memory.

단계 410의 수행후, 부트 플래시는 주변 장치를 초기화하고(S412), 로딩을 수행한다(S414).After performing step 410, the boot flash initializes the peripheral device (S412) and performs loading (S414).

만약, 단계 408의 판단결과 상기 선택된 부프 파일이 정상이 아니면, 해당 부트 파일을 삭제한 후(S416), 단계 406을 수행한다.If the selected boot file is not normal as a result of the determination of step 408, after deleting the corresponding boot file (S416), step 406 is performed.

도 5는 본 발명의 바람직한 일 실시예에 따른 부트 파일을 업데이트하는 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a method of updating a boot file according to an exemplary embodiment of the present invention.

도 5를 참조하면, 부트 플래시는 상위로부터 받은 부트 파일에 대해서 체크섬을 구한다(S500). 상기 구해진 체크섬은 업데이트 부트 파일의 이상 유무를 판단할때 사용된다.Referring to FIG. 5, the boot flash obtains a checksum for a boot file received from a higher level (S500). The checksum obtained is used to determine whether an update boot file is abnormal.

그런다음 상기 부트 플래시는 상기 부트 파일을 상기 구해진 체크섬 정보와 함께 업데이트를 수행한 후(S502), 재기동한다(S504).The boot flash then updates the boot file with the obtained checksum information (S502) and then restarts (S504).

그런다음 상기 부트 플래시는 상기 업데이트된 부트 파일의 이상 유무를 확인한다(S506). 상기 업데이트된 부트 파일의 이상 유무를 판단하는 방법은 도 3에 설명하였으므로 그 설명은 생략한다.Then, the boot flash checks whether the updated boot file is abnormal (S506). Since the method of determining whether the updated boot file is abnormal is described with reference to FIG. 3, the description thereof will be omitted.

본 발명은 상기 실시예에 한정되지 않으며, 많은 변형이 본 발명의 사상 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 가능함은 물론이다.The present invention is not limited to the above embodiments, and many variations are possible by those skilled in the art within the spirit of the present invention.

상술한 바와 같이 본 발명에 따르면, 부트 플래시의 구조를 CPU 초기화 블럭과 로딩 블럭으로 분리하여 업데이트 기능을 구현함으로 인하여 실시간 업데이트시 발생할 수 있는 오류에 의한 장애를 자동으로 복구할 수 있는 부트 플래시의 실시간 업데이트 방법 및 장치를 제공할 수 있다.As described above, according to the present invention, by realizing the update function by separating the structure of the boot flash into the CPU initialization block and the loading block, the real time of the boot flash that can automatically recover from the failure due to errors that may occur during the real-time update An update method and apparatus can be provided.

또한, 본 발명에 따르면, 부프 플래시의 교체가 필요할 경우, 직접 운영자가 직접 교체하지 않고 소프트웨어적으로 처리할 수 있는 부트 플래시의 실시간 업데이트 방법 및 장치를 제공할 수 있다.In addition, according to the present invention, when it is necessary to replace the buff flash, it is possible to provide a real-time update method and apparatus for boot flash that can be processed in software without a direct replacement by the operator.

Claims (5)

상위로부터 받은 부트 파일에 대하여 체크섬을 구하는 단계;Obtaining a checksum for a boot file received from an upper layer; 상기 구해진 체크섬과 함께 상기 부트 파일의 업데이트를 수행한 후, 재기동을 수행하는 단계;Performing a reboot after updating the boot file with the obtained checksum; 재기동에 의해 프로세서가 초기화되면, 유효한 부트 파일을 선택하는 단계;If the processor is initialized by rebooting, selecting a valid boot file; 상기 선택된 부트 파일이 정상인지의 여부를 판단하는 단계;및Determining whether the selected boot file is normal; and 상기 판단결과 상기 선택된 부트 파일이 정상이면, 동적 로딩기능을 이용하여 상기 부트 파일을 메모리에 적재하면서 수행하는 단계If the selected boot file is normal, loading the boot file into a memory by using a dynamic loading function; 를 포함하는 것을 특징으로 하는 부트 플래시의 업데이트 방법.Update method of the boot flash comprising a. 제1항에 있어서,The method of claim 1, 상기 선택된 부트 파일이 정상인지의 여부를 판단하는 단계는Determining whether or not the selected boot file is normal 상기 선택된 부트 파일의 체크섬을 구하는 단계;Obtaining a checksum of the selected boot file; 상기 구해진 체크섬이 상기 업데이트된 체크섬과 같은지의 여부를 판단하는 단계;Determining whether the obtained checksum is equal to the updated checksum; 상기 판단결과 상기 구해진 체크섬이 상기 업데이트된 체크섬과 같으면, 상기 부트 파일을 정상으로 판단하는 단계를 포함하는 것을 특징으로 하는 부트 플래시의 업데이트 방법.And determining the boot file as normal if the obtained checksum is equal to the updated checksum. 제2항에 있어서,The method of claim 2, 상기 판단결과 상기 구해진 체크섬이 상기 업데이트된 체크섬과 다르면, 상기 부트 파일을 비정상으로 판단하여 상기 선택된 부트 파일을 삭제하고 다른 부트 파일을 사용하여 동작을 수행하는 단계를 더 포함하는 것을 특징으로 하는 부트 플래시의 업데이트 방법.And if the determined checksum is different from the updated checksum, determining that the boot file is abnormal, deleting the selected boot file, and performing an operation using another boot file. How to update. CPU와 커넬의 초기화를 수행하는 프로세서 초기화부;A processor initialization unit which initializes the CPU and the kernel; 이중화되어있고, 주변 장치의 초기화를 수행한 후, 상위로부터 운영체계의 로딩을 수행하는 부트 파일;A boot file which is redundant and performs an initialization of a peripheral device and then loads an operating system from a higher level; 상기 이중화되어 있는 부트 파일중에서 유효한 부트 파일을 선택하고 상기 선택된 부트 파일의 오류 여부를 판단하는 에러 감지부An error detector which selects a valid boot file among the duplicated boot files and determines whether the selected boot file is an error 를 포함하는 것을 특징으로 하는 부트 플래시.Boot flash comprising a. 제4항에 있어서,The method of claim 4, wherein 상기 에러 감지부는 체크섬을 이용하여 부트 파일의 오류 여부를 판단하는 것을 특징으로 하는 부트 플래시.And the error detection unit determines whether an boot file has an error by using a checksum.
KR1020020078976A 2002-12-12 2002-12-12 Apparatus and Method for Updating of Boot Flash Real-time KR20040051123A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020078976A KR20040051123A (en) 2002-12-12 2002-12-12 Apparatus and Method for Updating of Boot Flash Real-time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020078976A KR20040051123A (en) 2002-12-12 2002-12-12 Apparatus and Method for Updating of Boot Flash Real-time

Publications (1)

Publication Number Publication Date
KR20040051123A true KR20040051123A (en) 2004-06-18

Family

ID=37345121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020078976A KR20040051123A (en) 2002-12-12 2002-12-12 Apparatus and Method for Updating of Boot Flash Real-time

Country Status (1)

Country Link
KR (1) KR20040051123A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812906B2 (en) 2009-11-20 2014-08-19 Samsung Electronics Co., Ltd. Method for system recovery and apparatus supporting the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812906B2 (en) 2009-11-20 2014-08-19 Samsung Electronics Co., Ltd. Method for system recovery and apparatus supporting the same

Similar Documents

Publication Publication Date Title
KR100860447B1 (en) Method and system for creating and employing an operating system having selected functionality
US8468342B2 (en) Computer system and method for performing integrity detection on the same
US6804774B1 (en) Software image transition aid comprising building a disk image based on identified hardware
US6317845B1 (en) System for computer recovery using removable high capacity media
US7136994B2 (en) Recovery images in an operational firmware environment
US20040255106A1 (en) Recovery of operating system configuration data by firmware of computer system
US7047403B2 (en) Method and system for operating system recovery and method of using build-to-configuration mode to model computer system
US20080098381A1 (en) Systems and methods for firmware update in a data processing device
US20080010446A1 (en) Portable apparatus supporting multiple operating systems and supporting method therefor
US6944867B2 (en) Method for providing a single preloaded software image with an ability to support multiple hardware configurations and multiple types of computer systems
US20060242398A1 (en) Booting from non-volatile memory
US20040030877A1 (en) Using system BIOS to update embedded controller firmware
US11144328B2 (en) System method to update failover process by running basic input/output (BIOS) system boot code from non-volatile memory express device (NVME)
US20080126792A1 (en) Systems and methods for achieving minimal rebooting during system update operations
TWI765443B (en) Data storage device and method for maintaining normal boot operation of data storage device
US20060143362A1 (en) Apparatus and method for incremental package deployment
US20060150037A1 (en) Methods and systems for operating system recovery
KR100678974B1 (en) Apparatus and method for security and user comfortability in rebooting computer system
US7827376B2 (en) System and method for protecting hidden protected area of HDD during operation
US7080243B2 (en) Method and system for comparing firmware images
KR20040051123A (en) Apparatus and Method for Updating of Boot Flash Real-time
US20060168440A1 (en) OS selection methods and computer systems utilizing the same
KR101271784B1 (en) Method for executing multiple boot manager

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid