KR100440950B1 - 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스 - Google Patents

네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스 Download PDF

Info

Publication number
KR100440950B1
KR100440950B1 KR10-2001-0038804A KR20010038804A KR100440950B1 KR 100440950 B1 KR100440950 B1 KR 100440950B1 KR 20010038804 A KR20010038804 A KR 20010038804A KR 100440950 B1 KR100440950 B1 KR 100440950B1
Authority
KR
South Korea
Prior art keywords
software
memory
network device
network
stored
Prior art date
Application number
KR10-2001-0038804A
Other languages
English (en)
Other versions
KR20030002068A (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 KR10-2001-0038804A priority Critical patent/KR100440950B1/ko
Priority to CNB011436611A priority patent/CN1178133C/zh
Priority to JP2001395055A priority patent/JP2003029997A/ja
Priority to EP01310903A priority patent/EP1271311A3/en
Priority to US10/046,912 priority patent/US20030005351A1/en
Publication of KR20030002068A publication Critical patent/KR20030002068A/ko
Application granted granted Critical
Publication of KR100440950B1 publication Critical patent/KR100440950B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading

Abstract

네트워크 환경에서 소프트웨어를 업그레이드할 때, 발생된 장애로 네트워크 디바이스의 동작에 치명적인 결과를 초래하지 않도록 소프트웨어를 업그레이드하는 소프트웨어 업그레이드 방법 및 그에 따른 네트워크 디바이스에 관한 것이다.
본 발명에 따른 방법은, 네트워크를 통해 네트워크 디바이스의 소프트웨어를 업그레이드할 수 있는 방법에 있어서, 네트워크를 통해 소정의 소프트웨어를 업그레이드하면서 적어도 어느 하나의 장애가 발생되는지를 체크하는 단계; 체크결과, 장애가 발생된 경우에는 소정의 소프트웨어를 업그레이드하기 이전의 구 버전 소프트웨어를 토대로 네트워크 디바이스를 운영하고, 장애가 발생되지 않으면 소정의 소프트웨어를 업그레이드한 신규 버전의 소프트웨어를 토대로 네트워크 디바이스를 운영하는 단계를 포함한다.
따라서, 소프트웨어에 대한 업그레이드가 정상적으로 수행되지 않아도 외부기억장치를 이용하거나 별도의 서비스(A/S)를 받을 필요 없이 네트워크 디바이스를 이용하여 다시 원하는 소프트웨어에 대한 업그레이드를 시도할 수 있다.

Description

네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및 그에 따른 네트워크 디바이스{Method for upgrading software in network environment and network device thereof}
본 발명은 네트워크 환경에 있어서 소프트웨어 업그레이드(upgrade) 방법 및 그에 따른 네트워크 디바이스에 관한 것으로, 특히, 소프트웨어 업그레이드 시, 예기치 못한 네트워크 장애나 네트워크 디바이스(network device)의 장애에 대해 네트워크 디바이스를 보호할 수 있는 소프트웨어 업그레이드 방법 및 그에 따른 네트워크 디바이스에 관한 것이다.
네트워크 환경이 발달함에 따라 네트워크를 통한 서비스 제공자나 네트워크 운영자 또는 네트워크 디바이스 사용자에 의해 네트워크 디바이스의 소프트웨어를 업그레이드하고자 하는 요구가 증가하고 있다. 네트워크 디바이스로는 예를 들어네트워크를 통해 데이터를 송수신할 수 있는 이동 또는 휴대용 전화기나 개인용 컴퓨터들이 포함될 수 있다.
그러나, 네트워크 디바이스의 소프트웨어를 업그레이드할 때, 네트워크 디바이스에 예기치 않은 장애가 발생되거나 네트워크에 장애가 발생되면, 정상적으로 업그레이드를 완료하지 못할 뿐만 아니라 네트워크 디바이스에 치명적인 결과를 초래할 수 있다.
즉, 네트워크 디바이스의 소프트웨어를 업그레이드하기 위하여 네트워크를 통해 해당 소프트웨어의 신규 버전을 다운로드 할 때, 네트워크에 장애가 발생되면 신규 버전 소프트웨어를 정상적으로 다운로드 할 수 없다. 이러한 경우에는 다시 신규 버전 소프트웨어에 대한 다운로드를 시도하는 것으로 해결할 수 있다.
그러나, 소프트웨어를 업그레이드하기 위하여 디바이스내의 구 버전(old version) 소프트웨어를 삭제(erase)한 후, 해당되는 저장영역에 신규 버전(new version) 소프트웨어를 저장하고 있는 상태에서 네트워크 디바이스에 예기치 못한 장애가 발생되면, 네트워크 디바이스는 신규 버전 소프트웨어를 정상적으로 저장하지 못하게 된다. 이로 인하여 네트워크 디바이스는 해당되는 소프트웨어를 이용한 기능을 전혀 수행할 수 없게 된다.
즉, 업그레이드하고자 하는 소프트웨어가 네트워크 디바이스 구동에 막대한 영향을 미치지 않는 경우에 상술한 바와 같이 네트워크 디바이스에 예기치 못한 장애가 발생되면, 네트워크 디바이스에 구비되어 있는 인터페이스 블록을 통해 외부 기억장치와 연결시켜 해당되는 소프트웨어를 다시 다운 로드하는 방식으로 해결할수 있다. 그러나 이와 같이 해결할 경우에, 상기 외부 기억장치에 항상 신규 버전의 소프트웨어가 기억되어 있도록 관리하거나 적어도 현재 네트워크 디바이스에 저장되어 있던 버전의 소프트웨어가 기억되어 있도록 관리하여야 하는 번거로움이 있다.
또한, 업그레이드하고자 하는 소프트웨어가 OSOS(Operating System, 이하 OS라고 약함)와 같이 디바이스 구동에 막대한 영향을 미치는 경우에 상술한 바와 같이 네트워크 디바이스에 예기치 못한 장애가 발생되면, 네트워크 디바이스를 전혀 동작시킬 수 없는 치명적인 결과를 얻게 된다. 따라서 상술한 바와 같이 외부 기억장치를 이용하는 방식만으로는 해결할 수 없고 해당되는 칩(chip)을 교체하거나 해당되는 네트워크 디바이스를 교체하여야만 한다.
본 발명은 상술한 문제들을 해결하기 위한 것으로, 네트워크 환경에서 소프트웨어를 업그레이드할 때, 발생된 장애로 네트워크 디바이스의 동작에 치명적인 결과를 초래하지 않도록 소프트웨어를 업그레이드하는 소프트웨어 업그레이드 방법 및 그에 따른 네트워크 디바이스를 제공하는데 그 목적이 있다.
본 발명의 다른 목적은 네트워크 환경에서 소프트웨어를 업그레이드할 때, 장애가 발생되어 정상적인 업그레이드가 이루어지지 않아도 네트워크 디바이스가 정상적으로 동작할 수 있도록 소프트웨어를 업그레이드하는 소프트웨어 업그레이드 방법 및 그에 따른 네트워크 디바이스를 제공하는데 있다.
상기 목적들을 달성하기 위하여 본 발명에 따른 소프트웨어 업그레이드 방법은, 네트워크를 통해 네트워크 디바이스의 소프트웨어를 업그레이드할 수 있는 방법에 있어서, 네트워크를 통해 소정의 소프트웨어를 업그레이드하면서 적어도 어느 하나의 장애가 발생되는지를 체크하는 단계; 체크결과, 적어도 하나의 장애가 발생된 경우, 소정의 소프트웨어를 업그레이드하기 이전의 구 버전 소프트웨어를 토대로 네트워크 디바이스를 운영하는 단계; 체크결과, 장애가 발생되지 않으면, 소정의 소프트웨어를 업그레이드한 신규 버전의 소프트웨어를 토대로 네트워크 디바이스를 운영하는 단계를 포함하는 것이 바람직하다.
상기 소프트웨어 업그레이드는, 네트워크를 통해 상기 신규 버전 소프트웨어를 다운 로드하는 단계; 네트워크 디바이스에 저장되어 있는 구 버전의 소프트웨어를 네트워크 디바이스내의 다른 저장영역에 복사하는 단계; 네트워크 디바이스에 저장되어 있는 구 버전의 소프트웨어를 삭제하는 단계; 구 버전의 소프트웨어가 저장되어 있던 영역에 신규 버전 소프트웨어를 저장시키는 단계를 통해 이루어지는 것을 특징으로 하는 것이 바람직하다.
상기 장애는 삭제 단계 및 저장 단계를 수행하는 기간동안 체크되는 네트워크 디바이스내의 장애인 것을 특징으로 하는 것이 바람직하다.
상기 목적들을 달성하기 위하여 본 발명에 따른 소프트웨어 업그레이드 장치는, 네트워크를 통해 소프트웨어를 업그레이드할 수 있는 네트워크 디바이스에 있어서, 소정의 소프트웨어를 업그레이드하는 기간동안 적어도 하나의 장애를 모니터링 하는 모니터링 수단; 네트워크 디바이스 운영에 필요한 소프트웨어를 저장하고 있는 제 1 메모리; 네트워크를 통해 전송되는 정보를 저장할 수 있는 제 2 메모리;소정의 소프트웨어를 업그레이드하기 위하여 네트워크를 통해 다운 로드되는 정보를 제 2 메모리에 저장시키고, 제 2 메모리에 저장된 정보로 제 1 메모리에 저장되어 있는 소정의 소프트웨어에 대한 구 버전 소프트웨어를 업그레이드하기 전에 구 버전 소프트웨어가 제 1 메모리의 빈 영역에 저장되도록 제어하는 제어부; 제어부로부터 제공되는 제어신호와 모니터링 수단으로부터 제공되는 모니터링 결과에 의해 제 1 메모리와 제 2 메모리 중 소정의 소프트웨어를 업그레이드하기 위하여 사용될 메모리를 선택하고 어드레스를 지정하는 동작을 수행하는 디코더를 포함하는 것이 바람직하다.
상기 목적들을 달성하기 위하여 본 발명에 따른 장치는, 네트워크를 통해 소프트웨어를 업그레이드할 수 있는 네트워크 디바이스에 있어서, 소정의 소프트웨어를 업그레이드하는 기간동안 적어도 하나의 장애를 모니터링 하는 모니터링 수단; 네트워크 디바이스 운영에 필요한 소프트웨어를 저장하고 있는 제 1 메모리; 네트워크 디바이스 운영에 필요한 데이터를 저장할 수 있는 제 2 메모리; 네트워크를 통해 전송되는 정보를 저장할 수 있는 제 3 메모리; 소정의 소프트웨어를 업그레이드하기 위하여 네트워크를 통해 다운 로드되는 정보를 제 3 메모리에 저장시키고, 제 3 메모리에 저장된 정보로 제 1 메모리에 저장되어 있는 소정의 프로그램에 대한 구 버전 소프트웨어를 업그레이드하기 전에 구 버전 소프트웨어가 제 2 메모리의 빈 영역에 저장되도록 제어하는 제어부; 제어부로부터 제공되는 제어신호와 모니터링 수단으로부터 제공되는 모니터링 결과에 의해 소정의 소프트웨어를 업그레이드하기 위해 사용될 메모리를 선택하고, 어드레스를 지정하는 동작을 수행하는디코더를 포함하는 것이 바람직하다.
도 1은 본 발명에 따른 네트워크 디바이스의 블록 도이다.
도 2는 본 발명에 따른 소프트웨어 업그레이드 방법에 대한 동작 흐름 도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세히 설명하기로 한다.
도 1은 본 발명에 따른 네트워크 디바이스의 블록 도이다. 도 1을 참조하면 본 발명에 따른 네트워크 디바이스는 모니터링 수단(100), 네트워크 인터페이스부(104), 칩 선택/어드레스 디코더(105), 제어부(106), CAS(Conditional Access System, 이하 CAS라고 약함)(107), 코드용 데이터를 저장하기 위한 플래시 메모리(108), 데이터 저장용 비휘발성 메모리(109), 실행용 데이터 저장용인 시스템 메모리(110)로 구성된다.
모니터링 수단(100)은 네트워크 디바이스의 임의의 소프트웨어를 업그레이드하는 기간동안 적어도 하나의 장애를 모니터링하기 위한 것으로, 시스템 감시(watch-dog) 모니터(101), 전원 장애(fail) 모니터(102), 네트워크 연결 모니터(103)로 구성된다.
시스템 감시 모니터(101)는 네트워크 디바이스의 동작을 감시할 수 있는 클록신호의 발생상태를 감시하여 네트워크 디바이스가 정상적으로 동작하는지를 감시하고, 그 결과를 칩 선택/어드레스 디코더(105)로 제공한다.
전원 장애 모니터(102)는 네트워크 디바이스내의 전원부(미 도시됨)로부터 제공되는 전원 전압이 소정 레벨 이하로 떨어지는지를 모니터링하고, 그 결과를 칩 선택/어드레스 디코더(105)로 제공한다.
네트워크 연결 모니터(103)는 네트워크 인터페이스부(104)를 통해 송수신되는 데이터의 상태를 모니터링하고, 그 결과를 칩 선택/어드레스 디코더(105)로 제공한다.
네트워크 인터페이스부(104)는 미 도시된 네트워크를 통해 업그레이드하고자 하는 소프트웨어의 신규 버전의 소프트웨어를 제공하는 측과 도 1에 도시된 네트워크 다바이스 간의 데이터 통신을 가능하게 하기 위한 인터페이스 처리를 한다. 특히 수신되는 소프트웨어에 대한 디코딩 및 수신된 데이터에 대한 에러체크 기능도 수행하도록 구현할 수 있다. 데이터 에러 체크는 체크 섬(checksum)방식으로 이루어지도록 구현할 수 있다.
CAS(107)는 네트워크를 통해 소프트웨어를 제공하는 측과 도 1에 도시된 네트워크 디바이스간에 데이터를 송수신하면서 소프트웨어 업그레이드를 위한 네트워크 디바이스에 대한 인증처리를 수행한다. 즉, CAS(107)는 네트워크 디바이스가 해당되는 소프트웨어에 대한 업그레이드 자격이 있는 디바이스인지를 검증하는 처리를 수행한다. 이 때, 임의의 소프트웨어에 대한 업그레이드는 소프트웨어를 제공하는 측에서 임의적으로 결정하여 수행되거나 네트워크 디바이스 사용자의 요구에 의해 수행될 수 있다.
플래시 메모리(108)는 코드용 데이터를 저장하기 위한 것으로, OS와 같이 네트워크 디바이스 운영에 필요한 소프트웨어들을 저장하는 메모리이다. 플래시 메모리(108)에 저장되어 있는 임의의 소프트웨어를 업그레이드할 때, 플래시 메모리(108)에 빈 영역이 존재하면, 칩 선택/어드레스 디코더(105)의 동작에 의해구 버전 소프트웨어에 해당되는 상기 임의의 소프트웨어를 상기 빈 영역에 저장시킬 수도 있다.
비휘발성 메모리(109)는 데이터 저장용으로서, 네트워크 디바이스 운영에 필요한 데이터들을 저장하는 메모리이다. 특히, 플래시 메모리(108)에 저장되어 있는 임의의 소프트웨어를 업그레이드할 때, 칩 선택/어드레스 디코더(105)의 동작에 의해 비휘발성 메모리(109)에 존재하는 빈 영역에 상기 플래시 메모리(108)에 저장되어 있는 구 버전에 해당되는 소프트웨어를 저장하기도 한다.
시스템 메모리(110)는 네트워크 디바이스가 구동하면서 네트워크를 통해 전송되는 정보를 저장하는 역할을 한다.
제어부(106)는 본 발명에 따라 해당되는 네트워크 디바이스가 소프트웨어를 업그레이드할 수 있도록 제어한다. 즉, 네트워크 인터페이스부(104)와 CAS(107)를 통해 업그레이드 하고자 하는 소프트웨어의 신규 버전이 다운 로드되면, 시스템 메모리(110)에 저장될 수 있도록 칩 선택/어드레스 디코더(105)로 제어신호를 제공한다.
이에 따라 칩 선택/어드레스 디코더(105)는 수신된 신규 버전의 소프트웨어가 시스템 메모리(110)의 원하는 위치에 저장될 수 있도록, 칩 선택신호는 시스템 메모리(110)에 대한 것으로 설정하고 어드레스는 시스템 메모리(110)의 저장될 위치를 지정할 수 있도록 설정한다.
그 다음, 제어부(106)는 플래시 메모리(108)에 저장되어 있는 업그레이드하고자 하는 구 버전의 소프트웨어가 플래시 메모리(108)의 빈 영역 또는 비휘발성메모리(109)의 빈 영역에 저장할 수 있도록 칩 선택/어드레스 디코더(105)로 제어신호를 제공한다.
이에 따라 칩 선택/어드레스 디코더(105)는 상기 구 버전의 소프트웨어를 플래시 메모리(108)의 빈 영역에 저장시킬 경우에, 그에 따른 경로가 설정될 수 있도록 칩 선택 및 어드레스를 설정한다. 즉, 칩 선택/어드레스 디코더(105)는 칩 선택신호는 변경하지 않고 어드레스만 변경시킨다. 그리고, 상기 구 버전의 소프트웨어를 비휘발성 메모리(109)의 빈 영역에 저장시킬 경우에, 그에 따른 경로가 설정될 수 있도록 칩 선택 및 어드레스를 설정한다. 즉, 칩 선택/어드레스 디코더(105)는 칩 선택 신호와 어드레스를 변경시킨다. 이 때, 비휘발성 메모리(109)의 빈 영역의 시작 어드레스가 플래시 메모리(108)에 저장되어 있는 구 버전 소프트웨어가 저장된 영역의 시작 어드레스와 동일할 경우에는 칩 선택신호만 변경된다. 이로 인하여 플래시 메모리(108)에 저장되어 있는 구 버전 소프트웨어가 다른 영역으로 복사되게 된다.
그리고, 제어부(106)는 시스템 메모리(110)에 저장되어 있는 신규 버전의 소프트웨어를 플래시 메모리(108)에 저장되어 있는 구 버전 소프트웨어가 저장되어 있는 영역으로 저장시켜 해당되는 소프트웨어가 업그레이드 되도록, 칩 선택/어드레스 디코더(105)로 제어신호를 제공한다. 상기 구 버전 소프트웨어가 저장된 영역은 상기 복사가 이루어지기 전의 플래시 메모리(108)상의 영역으로서, 구 버전 소프트웨어가 저장되어 있던 원래의 영역이다.
칩 선택/어드레스 디코더(105)는 제어부(106)로부터 제공되는 제어신호에 의해 시스템 메모리(110)에 저장되어 있던 신규 버전의 소프트웨어가 플래시 메모리(108)에 저장되도록 칩 선택 및 어드레스를 설정한다.
이와 같이 소프트웨어 업그레이드를 수행하는 기간동안 칩 선택/어드레스 디코더(105)는 모니터링 수단(100)으로부터 제공되는 모니터링 결과를 계속 감시한다. 따라서, 상술한 바와 같이 신규 버전의 소프트웨어를 시스템 메모리(110)로 다운 로드하고 있는 동안에 네트워크 연결 모니터(103)로부터 장애를 나타내는 신호가 전송되면, 칩 선택/어드레스 디코더(105)는 초기화 상태로 설정된다.
그리고, 시스템 메모리(110)에 저장되어 있는 정보를 플래시 메모리(108)에 저장시키는 동안에 시스템 감시 모니터(101) 또는 전원 장애 모니터(102)로부터 장애를 나타내는 신호가 전송되면, 칩 선택/어드레스 디코더(105)는 구 버전의 소프트웨어를 토대로 네트워크 디바이스를 재시작(restart)할 수 있도록 필요한 메모리 선택을 위한 칩 선택 및 어드레스를 지정한다.
도 2는 본 발명에 따른 소프트웨어 업그레이드 방법에 대한 동작 흐름 도이다.
제 201 단계에서 초기화 상태를 유지하고 있는 상태에서 제 202 단계에서 소프트웨어 제공자와 도 1에 도시된 바와 같은 네트워크 디바이스간에 네트워크 연결이 설정되면, 제 203 단계에서 임의의 소프트웨어에 대해 소프트웨어 제공자가 제공하고자 하는 버전과 네트워크 디바이스에 구비되어 있는 버전을 비교한다. 비교결과, 네트워크 디바이스에 구비되어 있는 소프트웨어 버전이 구 버전이 아니면 해당되는 소프트웨어에 대한 업그레이드가 필요치 않으므로 제 201 단계로 진행되어네트워크 디바이스는 초기화 상태를 유지한다.
그러나, 비교결과, 네트워크 디바이스에 구비되어 있는 소프트웨어가 구 버전이면, 제 204 단계에서 해당되는 소프트웨어에 대한 업그레이드를 시작한다. 이에 따라 제 205 단계에서 사용자 인증작업이 이루어진다. 즉, 도 1의 CAS에서 설명한 바와 같이 소프트웨어 제공자와 네트워크 디바이스간의 사용자 인증을 위한 데이터 송수신을 통해 인증작업이 수행된다. 인증작업은 일반적으로 알려진 방식과 동일하게 이루어진다.
제 205 단계에서 사용자 인증에 실패하면, 해당되는 네트워크 디바이스가 해당되는 소프트웨어를 업그레이드할 수 있는 디바이스가 아닌 경우이므로 제 201 단계로 리턴 된다. 그러나, 제 205 단계에서 사용자 인증에 성공하면, 제 206 단계로 진행되어 해당되는 소프트웨어를 시스템 메모리(110)로 다운 로드하면서 네트워크 절단(disconnection) 여부 및 수신되는 소프트웨어에 대한 데이터 에러 발생여부를 체크한다. 수신되는 소프트웨어에 대한 데이터 에러 체크는 체크 섬 방식으로 수행될 수 있다.
제 206 단계에서 체크한 결과, 네트워크 절단 및 수신되는 소프트웨어에 대한 데이터 에러 중 적어도 어느 하나가 발생되면, 네트워크 디바이스는 제 201 단계로 리턴되어 더 이상 해당되는 소프트웨어에 대한 업그레이드 작업을 수행하지 않는다.
그러나, 다운 로드하는 동안 네트워크 절단이나 소프트웨어 에러 중 어느 하나도 발생되지 않으면, 제 208 단계로 진행되어 다운 로드가 완료되었는지를 체크한다. 체크결과, 다운 로드가 완료되지 않으면, 제 206 단계로 리턴되어 상술한 과정을 계속 수행한다.
제 208 단계에서 체크한 결과, 다운 로드가 완료되었으면, 제 209 단계에서 구 버전 소프트웨어를 다른 영역에 복사한다. 다른 영역은 도 1에서 설명한 바와 같이 플래시 메모리(108)의 빈 영역 또는 비휘발성 메모리(109)의 빈 영역이 될 수 있다.
그리고 제 210 단계로 진행되어 신규 버전 소프트웨어로의 업그레이드를 수행하면서 전원 장애 및 시스템 단절(hang-up)과 같은 네트워크 디바이스내의 장애가 발생되는지를 체크한다.
이 때, 소프트웨어 업그레이드는 먼저 구 버전 소프트웨어가 저장된 영역에 대한 경로를 복사된 영역으로 바꾼다. 즉, 복사된 영역이 플래시 메모리(108)의 빈 영역인 경우에 칩 선택/어드레스 디코더(105)가 플래시 메모리(108)의 빈 영역을 지정할 수 있도록 칩 선택 및 어드레스가 결정된다. 그리고, 플래시 메모리(106)의 원래의 영역에 저장되어 있는 구 버전 소프트웨어를 삭제한 뒤, 시스템 메모리(110)에 저장되어 있는 신규 버전의 소프트웨어를 플래시 메모리(106)의 구 버전 소프트웨어가 삭제된 영역에 저장되도록 기록한다.
이와 같이 소프트웨어에 대한 업그레이드 동작을 수행하면서 모니터링 수단(100)을 통해 전원 장애 및 시스템 단절상태와 같은 네트워크 디바이스의 장애가 발생하는지를 계속적으로 체크한다. 체크결과, 적어도 어느 하나의 네트워크 디바이스내의 장애가 발생하면, 제 212 단계로 진행되어 구 버전 소프트웨어를 토대로 해당되는 네트워크 디바이스가 동작되도록 재시작(restart) 한 뒤, 제 201 단계로 리턴 된다.
그러나, 제 211 단계에서 체크한 결과, 소프트웨어 업그레이드 기간동안 네트워크 디바이스내의 장애가 전혀 발생되지 않으면 제 213 단계에서 소프트웨어 업그레이드가 완료되었는지를 체크한다. 체크결과, 소프트웨어 업그레이드를 완료하지 않았으면, 제 210 단계로 리턴 되어 상술한 소프트웨어 업그레이드 과정을 계속 수행한다.
그러나 제 213 단계에서 체크한 결과, 소프트웨어 업그레이드가 완료되었으면, 제 214 단계에서 신규 버전 소프트웨어를 토대로 네트워크 디바이스가 동작되도록 재시작 한 뒤, 제 201 단계로 리턴 된다.
상술한 본 발명에 의하면, 네트워크를 통해 소프트웨어를 업그레이드 할 때, 정상적으로 업그레이드가 완료되기 전에 네트워크 디바이스의 단절(hang-up 또는 latch-up)과 같은 갑작스러운 장애 또는 전원 라인의 장애와 같은 장애가 발생되면 네트워크 디바이스가 구 버전의 소프트웨어로 재시작(restart)되도록 함으로써, 외부기억장치를 이용하거나 별도의 서비스(A/S)를 받을 필요 없이 네트워크 디바이스를 이용하여 다시 원하는 소프트웨어에 대한 업그레이드를 시도할 수 있다.

Claims (12)

  1. 네트워크를 통해 소프트웨어를 업그레이드할 수 있는 네트워크 디바이스에 있어서,
    소정의 소프트웨어를 업그레이드하는 기간동안 상기 네트워크 디바이스의 전원 장애, 상기 네트워크 디바이스의 단절(hang-up)을 포함한 상기 네트워크 디바이스의 적어도 하나의 장애를 모니터링 하는 모니터링 수단;
    상기 네트워크 디바이스 운영에 필요한 소프트웨어를 저장하고 있는 제 1 메모리;
    상기 네트워크를 통해 전송되는 정보를 저장할 수 있는 제 2 메모리;
    상기 소정의 소프트웨어를 업그레이드하기 위하여 상기 네트워크를 통해 다운 로드되는 정보를 상기 제 2 메모리에 저장시키고, 상기 제 2 메모리에 저장된 상기 정보로 상기 제 1 메모리에 저장되어 있는 상기 소정의 소프트웨어에 대한 구 버전 소프트웨어를 업그레이드하기 전에 상기 구 버전 소프트웨어가 상기 제 1 메모리의 빈 영역에 저장되도록 제어하는 제어부;
    상기 모니터링 수단으로부터 장애 발생을 나타내는 신호가 전송되면, 상기 구 버전 소프트웨어로 상기 네트워크 디바이스가 운영되도록 상기 제1 메모리와 제 2 메모리중 필요한 메모리를 선택하고, 어드레스를 지정하고, 상기 모니터링 수단으로부터 장애 발생을 나타내는 신호가 전송되지 않으면, 상기 제어부로부터 제공되는 제어신호에 의해 상기 제 1 메모리와 제 2 메모리중 필요한 메모리를 선택하고 어드레스를 지정하는 동작을 수행하는 디코더를 포함하는 네트워크 디바이스.
  2. 제 1 항에 있어서, 상기 제어부는 상기 제 1 메모리의 빈 영역에 상기 구 버전 소프트웨어를 저장시킨 다음, 상기 제 1 메모리의 원래의 영역에 저장되어 있는 상기 구 버전 소프트웨어를 삭제(erase)하고, 상기 제 2 메모리에 저장된 상기 정보를 상기 제 1 메모리의 상기 원래의 영역에 저장시켜 상기 구 버전 소프트웨어를업그레이드하도록 상기 디코더로 제어신호를 제공하는 것을 특징으로 하는 네트워크 디바이스.
  3. 삭제
  4. 제 1 항에 있어서, 상기 모니터링 수단은 네트워크 장애를 더 모니터링 하도록 구성된 것을 특징으로 하는 소프트웨어 업그레이드 방법.
  5. 제 1 항에 있어서, 상기 디코더는 상기 소정의 소프트웨어 업그레이드를 수행하고 있을 때, 적어도 하나의 장애가 발생된 것을 나타내는 신호가 상기 모니터링 수단으로부터 전송되면, 초기화 상태로 설정되는 것을 특징으로 하는 네트워크 디바이스.
  6. 제 5 항에 있어서, 상기 디코더는 상기 구 버전 소프트웨어가 상기 제 1 메모리의 빈 영역에 저장된 후, 상기 장애가 발생된 것을 나타내는 신호가 상기 모니터링 수단으로부터 전송되면, 상기 구 버전 소프트웨어를 토대로 상기 네트워크 디바이스가 재시작을 할 수 있도록 동작하는 것을 특징으로 하는 네트워크 디바이스.
  7. 네트워크를 통해 소프트웨어를 업그레이드할 수 있는 네트워크 디바이스에 있어서,
    소정의 소프트웨어를 업그레이드하는 기간동안 상기 네트워크 디바이스의 전원 장애, 상기 네트워크 디바이스의 단절(hang-up)을 포함한 적어도 하나의 장애를 모니터링 하는 모니터링 수단;
    상기 네트워크 디바이스 운영에 필요한 소프트웨어를 저장하고 있는 제 1 메모리;
    상기 네트워크 디바이스 운영에 필요한 데이터를 저장할 수 있는 제 2 메모리;
    상기 네트워크를 통해 전송되는 정보를 저장할 수 있는 제 3 메모리;
    상기 소정의 소프트웨어를 업그레이드하기 위하여 상기 네트워크를 통해 다운 로드되는 정보를 상기 제 3 메모리에 저장시키고, 상기 제 3 메모리에 저장된 상기 정보로 상기 제 1 메모리에 저장되어 있는 상기 소정의 프로그램에 대한 구 버전 소프트웨어를 업그레이드하기 전에 상기 구 버전 소프트웨어가 상기 제 2 메모리의 빈 영역에 저장되도록 제어하는 제어부;
    상기 모니터링 수단으로부터 장애 발생을 나타내는 신호가 전송되면, 상기 구버전 소프트웨어로 상기 네트워크 디바이스가 운영되도록 상기 제 1 메모리, 제 2 메모리 및 제 3 메모리중 필요한 메모리를 선택하고 어드레스를 지정하고, 상기 모니터링 수단으로부터 장애 발생을 나타내는 신호가 전송되지 않으면, 상기 제어부로부터 제공되는 제어신호에 의해 상기 제 1 메모리, 제 2 메모리 및 제 3 메모리중 필요한 메모리를 선택하고 어드레스를 지정하는 디코더를 포함하는 네트워크 디바이스.
  8. 네트워크를 통해 네트워크 디바이스의 소프트웨어를 업그레이드할 수 있는 방법에 있어서,
    상기 네트워크를 통해 소정의 소프트웨어를 업그레이드하면서 상기 네트워크 디바이스의 전원 장애, 상기 네트워크 디바이스의 단절(hang-up)을 포함한 적어도 하나의 장애가 발생되는지를 체크하는 단계;
    상기 체크결과, 상기 장애가 발생된 경우에는 상기 소정의 소프트웨어를 업그레이드하기 이전의 구 버전 소프트웨어를 토대로 상기 네트워크 디바이스를 운영하고, 상기 장애가 발생되지 않으면, 상기 소정의 소프트웨어를 업그레이드한 신규 버전의 소프트웨어를 토대로 상기 네트워크 디바이스를 운영하는 단계를 포함하는 소프트웨어 업그레이드 방법.
  9. 제 8 항에 있어서, 상기 소프트웨어 업그레이드는
    상기 네트워크를 통해 상기 신규 버전 소프트웨어를 다운 로드하는 단계;
    상기 네트워크 디바이스에 저장되어 있는 상기 구 버전의 소프트웨어를 상기 네트워크 디바이스내의 다른 저장영역에 복사하는 단계;
    상기 장애가 발생되지 않으면, 상기 네트워크 디바이스에 저장되어 있는 상기 구 버전의 소프트웨어를 삭제하는 단계;
    상기 장애가 발생되지 않으면, 상기 구 버전의 소프트웨어가 저장되어 있던 영역에 상기 신규 버전 소프트웨어를 저장시키는 단계를 포함하는 소프트웨어 업그레이드 방법.
  10. 삭제
  11. 삭제
  12. 제 8 항에 있어서, 상기 장애는 네트워크 장애를 더 포함하는 것을 특징으로 하는 소프트웨어 업그레이드 방법.
KR10-2001-0038804A 2001-06-30 2001-06-30 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스 KR100440950B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR10-2001-0038804A KR100440950B1 (ko) 2001-06-30 2001-06-30 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스
CNB011436611A CN1178133C (zh) 2001-06-30 2001-12-17 在网络环境下升级软件的方法和实现这种升级的网络装置
JP2001395055A JP2003029997A (ja) 2001-06-30 2001-12-26 ネットワーク環境におけるソフトウェアアップグレード方法及びそれによるネットワークデバイス
EP01310903A EP1271311A3 (en) 2001-06-30 2001-12-27 Upgrading networked device software
US10/046,912 US20030005351A1 (en) 2001-06-30 2002-01-17 Method of upgrading software in a network environment and a network device for performing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0038804A KR100440950B1 (ko) 2001-06-30 2001-06-30 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스

Publications (2)

Publication Number Publication Date
KR20030002068A KR20030002068A (ko) 2003-01-08
KR100440950B1 true KR100440950B1 (ko) 2004-07-21

Family

ID=19711626

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0038804A KR100440950B1 (ko) 2001-06-30 2001-06-30 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스

Country Status (5)

Country Link
US (1) US20030005351A1 (ko)
EP (1) EP1271311A3 (ko)
JP (1) JP2003029997A (ko)
KR (1) KR100440950B1 (ko)
CN (1) CN1178133C (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004234645A (ja) * 2003-01-10 2004-08-19 Canon Inc 画像形成装置の監視装置、該監視装置による制御方法、及び該制御方法を実行するプログラム、並びに管理装置、該管理装置による制御方法、及び該制御方法を実行するプログラム
WO2004070616A1 (ja) * 2003-02-03 2004-08-19 Mvp, Inc. 同期プログラム
EP1494119A1 (en) 2003-06-30 2005-01-05 Thomson Multimedia Broadband Belgium Network equipment and a method for monitoring the start up of a such an equipment
US20050160474A1 (en) * 2004-01-15 2005-07-21 Fujitsu Limited Information processing device and program
CN100372294C (zh) * 2004-02-04 2008-02-27 华为技术有限公司 设备升级方法
US7512939B2 (en) 2004-10-05 2009-03-31 Neopost Technologies System and method of secure updating of remote device software
CN100421071C (zh) * 2005-03-18 2008-09-24 上海华为技术有限公司 用于远程设备系统软件的升级方法
CN100459499C (zh) * 2005-10-12 2009-02-04 杭州华三通信技术有限公司 向以太网无源光网络中的光网络单元发送升级软件的方法
DE102005050288A1 (de) * 2005-10-14 2007-04-19 Siemens Ag System zur Durchführung von Softwareupdates in Embeddded Systemen sowie ein Verfahren dazu
US20090299493A1 (en) * 2006-05-02 2009-12-03 Allan Bo Joergensen System for operating a plant
WO2008010128A2 (en) * 2006-07-13 2008-01-24 Nxp B.V. Secure upgrade of a mobile device with an individual upgrade software over the air
CN100354825C (zh) * 2006-08-02 2007-12-12 华为技术有限公司 一种软件升级及回退方法
KR100891390B1 (ko) * 2007-03-15 2009-04-02 주식회사 하이닉스반도체 마이크로 컨트롤러 및 업데이트 방법
CN101114935A (zh) * 2007-07-27 2008-01-30 华为技术有限公司 系统升级的方法、升级系统及监控实体
KR100973077B1 (ko) * 2007-10-31 2010-07-29 전자부품연구원 서비스 기반 시스템 및 제공 방법
JP4448953B2 (ja) * 2007-12-28 2010-04-14 ブラザー工業株式会社 情報処理装置、情報処理方法及びプログラム
US8423817B2 (en) * 2008-03-04 2013-04-16 Verizon Patent And Licensing Inc. Method, system, and device for resetting network elements
KR20140128122A (ko) * 2013-04-26 2014-11-05 주식회사 코아로직 업그레이드 부트 모드 자동 진입 장치 및 방법
US9785427B2 (en) 2014-09-05 2017-10-10 Oracle International Corporation Orchestration of software applications upgrade using checkpoints
US9740474B2 (en) 2014-10-29 2017-08-22 Oracle International Corporation Orchestration of software applications upgrade using automatic hang detection
US9753717B2 (en) 2014-11-06 2017-09-05 Oracle International Corporation Timing report framework for distributed software upgrades
US9880828B2 (en) 2014-11-07 2018-01-30 Oracle International Corporation Notifications framework for distributed software upgrades
CN105677375A (zh) * 2014-11-18 2016-06-15 中兴通讯股份有限公司 升级控制设备、终端、终端升级方法及系统
JP2018511351A (ja) * 2014-12-30 2018-04-26 シージェイ フォーディープレックス カンパニー リミテッド モーションチェア及びモーションチェア制御システム
CN112035151A (zh) * 2020-08-17 2020-12-04 西安航天三沃机电设备有限责任公司 一种惯性测量单元软件在线升级的方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200306A (ja) * 1993-12-29 1995-08-04 Tamura Electric Works Ltd ダウンロード方式
JPH07239786A (ja) * 1994-02-28 1995-09-12 Toshiba Corp データ処理システム
JPH0887410A (ja) * 1994-09-19 1996-04-02 Hitachi Ltd プログラム更新/回復方法
JPH11328040A (ja) * 1998-05-14 1999-11-30 Nec Saitama Ltd メモリの読み出し制御方法およびプログラムの読み出し制御方法
KR20000000888A (ko) * 1998-06-05 2000-01-15 윤종용 메모리의 프로그램 변경 및 독출 방법
KR20010010933A (ko) * 1999-07-23 2001-02-15 서평원 망관리시스템의 원격 다운로드 전송장치 및 그 방법
KR20010041771A (ko) * 1998-03-12 2001-05-25 클라스 노린, 쿨트 헬스트룀 소프트웨어 업데이트를 위한 상태 복사 방법
KR20020041005A (ko) * 2000-11-25 2002-05-31 구자홍 원격 소프트웨어 업그레이드 시스템 및 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5432927A (en) * 1992-06-17 1995-07-11 Eaton Corporation Fail-safe EEPROM based rewritable boot system
US5568641A (en) * 1995-01-18 1996-10-22 Hewlett-Packard Company Powerfail durable flash EEPROM upgrade
US6317827B1 (en) * 1996-08-16 2001-11-13 Intel Corporation Method and apparatus for fault tolerant flash upgrading
JP2000515286A (ja) * 1997-05-30 2000-11-14 コーニンクレッカ、フィリップス、エレクトロニクス、エヌ、ヴィ セットトップのシステムソフトウエアをネットワークサーバからアップグレードするためのフェイルセーフ方法
US6412082B1 (en) * 1997-12-17 2002-06-25 Sony Corporation Method and apparatus for selecting computer programs based on an error detection mechanism
US6275931B1 (en) * 1998-06-22 2001-08-14 Elsag International N.V. Method and apparatus for upgrading firmware boot and main codes in a programmable memory
US6418555B2 (en) * 1998-07-21 2002-07-09 Intel Corporation Automatic upgrade of software
IL129947A (en) * 1999-05-13 2003-06-24 Tadiran Telecom Business Syste Method and apparatus for downloading software into an embedded system
US6401202B1 (en) * 1999-06-18 2002-06-04 Phoenix Technologies Ltd. Multitasking during BIOS boot-up
US6324692B1 (en) * 1999-07-28 2001-11-27 Data General Corporation Upgrade of a program
US6640334B1 (en) * 1999-09-27 2003-10-28 Nortel Networks Limited Method and apparatus of remotely updating firmware of a communication device
JP2001209543A (ja) * 2000-01-28 2001-08-03 Nec Ic Microcomput Syst Ltd フラッシュ・マイコンにおけるプログラム書き換え方法
US6584559B1 (en) * 2000-01-28 2003-06-24 Avaya Technology Corp. Firmware download scheme for high-availability systems
US7055148B2 (en) * 2000-12-07 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for updating firmware
US20020178352A1 (en) * 2001-05-22 2002-11-28 Lambino John P. Firmware upgrade using address conversion

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200306A (ja) * 1993-12-29 1995-08-04 Tamura Electric Works Ltd ダウンロード方式
JPH07239786A (ja) * 1994-02-28 1995-09-12 Toshiba Corp データ処理システム
JPH0887410A (ja) * 1994-09-19 1996-04-02 Hitachi Ltd プログラム更新/回復方法
KR20010041771A (ko) * 1998-03-12 2001-05-25 클라스 노린, 쿨트 헬스트룀 소프트웨어 업데이트를 위한 상태 복사 방법
JPH11328040A (ja) * 1998-05-14 1999-11-30 Nec Saitama Ltd メモリの読み出し制御方法およびプログラムの読み出し制御方法
KR20000000888A (ko) * 1998-06-05 2000-01-15 윤종용 메모리의 프로그램 변경 및 독출 방법
KR20010010933A (ko) * 1999-07-23 2001-02-15 서평원 망관리시스템의 원격 다운로드 전송장치 및 그 방법
KR20020041005A (ko) * 2000-11-25 2002-05-31 구자홍 원격 소프트웨어 업그레이드 시스템 및 방법

Also Published As

Publication number Publication date
EP1271311A2 (en) 2003-01-02
CN1178133C (zh) 2004-12-01
US20030005351A1 (en) 2003-01-02
JP2003029997A (ja) 2003-01-31
EP1271311A3 (en) 2007-05-02
CN1393774A (zh) 2003-01-29
KR20030002068A (ko) 2003-01-08

Similar Documents

Publication Publication Date Title
KR100440950B1 (ko) 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스
EP1433060B1 (en) Crash recovery system
US7664923B2 (en) Method and system for updating software
US6615404B1 (en) Method and apparatus for downloading software into an embedded-system
US8539471B2 (en) Updating firmware of an electronic device
TWI363298B (en) Communication device and firmware update method thereof
US6681390B2 (en) Upgrade of a program
US6684324B2 (en) Method for installing two or more operating systems/user interfaces into an electronic device and an electronic device
JP2003345618A (ja) 2以上のファームウェアイメージを切替える方法
US7181198B2 (en) Program rewriting system and method for a portable telephone set
CN112416411B (zh) 升级方法及装置、设备端、服务器、计算机可读介质
JP2002189609A (ja) アクシデントに適応したソフトウェア更新方式および方法
KR100422928B1 (ko) 데이터 처리 시스템의 부팅 장치 및 방법
Cisco Miscellaneous System Tasks
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading System Images, Software Images, and Configuration Files
Cisco Loading and Maintaining System Images

Legal Events

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

Payment date: 20130627

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee