KR20060101150A - 계산기 서버 시스템에 있어서의 펌웨어 갱신 방법 - Google Patents

계산기 서버 시스템에 있어서의 펌웨어 갱신 방법 Download PDF

Info

Publication number
KR20060101150A
KR20060101150A KR1020050063553A KR20050063553A KR20060101150A KR 20060101150 A KR20060101150 A KR 20060101150A KR 1020050063553 A KR1020050063553 A KR 1020050063553A KR 20050063553 A KR20050063553 A KR 20050063553A KR 20060101150 A KR20060101150 A KR 20060101150A
Authority
KR
South Korea
Prior art keywords
flash memory
firmware
management controller
baseboard management
south bridge
Prior art date
Application number
KR1020050063553A
Other languages
English (en)
Other versions
KR100767654B1 (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 후지쯔 가부시끼가이샤
Publication of KR20060101150A publication Critical patent/KR20060101150A/ko
Application granted granted Critical
Publication of KR100767654B1 publication Critical patent/KR100767654B1/ko

Links

Images

Classifications

    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

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)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 서버 시스템 가동시에 펌웨어의 기록을 행하는 것을 가능하게 하고, 또한 펌웨어 갱신시의 시스템 정지 시간을 최소한으로 억제하는 펌웨어 데이터의 갱신 방법 및 이것을 적용하는 서버 시스템을 제공하는 것을 목적으로 한다.
계산기 서버 시스템에 있어서의 펌웨어 갱신 방법으로서, 시스템 가동 상태에서 사우스 브릿지로부터 플래시 메모리로의 액세스를 차단하고, 단말로부터 갱신되는 펌웨어를 베이스보드 관리 컨트롤러를 경유하여 상기 플래시 메모리에 기록한 후, 재기동을 행한다.

Description

계산기 서버 시스템에 있어서의 펌웨어 갱신 방법{METHOD OF UPDATING FIRMWARE IN COMPUTER SERVER SYSTEMS}
도 1은 종래의 서버 시스템 구성을 도시한 도면.
도 2는 펌웨어 갱신시의 처리 흐름을 도시한 도면.
도 3은 본 발명을 적용하는 서버 시스템의 제1 실시예의 블록도.
도 4는 도 3의 실시예에 대응하는 본 발명의 방법의 실시예 동작 흐름도.
도 5는 본 발명을 적용하는 서버 시스템의 제2 실시예의 블록도.
도 6은 도 5의 실시예에 대응하는 본 발명의 방법의 실시예 동작 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
1 : CPU
2 : 노스 브릿지
3 : PCI 버스
4 : 사우스 브릿지
5 : 메모리
6 : 레거시 I/O
7, 7a : 베이스보드 관리 컨트롤러(BMC)
8 : 관리 보드
9 : 단말
10 : 펌웨어 매체
11, 12 : 기록 경로
13, 13a : 버스 변환 회로
14 : 스위치
계산기 서버 시스템에는 접속되어 있는 디스크 및 키보드, 그래픽 등의 장치를 제어하는 프로그램군인 BIOS(Basic Input Output System) 및 시스템의 구성 정보를 유지하는 펌웨어를 저장하는 플래시 메모리를 구비하고 있다. 계산기 서버 시스템(이하, 간단히 서버 시스템이라고 한다)의 성능 변경시에, 이 펌웨어를 갱신(update)하는 것이 필요하게 된다.
도 1 및 도 2는 종래의 서버 시스템 구성과, 펌웨어 갱신시의 처리 흐름을 도시하는 도면이다.
CPU(1)는 칩 세트를 구성하는 한쪽의 노스 브릿지(2)를 통해 PCI 버스(3)에 접속되어 있다. 또한, 칩 세트를 구성하는 다른 쪽 사우스 브릿지(4)를 통해 CPU(1)는 플래시 메모리(5)에 접속된다. 또한, 레거시 I/O 인터페이스(6)가 PCI 버스(3)에 접속되어 있다.
사우스 브릿지(4)에는 베이스보드 관리 컨트롤러(BMC)(7)가 접속되어 있다. 베이스보드 관리 컨트롤러(BMC)(7)는 서버 시스템을 단일 유닛으로서 관리하기 위한 중심 기능을 실행하는 서버 관리용 칩이며, 하드웨어 장해 등으로 인하여 OS(operating system)가 다운되었을 때에도 장해 통신 기능 등을 갖고 있다.
서버 시스템이 파티션(Partition)되어 복수 시스템을 갖는 경우에는, 이것에 대응하여 복수의 베이스보드 관리 컨트롤러(BMC)(7)가 제공된다.
또한, 단말(9)에 대한 1*** Base-T, RS232C 등의 인터페이스 기능을 갖고, 복수의 베이스보드 관리 컨트롤러(BMC)(7)를 관리하는 관리 보드(MMB)(8)를 갖는다.
이러한 구성의 서버 시스템에 있어서, 플래시 메모리(5)에 저장되어 있는 펌웨어의 갱신을 행하는 경우, 도 2의 처리 흐름에 따라 다음과 같은 처리가 행해지고 있다.
종래의 방법에서는 서버 시스템을 일단 정지(shut down)한다(단계 S1). 그리고, 사우스 브릿지(4)는 통상 시스템 가동 상태에서 플래시 메모리(5)내의 펌웨어의 판독을 행하고 있지만, 갱신용 펌웨어 데이터가 플렉시블 데스크 등의 기록 매체(10)에 저장되어 있는 경우, 대응하는 플렉시블 데스크 드라이브 등의 단말(9)에 의해 갱신용 펌웨어 데이터를 판독하여 시스템을 기동한다(단계 S2).
판독된 갱신용 펌웨어는 CPU(1)를 경유하고, 노스 브릿지(2), 사우스 브릿지(4)를 경유(도 1에 있어서, 파선 화살표로 나타내고 있음)하여 플래시 메모리(5)에 기록된다(단계 S3). 그 후, 재기동되어(단계 S4) 통상 운용 상태로 들어간다. 따라서, 종래의 방법에서는 재기동 도중에 서버 시스템은 정지된 상태가 계속된다.
이와 같이, 펌웨어 데이터의 갱신시에는 서버 시스템을 일단 정지된 상태로 유지할 필요가 있다. 따라서, 시스템 규모가 커지게 되면, 큰 영향을 부여하게 된다.
이러한 펌웨어 데이터 혹은 제어 프로그램의 갱신에 관련되는 기술로서, 예컨대, 특허 문헌 1에 기재된 발명이 있다. 본 발명은 플래시 ROM에 저장된 제어 프로그램을 실행 중에 갱신해야 하는 제어 프로그램을 따로 준비하는 RAM에 대피 저장한 후, 다시 실행 할 때에 갱신된 제어 프로그램을 유효로 하는 것이다.
또한, 특허 문헌 2에 기재된 발명은 호스트 컴퓨터로부터 다운 로드되는 프로그램의 기록에 관한 발명이다. 다운 로드가 중단되었을 때에, 통신 코프로세서가 메인 프로세서를 강제적으로 리셋하여 메인 프로세서를 통하지 않고 통신 코프로세서에 의해 플래시 메모리에 다운 로드하는 것이다.
[특허 문헌 1] 일본 특허 공개 2003-330655호 공보
[특허 문헌 2] 일본 특허 공개 2001-27954호 공보
상기 도 1 및 도 2에 관하여 설명한 서버 시스템에 있어서 펌웨어 데이터의 갱신에서는 갱신시, 시스템을 일단 정지해야 한다. 또한, 특허 문헌 1에 기재된 발명에서는 실행 중의 제어 프로그램은 계속 실행되지만, 대피용 메모리를 준비해야 한다. 또한, 특허 문헌 2에 기재된 발명에서는 메인 프로세서를 강제적으로 리셋하여 프로그램의 갱신을 행하는 것이며, 결국 시스템을 중단해야 한다.
또한, 특허 문헌 1 및 2에 기재된 발명은 서버 시스템에 관계되지 않는 것이 며, 그 중 어느 하나의 특허 문헌도 서버 시스템의 펌웨어 데이터의 갱신을 단시간에 가능하게 하는 것을 시사할만한 것은 아니다.
따라서, 본원 발명의 목적은 서버 시스템 가동시에 펌웨어의 기록을 행하는 것을 가능하게 하면서, 펌웨어 갱신시 시스템 정지 시간을 최소한으로 억제하는 펌웨어 데이터의 갱신 방법 및 이것을 적용하는 서버 시스템을 제공하는 것에 있다.
상기 본 발명의 목적을 달성하는 펌웨어 갱신 방법의 제1 형태는 시스템가동 상태에서 사우스 브릿지로부터 플래시 메모리로 액세스를 차단하고, 단말로부터 갱신되는 펌웨어를 베이스보드 관리 컨트롤러를 경유하여 상기 플래시 메모리에 기록한 후, 재기동을 행하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 펌웨어 갱신 방법의 제2 형태는 제1 형태에 있어서, 상기 사우스 브릿지로부터 플래시 메모리로의 액세스를 차단할 때에, 상기 베이스보드 관리 컨트롤러로부터 상기 사우스 브릿지를 경유하여 CPU에 인터럽트를 행하고, 상기 플래시 메모리로의 액세스를 금지하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 펌웨어 갱신 방법의 제3 형태는 예비측 베이스보드 관리 컨트롤러를 경유하여 대응하는 예비측 플래시 메모리에 단말로부터 갱신되는 펌웨어 데이터를 기록하고, 재기동시에 상기 예비측 베이스보드 관리 컨트롤러와 상기 대응하는 예비측 플래시 메모리를 현재 사용측으로 전환하여 재기동을 행하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 서버 시스템은 제1 형태로서, 플래시 메모 리에 저장되는 펌웨어에 의해 기동되는 서버 시스템으로서 CPU와, 사우스 브릿지와, 플래시 메모리와, 상기 사우스 브릿지와 플래시 메모리 사이의 접속을 개폐하는 스위치와, 상기 사우스 브릿지와 플래시 메모리에 접속된 베이스보드 관리 컨트롤러를 포함하며, 상기 플래시 메모리의 펌웨어를 갱신할 때에, 상기 베이스보드 관리 컨트롤러로부터 상기 사우스 브릿지를 통해 상기 CPU에 인터럽트를 행하여 상기 플래시 메모리로의 액세스를 금지하고, 또한 상기 베이스보드 관리 컨트롤러를 경유하여 단말로부터 갱신되는 펌웨어를 상기 플래시 메모리에 기록한 후, 재기동을 행하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 서버 시스템은 제2 형태로서, 그 제1 형태에 있어서, 상기 베이스보드 관리 컨트롤러를 제어하는 관리 보드를 포함하며, 상기 플래시 메모리 펌웨어의 갱신을 행할 때에, 상기 관리 보드에 의해 상기 스위치를 제어하여 상기 사우스 브릿지와 플래시 메모리 사이의 접속을 비접속으로 하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 서버 시스템은 제3 형태로서, 그 제1 형태에 있어서, 상기 플래시 메모리와 이것에 접속된 베이스보드 관리 컨트롤러는 파티션으로 구분된 복수 시스템의 일시스템에 대응하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 서버 시스템은 제4 형태로서, 플래시 메모리에 저장되는 펌웨어에 의해 기동되는 서버 시스템으로서, CPU와, 사우스 브릿지와, 현재 사용과 예비용 플래시 메모리와, 상기 사우스 브릿지와 상기 현재 사용과 예비용 플래시 메모리와의 접속을 개폐하는 스위치와, 상기 현재 사용과 예비용 플 래시 메모리의 각각에 접속된 현재 사용과 예비용 베이스보드 관리 컨트롤러를 포함하며, 상기 플래시 메모리의 펌웨어를 갱신할 때에, 상기 예비용 베이스보드 관리 컨트롤러를 통해 단말로부터 갱신되는 펌웨어를 상기 예비용 플래시 메모리에 기록하고, 재기동시에 상기 스위치에 의해 상기 사우스 브릿지와의 접속을 상기 현재 사용 플래시 메모리에서 상기 예비용 플래시 메모리로 전환하여 상기 갱신된 펌웨어에 의해 시스템의 재기동을 행하는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하는 서버 시스템은 제5 형태로서, 그 제4 형태에 있어서, 상기 제1 및 제2 플래시 메모리와 이것에 접속된 제1 및 제2 베이스보드 관리 컨트롤러는 파티션으로 구분된 복수 시스템의 일시스템에 대응하는 것을 특징으로 한다.
본 발명의 특징은 이하의 도면에 따라 설명되는 발명의 실시예로부터 더욱 명백해진다.
본 발명에 의해 시스템 가동시에 펌웨어의 기록을 행함으로써, 펌웨어 갱신시의 시스템 정지 시간을 최소한으로 억제하는 것이 가능하게 된다. 또한, CPU를 통하지 않음으로써 CPU 및 노스 브릿지에 의해 장해 발생시에도 플래시 메모리의 재기록이 가능하게 된다.
또한, 예비 베이스보드 관리 컨트롤러와 플래시 메모리를 구비한 시스템에서는 시스템 가동 상태에서 예비 베이스보드 관리 컨트롤러와 플래시 메모리를 사용하여 갱신을 행하고, 그 후 버스 스위치를 전환하고 난 후에 재부팅함으로써, 사우스 브릿지로부터 펌웨어로의 액세스를 금지하지 않더라도 동일한 갱신이 가능하게 된다.
(실시예)
이하에 도면에 따라 본 발명의 실시예를 설명한다. 또한, 실시예는 본 발명의 이해를 위한 것이며, 본 발명의 기술적 범위가 이것에 한정되는 것은 아니다.
도 3은 본 발명을 적용하는 서버 시스템의 제1 실시예의 블록도이다. 도 4는 대응하는 본 발명의 방법의 실시예 동작 흐름도이다.
또한, 도 3에 있어서, 복수의 파티션으로 구분된 복수의 시스템을 구성하는 것도 가능하지만, 일시스템만을 도시하고 있다.
본 발명의 특징으로서, 도 1의 구성에 대해 관리 보드(MMB)(8)에 의해 제어되는 버스 스위치(14)를 구비하고 있다.
또한, 도 3에 있어서 도시되는 버스 변환 회로(13)는 베이스보드 관리 컨트롤러(BMC)(7)에 있어서의 버스 시스템과 플래시 메모리(5)의 버스 시스템이 다른 경우에, 이것을 변환하는 기능을 갖는 회로이다. 버스 변환 회로(13)의 기능을 베이스보드 관리 컨트롤러(BMC)(7)내에 배치하는 경우에는 개별 버스 변환 회로(13)를 준비하지 않아도 된다.
본 발명은 OS에 일부 기능, 베이스보드 관리 컨트롤러(BMC)(7)로부터 사우스 브릿지(4)에 인터럽트 기능을 포함해 두어야 한다.
도 4의 흐름도에 따라 설명하면, 플래시 메모리(5)를 갱신할 때는 사용자로부터의 커맨드에 의해 OS에 포함되는 인터럽트 기능 IR에 의해 베이스보드 관리 컨트롤러(BMC)(7)로부터 사우스 브릿지(4)에 인터럽트를 행한다(단계 S11).
동시에, 관리 보드(MMB)(8)에 의해 사우스 브릿지(4)와 플래시 메모리(5)간의 버스 스위치(14)를 비접속(OFF)으로 설정한다(단계 S12).
또한, 베이스보드 관리 컨트롤러(BMC)(7)를 경유하여 플래시 메모리(5)로의 갱신 펌웨어의 기록을 행한다(단계 S13). 이때, 베이스보드 관리 컨트롤러(BMC)(7)의 버스 시스템과 플래시 메모리(5)의 버스 시스템이 버스 교환 회로(13)에 의해 정합된다.
이어서, 갱신 펌웨어의 기록이 완료하면, 시스템을 재기동한다(단계 S14). 이것에 의해, 이후에 갱신된 펌웨어에 의해 시스템의 운용이 가능하다.
이와 같이 본 발명에 있어서는 펌웨어의 갱신에 앞서 시스템을 정지 상태로 하는 것을 피할 수 있다. 따라서, 도 1 및 도 2에 도시한 종래의 갱신 방법에 비하여 갱신에 필요한 시간을 단축할 수 있다.
여기서, 도 3 및 도 4에 도시하는 방법은 갱신에 필요한 시간을 단축할 수 있지만, 갱신 기간 중에는 플래시 메모리(5)에 액세스를 행할 수 없다(도 4의 흐름도 참조). 따라서, 플래시 메모리(5)에 액세스를 필요로 하는 시스템 운용 부분이 제한되게 된다.
도 5는 이러한 결점을 해결하는 본 발명에 따른 제2 실시예의 블록도이다. 도 6은 대응하는 본 발명의 방법의 실시예 동작 흐름도이다.
도 5에 도시하는 실시예는 특징으로서, 베이스보드 관리 컨트롤러(BMC)(7)와 대응하는 플래시 메모리(5)에 대해 예비용 베이스보드 관리 컨트롤러(BMC)(7a)와 대응하는 예비용 플래시 메모리(5a)를 갖고 있다.
또한, 도 6에 있어서도, 복수의 파티션으로 구분된 복수의 시스템을 구성하는 것도 가능하지만, 일시스템만을 도시하고 있다.
도 6의 처리 흐름도에 따라 제2 실시예에 있어서의 펌웨어의 갱신을 설명한다.
스위치(14)는 사우스 브릿지(4)와 제1 플래시 메모리(현재 사용 플래시 메모리라고 함)를 접속하는 스위치(Sw1)와, 사우스 브릿지(4)와 제2 플래시 메모리(예비용 플래시 메모리라고 함)를 접속하는 스위치(Sw2)를 갖고 있다.
시스템 가동 상태에 있어서, 스위치(Sw1)가 폐쇄 상태, 스위치(Sw2)가 개방 상태일 때, 제1 플래시 메모리(5)가 현재 사용, 제2 플래시 메모리(5a)가 예비용이라고 생각한다.
이 상태로, 단말(9)에 의해 펌웨어 매체(10)로부터 판독한 갱신하는 펌웨어를 제2 베이스보드 관리 컨트롤러(BMC)(7a)를 통해 예비용, 즉 제2 플래시 메모리(5a)에 기록한다(단계 S21).
제2 플래시 메모리(5a)에 펌웨어의 기록을 종료하면, 계속해서 재기동한다(단계 S22). 이때, 관리 보드(8)에 의해 스위치(14)를 제어하여 스위치(Sw1)를 개방 상태, 스위치(Sw2)를 폐쇄 상태로 전환한다.
따라서, 제2 플래시 메모리(5a)가 사우스 브릿지(4)에 접속된다. 이것에 의해 재기동시에는 제2 플래시 메모리(5a)에 갱신된 펌웨어에 의해 기동이 행해지고, 시스템의 운용이 행해진다. 그리고, 이때, 제1 베이스보드 관리 컨트롤러(BMC)(7) 및 제1 펌웨어(5)는 예비용이 된다.
이러한 제2 실시 형태에 의하면, 시스템 가동 중에 현재 사용 플래시 메모리에 대한 갱신은 행해지지 않고, 예비용 플래시 메모리에 갱신되는 펌웨어의 기록이 행해진다. 재기동시에는 갱신된 펌웨어를 저장하는 예비용 플래시 메모리가 현재 사용으로서 기능한다. 이러한 제2 실시예에 의하면, 가동 중 시스템에 영향을 전혀 부여하지 않는다.
(부기 1)
계산기 서버 시스템에 있어서의 펌웨어 갱신 방법으로서,
시스템 가동 상태에서 사우스 브릿지로부터 플래시 메모리로의 액세스를 차단하고,
단말로부터 갱신되는 펌웨어를 베이스보드 관리 컨트롤러를 경유하여 상기 플래시 메모리에 기록하며,
그 후, 재기동을 행하는 것을 특징으로 하는 펌웨어 갱신 방법.
(부기 2)
부기 1에 있어서,
상기 사우스 브릿지로부터 플래시 메모리로의 액세스를 차단할 때에, 상기 베이스보드 관리 컨트롤러로부터 상기 사우스 브릿지를 경유하여 CPU에 인터럽트를 행하고, 상기 플래시 메모리로의 액세스를 금지하는 것을 특징으로 하는 펌웨어 갱신 방법.
(부기 3)
예비측 베이스보드 관리 컨트롤러를 경유하여 대응하는 예비측 플래시 메모 리에 단말로부터 갱신되는 펌웨어 데이터를 기록하고,
재기동시에 상기 예비측 베이스보드 관리 컨트롤러와 상기 대응하는 예비측 플래시 메모리를 현재 사용측으로 전환하여 재기동을 행하는 것을 특징으로 하는 펌웨어 갱신 방법.
(부기 4)
플래시 메모리에 저장되는 펌웨어에 의해 기동되는 서버 시스템으로서,
CPU와,
사우스 브릿지와,
플래시 메모리와,
상기 사우스 브릿지와 플래시 메모리 사이의 접속을 개폐하는 스위치와,
상기 사우스 브릿지와 플래시 메모리에 접속된 베이스보드 관리 컨트롤러를 포함하고,
상기 플래시 메모리의 펌웨어를 갱신할 때에,
상기 베이스보드 관리 컨트롤러로부터 상기 사우스 브릿지를 통해 상기 CPU에 인터럽트를 행하여 상기 플래시 메모리로의 액세스를 금지하고,
또한, 상기 베이스보드 관리 컨트롤러를 경유하여 단말로부터 갱신되는 펌웨어를 상기 플래시 메모리에 기록한 후, 재기동을 행하는 것을 특징으로 하는 서버 시스템.
(부기 5)
부기 4에 있어서,
상기 베이스보드 관리 컨트롤러를 제어하는 관리 보드를 더 포함하고,
상기 플래시 메모리의 펌웨어를 갱신할 때에, 상기 관리 보드에 의해 상기 스위치를 제어하여 상기 사우스 브릿지와 플래시 메모리 사이의 접속을 비접속으로 하는 것을 특징으로 하는 서버 시스템.
(부기 6)
부기 4에 있어서,
상기 플래시 메모리와 이것에 접속된 베이스보드 관리 컨트롤러는 파티션으로 구분된 복수의 시스템의 일 시스템에 대응하는 것을 특징으로 하는 서버 시스템.
(부기 7)
플래시 메모리에 저장되는 펌웨어에 의해 기동되는 서버 시스템으로서,
CPU와,
사우스 브릿지와,
현재 사용 및 예비용 플래시 메모리와,
상기 사우스 브릿지와 상기 현재 사용 및 예비용 플래시 메모리와의 접속을 개폐하는 스위치와,
상기 현재 사용 및 예비용 플래시 메모리의 각각에 접속된 현재 사용 및 예비용 베이스보드 관리 컨트롤러를 포함하고,
상기 플래시 메모리의 펌웨어를 갱신할 때에,
상기 예비용 베이스보드 관리 컨트롤러를 통해 단말로부터 갱신되는 펌웨어 를 상기 예비용 플래시 메모리에 기록하고,
재기동시에, 상기 스위치에 의해 상기 사우스 브릿지와의 접속을 상기 현재 사용 플래시 메모리로부터 상기 예비용 플래시 메모리로 전환하여, 상기 갱신된 펌웨어에 의해 시스템의 재기동을 행하는 것을 특징으로 하는 서버 시스템.
(부기 8)
부기 7에 있어서,
상기 제1 및 제2 플래시 메모리와 이것에 접속된 제1 및 제2 베이스보드 관리 컨트롤러는 파티션으로 구분된 복수의 시스템의 일 시스템에 대응하는 것을 특징으로 하는 서버 시스템.
(산업상 이용 가능성)
본 발명에 의해 펌웨어의 갱신시, 시스템 정지 시간을 최소한으로 억제하거나 혹은 사우스 브릿지로부터 펌웨어로의 액세스를 금지하지 않고 갱신이 가능하게 된다. 이것에 의해 펌웨어의 갱신에 의한 시스템 가동시의 영향이 작아지며, 산업상 기여하는 점이 크다.
이상과 같이, 본 발명에 따르면 시스템 가동시에 펌웨어의 기록을 행함으로써, 펌웨어 갱신시의 시스템 정지 시간을 최소한으로 억제하는 것이 가능하게 된다. 또한, CPU를 통하지 않음으로써 CPU 및 노스 브릿지에 의해 장해 발생시에도 플래시 메모리의 재기록이 가능하게 된다.
또한, 예비 베이스보드 관리 컨트롤러와 플래시 메모리를 구비한 시스템에서 는 시스템 가동 상태에서 예비 베이스보드 관리 컨트롤러와 플래시 메모리를 사용하여 갱신을 행하고, 그 후 버스 스위치를 전환하고 난 후, 재부팅함으로써, 사우스 브릿지로부터 펌웨어로의 액세스를 금지하지 않더라도 동일한 갱신이 가능하게 된다.

Claims (5)

  1. 계산기 서버 시스템에 있어서의 펌웨어 갱신 방법으로서,
    시스템 가동 상태에서 사우스 브릿지로부터 플래시 메모리로의 액세스를 차단하는 단계와;
    단말로부터 갱신되는 펌웨어를 베이스보드 관리 컨트롤러를 경유하여 상기 플래시 메모리에 기록하는 단계와;
    그 기록 이후에, 재기동을 행하는 단계
    를 포함하는 것을 특징으로 하는 펌웨어 갱신 방법.
  2. 제1항에 있어서, 상기 사우스 브릿지로부터 플래시 메모리로의 액세스를 차단할 때에, 상기 베이스보드 관리 컨트롤러로부터 상기 사우스 브릿지를 경유하여 CPU에 인터럽트를 행하고, 상기 플래시 메모리로의 액세스를 금지하는 것을 특징으로 하는 펌웨어 갱신 방법.
  3. 예비측 베이스보드 관리 컨트롤러를 경유하여 대응하는 예비측 플래시 메모리에 단말로부터 갱신되는 펌웨어 데이터를 기록하는 단계와;
    재기동시에, 상기 예비측 베이스보드 관리 컨트롤러와 상기 대응하는 예비측 플래시 메모리를 현재 사용측으로 전환하여 재기동을 행하는 단계
    를 포함하는 것을 특징으로 하는 펌웨어 갱신 방법.
  4. 플래시 메모리에 저장되는 펌웨어에 의해 기동되는 서버 시스템으로서,
    CPU와;
    사우스 브릿지와;
    플래시 메모리와;
    상기 사우스 브릿지와 플래시 메모리 사이의 접속을 개폐하는 스위치와;
    상기 사우스 브릿지와 플래시 메모리에 접속된 베이스보드 관리 컨트롤러
    를 포함하고,
    상기 플래시 메모리의 펌웨어를 갱신할 때에,
    상기 베이스보드 관리 컨트롤러로부터 상기 사우스 브릿지를 통해 상기 CPU에 인터럽트를 행하여 상기 플래시 메모리로의 액세스를 금지하고,
    상기 베이스보드 관리 컨트롤러를 경유하여 단말로부터 갱신되는 펌웨어를 상기 플래시 메모리에 기록한 후, 재기동을 행하는 것을 특징으로 하는 서버 시스템.
  5. 제4항에 있어서,
    상기 베이스보드 관리 컨트롤러를 제어하는 관리 보드를 더 포함하고,
    상기 플래시 메모리의 펌웨어를 갱신할 때에, 상기 관리 보드에 의해 상기 스위치를 제어하여 상기 사우스 브릿지와 플래시 메모리 사이의 접속을 비접속으로 하는 것을 특징으로 하는 서버 시스템.
KR1020050063553A 2005-03-16 2005-07-14 계산기 서버 시스템에 있어서의 펌웨어 갱신 방법 KR100767654B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005075546A JP2006260058A (ja) 2005-03-16 2005-03-16 計算機サーバ・システムにおけるファームウェアアップデート方法
JPJP-P-2005-00075546 2005-03-16

Publications (2)

Publication Number Publication Date
KR20060101150A true KR20060101150A (ko) 2006-09-22
KR100767654B1 KR100767654B1 (ko) 2007-10-17

Family

ID=36581761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050063553A KR100767654B1 (ko) 2005-03-16 2005-07-14 계산기 서버 시스템에 있어서의 펌웨어 갱신 방법

Country Status (5)

Country Link
US (1) US7631174B2 (ko)
EP (1) EP1703380A3 (ko)
JP (1) JP2006260058A (ko)
KR (1) KR100767654B1 (ko)
CN (1) CN100474247C (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4679943B2 (ja) * 2005-03-23 2011-05-11 ヒタチグローバルストレージテクノロジーズネザーランドビーブイ データ記憶装置及びその不揮発性メモリ内データ書き換え処理方法
US20070169084A1 (en) * 2005-12-12 2007-07-19 Frank Davis W Persistent maintenance of customization data on computing devices
US20070260790A1 (en) * 2006-04-03 2007-11-08 Jerry Chen Embedded controller and method for updating the firmware thereof
US7797526B2 (en) * 2006-06-08 2010-09-14 Oracle America, Inc. Service processor host flash update over LPC
US7870548B2 (en) * 2007-01-05 2011-01-11 Inventec Corporation Method for updating an image file
US20080244553A1 (en) * 2007-03-28 2008-10-02 Daryl Carvis Cromer System and Method for Securely Updating Firmware Devices by Using a Hypervisor
CN101295255B (zh) * 2007-04-27 2011-05-18 英业达股份有限公司 固件更新系统及方法
US8091085B2 (en) * 2007-10-29 2012-01-03 International Business Machines Corporation Installation of updated software for server components
US8201161B2 (en) * 2008-01-07 2012-06-12 Lenovo (Singapore) Pte. Ltd. System and method to update device driver or firmware using a hypervisor environment without system shutdown
US20090228641A1 (en) * 2008-03-07 2009-09-10 Kabushiki Kaisha Toshiba Information processing apparatus and non-volatile semiconductor memory drive
TW201033808A (en) * 2009-03-10 2010-09-16 Vivotek Inc System recovery method and embedded system with auto-recovery function
JP5346253B2 (ja) * 2009-08-24 2013-11-20 株式会社日立ソリューションズ ファームウェア更新システム、及び情報機器、並びにプログラム
US8386764B2 (en) * 2010-01-18 2013-02-26 Inventec Corporation BIOS architecture
JP5013324B2 (ja) * 2010-01-29 2012-08-29 日本電気株式会社 コンピュータ装置及びそのbiosアップデート方法
CN102331959A (zh) * 2010-07-12 2012-01-25 鸿富锦精密工业(深圳)有限公司 伺服器系统
JP5640154B2 (ja) * 2010-10-16 2014-12-10 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. デバイスハードウェアエージェント
US20120110562A1 (en) * 2010-10-27 2012-05-03 David Heinrich Synchronized firmware update
CN102455950A (zh) * 2010-10-28 2012-05-16 鸿富锦精密工业(深圳)有限公司 基板管理控制器的韧体恢复系统及方法
JP5182349B2 (ja) * 2010-11-01 2013-04-17 日本電気株式会社 情報処理装置、情報処理システム、bios設定更新方法およびプログラム
TWI486770B (zh) * 2010-11-01 2015-06-01 Hon Hai Prec Ind Co Ltd 基板管理控制器的韌體恢復系統及方法
CN102622044B (zh) * 2011-01-28 2014-04-02 微盟电子(昆山)有限公司 主机板及其pcie端口动态配置方法
CN103136012B (zh) * 2011-11-30 2015-03-04 英业达科技有限公司 计算机系统及其基本输入输出系统的更新方法
CN102520768B (zh) * 2011-12-29 2014-11-26 曙光信息产业股份有限公司 一种刀片服务器主板及系统
US8594850B1 (en) * 2012-09-30 2013-11-26 Nest Labs, Inc. Updating control software on a network-connected HVAC controller
CN103793238A (zh) * 2012-10-31 2014-05-14 英业达科技有限公司 机柜与其同时更新多个基本输入输出系统的方法
CN103809990B (zh) * 2012-11-09 2016-12-21 英业达科技有限公司 伺服器
CN104346188A (zh) * 2013-08-07 2015-02-11 英业达科技有限公司 基板管理控制器的更新方法以及基板管理控制器更新系统
CN104571434A (zh) * 2013-10-22 2015-04-29 英业达科技有限公司 服务器及其重新开机方法
US20160027516A1 (en) * 2014-07-24 2016-01-28 Elster Solutions, Llc Efficient modification of data in non-volatile memory
CN105700969B (zh) * 2014-11-25 2018-11-30 英业达科技有限公司 服务器系统
US9710284B1 (en) * 2016-02-02 2017-07-18 Mitac Computing Technology Corporation System for programmably configuring a motherboard
WO2017142559A1 (en) * 2016-02-19 2017-08-24 Hewlett-Packard Development Company, L.P. Securely writing data to a secure data storage device during runtime
CN106055361B (zh) * 2016-05-31 2020-04-17 深圳市同泰怡信息技术有限公司 基于bmc的多种不同机型的集成式固件实现方法及系统
TWI636400B (zh) * 2017-08-02 2018-09-21 宇瞻科技股份有限公司 快速更新韌體之儲存裝置
CN110162326A (zh) * 2018-02-13 2019-08-23 北京京东尚科信息技术有限公司 固件升级的方法和包含硬盘的系统
CN111124460A (zh) * 2019-12-02 2020-05-08 北京计算机技术及应用研究所 一种基于p2a桥的自主可控服务器bmc在线更新方法
CN112000351B (zh) * 2020-08-07 2023-04-07 北京浪潮数据技术有限公司 Bmc固件的更新方法、更新装置、更新设备及存储介质

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09319585A (ja) * 1996-05-30 1997-12-12 Fujitsu Ltd ローディング装置
US5793943A (en) * 1996-07-29 1998-08-11 Micron Electronics, Inc. System for a primary BIOS ROM recovery in a dual BIOS ROM computer system
KR200298474Y1 (ko) * 1997-12-29 2003-04-18 엘지정보통신주식회사 플래쉬 메모리 갱신 중의 프로그램 보호 장치
JP3562563B2 (ja) 1998-06-12 2004-09-08 ティアック株式会社 交換型記録媒体を使用するデ−タ蓄積装置
US6892323B2 (en) * 1999-05-05 2005-05-10 Giga-Byte Technology Co., Ltd. Dual basic input/output system for a computer
JP4375857B2 (ja) 1999-05-13 2009-12-02 富士通コンポーネント株式会社 プログラム再書き込み機能付コンピュータ
US6754828B1 (en) * 1999-07-13 2004-06-22 Intel Corporation Algorithm for non-volatile memory updates
JP2001075810A (ja) * 1999-09-03 2001-03-23 Toshiba Corp コンピュータシステム、拡張ボードおよびコンピュータシステムにおける拡張ボードの機能更新方法
US6718407B2 (en) * 1999-09-30 2004-04-06 Intel Corporation Multiplexer selecting one of input/output data from a low pin count interface and a program information to update a firmware device from a communication interface
KR100359200B1 (ko) * 2000-01-12 2002-11-01 주식회사 엘지이아이 펌웨어 운용방법
US6971095B2 (en) 2000-05-17 2005-11-29 Fujitsu Limited Automatic firmware version upgrade system
US6675258B1 (en) 2000-06-30 2004-01-06 Lsi Logic Corporation Methods and apparatus for seamless firmware update and propagation in a dual raid controller system
US6944854B2 (en) 2000-11-30 2005-09-13 International Business Machines Corporation Method and apparatus for updating new versions of firmware in the background
JP2002244874A (ja) 2001-02-15 2002-08-30 Toshiba Corp 情報処理装置およびファームウェア更新方法
JP2002259130A (ja) * 2001-03-02 2002-09-13 Toshiba Corp 情報処理システムおよびその起動制御方法
JP2002342102A (ja) * 2001-05-16 2002-11-29 Nec Corp プログラム更新方法およびプログラム更新方式
US7000103B2 (en) * 2001-12-21 2006-02-14 Inventec Corporation Method for updating a system BIOS by reading a BIOS stored in an IDE-interface connected to a hard disk drive
US7237075B2 (en) * 2002-01-22 2007-06-26 Columbia Data Products, Inc. Persistent snapshot methods
JP2003330655A (ja) 2002-05-14 2003-11-21 Canon Inc 画像形成装置および画像形成装置の制御方法およびコンピュータが読み取り可能な記憶媒体およびプログラム
US7305668B2 (en) * 2002-07-31 2007-12-04 Intel Corporation Secure method to perform computer system firmware updates
US20040030877A1 (en) 2002-08-06 2004-02-12 Aleksandr Frid Using system BIOS to update embedded controller firmware
US20040076043A1 (en) * 2002-10-21 2004-04-22 Phoenix Technologies Ltd. Reliable and secure updating and recovery of firmware from a mass storage device
TW588282B (en) * 2002-10-22 2004-05-21 Via Tech Inc System capable of managing peripheral input/output control device
US7337309B2 (en) * 2003-03-24 2008-02-26 Intel Corporation Secure online BIOS update schemes
US7293165B1 (en) * 2003-04-03 2007-11-06 Advanced Micro Devices, Inc. BMC-hosted boot ROM interface
KR20040096734A (ko) * 2003-05-10 2004-11-17 엘지전자 주식회사 휴대폰의 펌웨어 업그레이드 방법
US7188238B2 (en) * 2003-05-21 2007-03-06 Intel Corporation Methods and apparatus to update a basic input/output system (BIOS)
US7222339B2 (en) * 2003-06-13 2007-05-22 Intel Corporation Method for distributed update of firmware across a clustered platform infrastructure
TWI229818B (en) * 2003-12-15 2005-03-21 Wistron Corp Method and device for updating firmware
KR20050079385A (ko) * 2004-02-05 2005-08-10 삼성전자주식회사 신호 송/수신 방법과, 이를 수행하기 위한 표시 장치와,이의 구동 장치 및 그 방법
US7457945B2 (en) * 2004-03-23 2008-11-25 Dell Products L.P. System and method for providing a secure firmware update to a device in a computer system
US7809836B2 (en) * 2004-04-07 2010-10-05 Intel Corporation System and method for automating bios firmware image recovery using a non-host processor and platform policy to select a donor system
TWI238355B (en) * 2004-05-06 2005-08-21 Lite On It Corp Firmware updating method
US7698487B2 (en) * 2004-06-30 2010-04-13 Intel Corporation Share resources and increase reliability in a server environment
US7409539B2 (en) * 2004-08-06 2008-08-05 International Business Machines Corporation System design and code update strategy to implement a self-healing, self-verifying system
US20070260790A1 (en) * 2006-04-03 2007-11-08 Jerry Chen Embedded controller and method for updating the firmware thereof
US7797526B2 (en) * 2006-06-08 2010-09-14 Oracle America, Inc. Service processor host flash update over LPC
TW200825915A (en) * 2006-12-07 2008-06-16 Wistron Corp Computer system and related method for preventing from failing to update BIOS program

Also Published As

Publication number Publication date
CN1834915A (zh) 2006-09-20
EP1703380A2 (en) 2006-09-20
JP2006260058A (ja) 2006-09-28
EP1703380A3 (en) 2006-10-25
US7631174B2 (en) 2009-12-08
CN100474247C (zh) 2009-04-01
KR100767654B1 (ko) 2007-10-17
US20060212694A1 (en) 2006-09-21

Similar Documents

Publication Publication Date Title
KR100767654B1 (ko) 계산기 서버 시스템에 있어서의 펌웨어 갱신 방법
US6836859B2 (en) Method and system for version control in a fault tolerant system
US6668261B1 (en) Method of upgrading a program using associated configuration data
JP5655677B2 (ja) ハイパーバイザ置き換え方法および情報処理装置
JP3177117B2 (ja) 複数のノード内の制御コードを更新する方法および装置
WO2010035596A1 (ja) ファームウェア更新装置及び方法
US20040030877A1 (en) Using system BIOS to update embedded controller firmware
US7827376B2 (en) System and method for protecting hidden protected area of HDD during operation
JP2002132518A (ja) 仮想計算機システムおよび仮想計算機間の入出力装置交換方法
JPH11242592A (ja) 固定フラッシュロムのデータ更新装置及びデータ更新方法
JP2003345730A (ja) インタフェース装置、インタフェース装置におけるファームウェアの更新方法、及びそのプログラム
JP2003050744A (ja) コンピュータシステム
CN113641378A (zh) 光模块程序升级方法、装置、设备及可读存储介质
WO2004081791A1 (ja) 仮想計算機システム、仮想計算機システムにおけるファームウェアアップデート方法
JP4190789B2 (ja) コンピュータシステムにおけるpci拡張カードの自動隠蔽方法、およびそのシステム
WO2011158367A1 (ja) 実行中のプログラムの更新技術
CN111868698A (zh) 空闲空间直通
JP2019074950A (ja) 情報処理装置、制御装置、制御方法及び制御プログラム
JP2001154896A (ja) 計算機およびそのファイル更新方法
JP5157789B2 (ja) プログラム更新方法及びプログラム更新装置
JP6682897B2 (ja) 通信設定方法、通信設定プログラム、情報処理装置および情報処理システム
KR20070083138A (ko) 임베디드 시스템 및 임베디드 시스템의 펌웨어 업데이트방법
JP2005266948A (ja) コアi/oカードを実装したシステムボード
JP2001273143A (ja) 電子制御装置
JP2005321967A (ja) 情報処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20110920

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee