KR100246120B1 - 컴퓨터 시스템 - Google Patents
컴퓨터 시스템 Download PDFInfo
- Publication number
- KR100246120B1 KR100246120B1 KR1019960043164A KR19960043164A KR100246120B1 KR 100246120 B1 KR100246120 B1 KR 100246120B1 KR 1019960043164 A KR1019960043164 A KR 1019960043164A KR 19960043164 A KR19960043164 A KR 19960043164A KR 100246120 B1 KR100246120 B1 KR 100246120B1
- Authority
- KR
- South Korea
- Prior art keywords
- checkpoint
- acquisition
- processor
- computer system
- processing
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/1407—Checkpointing the instruction stream
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Hardware Redundancy (AREA)
- Retry When Errors Occur (AREA)
Abstract
본 발명은, 컴퓨터 시스템에 있어서 재시동 동작이 수행될 때 잠금-추방(lock-run-out) 시퀀스를 제거함으로써 구성비용을 크게 감소시키는 효과가 있는 인터럽션 저항을 가진 컴퓨터 시스템에 대한 것이다. 인터럽션 저항을 가진 컴퓨터 시스템에 있어서, 상기 시스템은 검사점(check point) 재시동 기능을 포함하며, 검사점취득전용프로세스가 상기 컴퓨터 시스템 내에 포함되어 있는 처리기들에 각각 제공된다. 임의의 검사점를 취득할 때, 상기 검사점취득전용프로세스는 기상부에 의하여 준비상태로 된다. 검사점취득전용프로세스가 검사점을 취득한 후, 상기 전용프로세스는 다시 수면상태로 된다. 이러한 방식에 있어서는, 검사점들은 임의의 프로세스가 수행될 때는 취득되지 않으므로, 재시동 동작이 수행될 때 잠금-추방 동작이 제거될 수 있다.
Description
통상적인 컴퓨터 시스템은, 앞으로 기술될 것이지만, 정상 상태에서 검사점을 취득하는 프로세스를 수행하고 고장이 일어난 지점의 바로 직전에 취득된 마지막 검사점으로부터 재시동함으로써 상기 고장을 제거하게 된다.
이러한 컴퓨터 시스템에 있어서는, 정상 동작 동안에 상기 시스템의 검사점을 취득하는 과정에서 프로세스가 수행된다. 더 나아가서, 고장 등이 발생하는 경우에, 상기 시스템은 마지막으로 취득된 검사점로부터 재시동된다.
이들 검사점들은 다음과 같은 경우에 취득된다 :
(1) 검사점의 취득이 코드 형태로 명확하게 지시되는 경우.
(2) 마지막 검사점이 취득된 후 소정 시간 간격이 경과한 경우.
(3) 검사점의 취득을 요구하는 임의의 사건(인터럽션)이 발생한 경우.
위에서 기술한 조건들은 임의의 프로그램이 수행되는 동안에 임의의 시간 점에서 발생할 수 있다. 통상적으로, 상기 조건들 중 어느 하나가 발생된 때에, 즉 임의의 프로그램이 수행되고 있는 동안 임의의 시간에 검사점이 취득된다.
도 1에 의하여 임의의 처리기가 정상 프로세스를 실행하고 있는 동안에 검사점 처리가 수행되는 과정의 상태가 도시되어 있다. 시간 t1에서, 프로그램 중간에 검사점의 취득을 요구하는 사건의 발생을 동반하는 인터럽션 처리(도 1의 (1)) 내에서, 검사점 처리(도 1의 (2))가 수행된다.
시간 t2에서, 마지막 검사점 취득 후 소정 시간이 경과한 후 시동되는 타이머 인터럽트 처리(도 1의 (3)) 중에 검사점 처리(도 1의 (4))가 수행된다. 즉, 상기 검사점들은 임의의 프로세스 도중에 취득된다.
도 2에 의하여 검사점을 취득하는 동안에 프로세스가 진행되는 과정에서 고장이 발생하고, 상기 프로세스는 마지막 검사점으로부터 재실생되는 상태가 도시되어 있다. 만약 검사점이 시간 t1 및 시간 t2에서 취득된 후에 고장이 발생(도 2의 (1))했다면, 상기 프로세스는 마지막으로 취득된 검사점(t2에서)로부터 다시 실행될 것이다(도 2의 (2)).
그렇지만, 일반적인 경우에 있어서는, 고장이 발생한 곳에서부터 복귀하는 것과 관련하여 프로세스는 보통 "단위들의 집합"으로서 다루어지는 처리부를 포함한다. 이러한 처리부의 하나로서 "잠금-추방 영역"이 알려져 있다.
상기 잠금-추방 영역은, 임의의 검사점이 여기서 취득될 수 있을지라도, 상기 영역 중에 취득된 검사점으로부터 다시 시스템이 시동되는 경우 프로세스가 정상적인 조건을 회복하기 전에, 고장 회복 처리내에서 "추방(run out)"하여야만 하는 블록을 의미한다. 이것은 그 안에서 스핀-잠금(spin-lock)이 취득되는 블럭이다.
스핀-잠금을 요구하는 프로세스는 강제 배제(pre-emption)될 수 없다. 이러한 스핀-잠금이 취득되는 때에는 어떠한 교착상태도 발생하지 않도록 주의를 기울여야만 한다. 통상적으로는 편리하게 하기 위하여, 상기 시스템은 각각의 스핀-잠금에 대하여 레벨화된 로크 계층이 첨가되도록 설계되며, 임의의 스핀-잠금이 이미 취득된 상황에서 또 다른 스핀-잠금이 취득되는 경우에는, 현재 취득된 스핀-잠금의 계층들의 레벨중에서 가장 낮은 레벨보다 낮은 계층들의 스핀-잠금들만이 취득되도록 설계된다. 이런 방식으로 스핀-잠금들의 취득을 제어함으로써, 각각의 처리기 내에서 잠금을 취득하는 순서가 보증된다.
예컨대, 도 3에 의하여 도시되어 있는 바와 같이 잠금 계층들의 레벨이 설정된 경우에는, 잠금 작동에 의하여 결합된 "프로세스 A" 및 "프로세스 D"가 동시에 실행되며, 상기 두 잠금은 동시에 중복되어 취득되어야만 하고, 각각의 처리기는 처음에 "프로세스 D"의 잠금(레벨 L5)이 취득되고 그 다음에 "프로세스 A"의 잠금이 취득되는 순서에 따라야만 한다.
이제 잠금을 추방시켜야만 할 필연적인 이유에 대하여 도 4 및 도 5에 도시되어 있는 바를 참조하여 설명한다.
도 4에 의하여, 잠금-추방이 실행되지 않기 때문에 교착상태가 발생하는 예가 도시되어 있다.
여기서는, 처리기(도 4의 (0) 및 (1)) 내에서 각각 프로세스(T0) 및 프로세스(T1)가 수행되며 상기 프로세스(T0)는 스핀-잠금(L5와 L3)을 취득하는 한편 상기 프로세스(T1)는 스핀-잠금(L4)을 취득하는 상황에서 검사점이 취득된다고 가정되었다.
또한, 이후에 처리기(0) 내에서 영구고장이 발생하는 경우에 대하여도 검토해 볼 것이다. 이 경우에 있어서는, 처리기(1)는 정상적으로 동작하는 유일한 처리기이며, 따라서 프로세스(T0 및 T1)은 처리기(1)에 의하여 실행되어야만 한다. 프로세스(T0 및 T1)에 의하여 현재 취득된 스핀-잠금은 인지될 수 있다. 그러나, 그런 다음 상기 프로세스(T0 및 T1)가 어떻게 행동할 지 즉 이들 프로세스들이 그 후 스핀-잠금을 어떻게 취득하게 될 지에 대하여 예견하는 것은 불가능하다.
그런 다음 회복이 실행되고 낮은 레벨의 스핀-잠금을 현재 취득하고 있는 프로세스(T0)가 처리기(1)로 디스패치된다고 가정한다. 또한, 이 프로세스(T0)가 이미 취득되어있던 스핀-잠금(L3)을 해제하고, 그런 후, 새롭게 스핀-잠금(L4)을 취득하려고 한다고 가정한다. 그렇지만, 이 스핀-잠금(L4)은 고장이 발생하기 전에 실행되었던 프로세스(T1)에 의하여 이미 취득되었었던 것이기 때문에, 프로세스(T0)는 이 스핀-잠금을 영원히 취득할 수 없다. 결과적으로, 교착상태가 발생하게 된다. 이러한 문제가 일어나는 이유는, 비록 각각의 처리기에 의하여 스핀-잠금을 취득하는 순서가 보증되고 있었지만 한 처리기가 고장남으로써 각각의 처리기에 의하여 보증되고 있었던 스핀-잠금의 취득순서가 깨어졌기 때문이다.
상기한 문제점을 해결하기 위한 방법으로서 잠금 추방 기능이 알려져 있다. 이 기능은 검사점으로부터 복귀하기 전에 검사점이 취득되었을 때에 취득되었던 모든 스핀-잠금들을 해제하기 위하여 그리고 모든 프로세스들을 임의의 특정 처리기에 의존하지 않는 조건에 맞추어지게 하기 위하여 작동한다. 이 기능이 작동하는 순서는 다음과 같다.
(1) 검사점이 취득될 때, 이전에 취득되었었던 스핀-잠금들 중 가장 낮은 레벨의 스핀-잠금을 가지고 있는 하나의 프로세스가 선택된다.
(2) 한 처리기가 상기 선택된 프로세스를 실행하고 있었던 처리기로 간주되고, 상기 프로세스는 이 프로세스의 스핀-잠금이 해제될 때까지 실행된다.
(3) 상기 스핀-잠금을 해제하는 처리 도중에, 상기 스핀-잠금을 취득한 프로세스가 여전히 존재하고 있는지 없는지에 대하여 조사된다.
(4) 존재하는 경우에는, (1) 단계부터의 순서가 반복된다. 없는 경우에는, 잠금-추방 처리은 종료된다.
특히, 스핀-잠금들이 도 5a에 의하여 도시되어 있는 바와 같이 취득되어 있는 경우에는, 처음에 프로세스(T0)가 선택되고(왜냐하면 L3 레벨이 가장 낮은 것이므로), 그리고 프로세스(T0)는 스핀-잠금(L3)이 해제될 때까지 실행된다.
그 다음으로, 가장 낮은 레벨인 스핀-잠금(L4)을 취득한 프로세스(T1)가 선택되고(도 5b에 의하여 도시되어 있는 바와 같이), 더 나아가, 프로세스(T1)가 해제된 후, 스핀-잠금(L5)을 취득하고 있는 프로세스(T0)가 선택되어(도 5c에 의하여 도시되어 있는 바와 같이), 잠금-추방이 완료된다. 잠금-추방이 완료된 후, 상기 시스템은 재시동을 실행한다.
상기 잠금-추방 처리가 이러한 절차에서 수행되었다는 것을 인지하기 위하여, 상기 잠금-추방 처리 중간에 전용 디스패치 기구를 호출할 수 있도록 스핀-잠금 해제 처리가 배열되어야만 한다.
이렇게, 검사점을 취득하는 종래의 방법에 있어서는, 잠금-추방 영역과 같은 처리부가 소프트웨어(OS:운영시스템) 내로 호출되며, 상기한 바와 같은 전용 디스패치 기구가 또한 상기한 바와 같은 "단위들의 집합"을 보호하기 위하여 장착되어야만 한다.
그러므로, 만약 컴퓨터 시스템의 제조 비용이 불가피하게 증가하게 되는 경우에는, 소프트웨어의 설치는 제한될 것이다.
본 발명의 목적은, 검사점을 취득하기 위한 전용 프로세스를 제공하여 재시동할 때에 잠금-추방 시퀀스의 수행을 불필요하게 함으로써, 낮은 비용으로도 구성이 가능한 컴퓨터 시스템을 제공하고자 하는 것이다.
본 발명의 다른 목적은, 검사점 및 재시동 기능을 가지고 있는 다중 처리기 시스템을 포함하는 컴퓨터 시스템으로서, 상기 다중 처리기 시스템 내에 결합되어 있는 처리기 중 몇몇이 동작할 수 없는 경우에라도 남아있는 처리기는 계속 동작할 수 있도록 된 컴퓨터 시스템을 제공하고자 하는 것이다.
도 1은 통상적인 컴퓨터 시스템이 정상 프로세스를 수행하는 동안에 검사점 프로세스가 수행되는 상태를 도시하는 개략도.
도 2는 통상적인 컴퓨터 시스템에 있어서 검사점을 취득하는 동안에 프로세스를 진행하는 과정에서 고장이 발생하고, 마지막 검사점으로부터 재시동이 수행되는 상태를 도시하는 개략도.
도 3은 통상적인 잠금 계층들의 레벨의 설정 방법을 도시하는 개략도.
도 4는 교착상태(dead lock)의 발생을 설명하기 위한 개략도.
도 5a는 잠금-추방 시퀀스를 설명하기 위한 개략도.
도 5b는 잠금-추방 시퀀스를 설명하기 위한 개략도.
도 5c는 잠금-추방 시퀀스를 설명하기 위한 개략도.
도 6은 본 발명의 첫 번째 실시예에 따른 컴퓨터 시스템의 하드웨어 구조를 도시하는 개략도.
도 7은 본 발명의 첫 번째 실시예에 따른 컴퓨터 시스템의 기억장치 내에 저장된 소프트웨어의 기능을 설명하기 위한 기능 블록도.
도 8은 검사점취득전용프로세스의 처리 순서를 도시하는 순서도.
도 9는 검사점취득전용프로세스를 깨우기 위한 프로세스의 처리 순서를 도시하는 순서도.
도 10은 검사점취득전용프로세스에 의하여 취득된 마지막 검사점으로부터 재시동 동작이 수행되는 것의 처리 순서를 도시하는 순서도.
도 11은 본 발명에 의한 첫 번째 실시예에 따른 컴퓨터 시스템의 동작을 설명하기 위한 개략도.
도 12는 검사점취득전용프로세스가 수면상태에서 준비상태로 전환하는 경우를 설명하기 위한 개략도.
도 13a는 다중 처리기 시스템을 도시하는 개략도.
도 13b는 영구적인 고장이 발생하는 때의 다중 처리기 시스템의 동작을 설명하기 위한 개략도.
도 14는 본 발명의 두 번째 실시예에 따른 컴퓨터 시스템의 구조를 도시하는 개략도.
도 15는 검사점 처리부를 포함하는 디스패처의 처리 순서를 도시하는 순서도.
도 16은 검사점 처리부의 실행을 디스패처에 지시하기 위한 처리 순서를 도시하는 순서도.
도 17은 검사점 처리부에 의하여 취득된 마지막 검사점으로부터 재시동이 수행되는 처리 순서를 도시하는 순서도.
도 18은 본 발명의 두 번째 실시예에 따른 컴퓨터 시스템의 동작을 설명하기 위한 개략도.
도 19는 상기 컴퓨터 시스템의 검사점/복귀 기능을 설명하기 위한 개략도.
* 도면의 주요부분에 대한 부호의 설명
10 : 처리기 11 : 내부버스
12 : 기억장치 13 : 직전상버퍼(BIB)
20 : 운영시스템 21 : 검사점취득전용프로세스
22 : 수면부 23 : 기상부
24 : 디스패처 25 : 검사점 처리부
26 : 검사점 처리 실행 지시부
본 발명은 검사점 및 재시동 기능을 가지고 있는 컴퓨터 시스템에 관한 것이며, 보다 상세하게는, 검사점 취득을 위한 전용프로세스가 제공되기 때문에 재시동할 때에 잠금-추방 시퀀스의 실행이 불필요하게 됨으로써 낮은 비용으로 구성할 수 있도록 된 컴퓨터 시스템에 관한 것이다.
본 발명은 또한 검사점 및 재시동 기능을 가지고 있는 다중 처리기 시스템을 포함하는 컴퓨터 시스템에 관한 것으로서, 상기 다중 처리기 시스템 내에 결합되어 있는 처리기 중 몇몇이 동작할 수 없는 경우에라도 나머지 처리기는 계속 동작할 수 있도록 된 컴퓨터 시스템에 관한 것이다.
본 발명의 첫 번째 실시예에 의하여 제공되는 컴퓨터 시스템은 다음과 같이 구성된다 : 고장에 의하여 인터럽트된 임의의 프로세스를 재시동하기 위하여 사용되는 검사점을 취득하기 위한 적어도 하나 이상의 검사점취득전용프로세스 수단과, 상기 검사점취득전용프로세스 수단은 보통 수면상태로 유지되며; 상기 프로세스가 실행되는 동안에 인터럽션을 수행하기 위한, 그리고 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 수면상태로부터 준비상태로 깨우기 위한 인터럽션 수단과; 상기 인터럽션 수단에 의하여 준비상태로 깨워진 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 디스패치하기 위한 디스패치 수단과; 상기 디스패치 수단에 의하여 디스패치된 상기 적어도 하나 이상의 검사점취득전용프로세스 수단이 검사점을 취득하고 난 후, 다시 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 수면상태로 잠재우기 위한 수면상태전환 수단을 포함하는 적어도 하나 이상의 처리기.
그러므로, 본 발명에 따르면, 프로세스가 실행되는 동안에 인터럽션 수단에 의하여 인터럽션이 수행되고, 그럼으로써 검사점 취득전용프로세스가 수면상태에서 준비상태로 깨어난다. 디스패치 수단은 인터럽션 수단에 의하여 준비상태로 깨어난 검사점취득전용프로세스를 디스패치하여 검사점을 취득하도록 한다. 이러한 방식으로, 검사점이 취득될 때, 임의의 다른 프로세스는 실행 상태에 있지 않으므로, 교착상태가 발생될 가능성이 없다.
디스패치 수단에 의하여 디스패치된 검사점 처리 수단으로 검사점이 취득된 후에, 수면상태전환 수단은 상기 검사점취득전용프로세스를 다시 수면상태로 설정한다.
본 발명의 두 번째 실시예에 의하여 제공되는 컴퓨터 시스템은 다음과 같이 구성된다 : 적어도 하나 이상의 처리기와; 검사점 취득 조건이 만족된 경우에 고장에 의하여 인터럽트된 임의의 프로세스를 재시동하기 위하여 검사점의 취득을 지시하기 위한 검사점취득 지시 수단과; 고장에 의하여 인터럽트된 임의의 프로세스를 재시동하기 위하여 사용되는 적어도 하나 이상의 검사점을 취득하기 위하여, 운영 시스템의 디스패처 내에 제공되고, 상기 적어도 하나 이상의 처리기에 대응하는 검사점전용취득 수단과, 상기 검사점전용취득 수단은 보통 수면상태로 유지되며; 상기 검사점취득 지시 수단에 의하여 검사점 취득이 지시되는 경우에, 상기 검사점전용취득 수단을 수면상태로부터 실행가능하도록 하는 실행준비 수단과; 상기 실행준비 수단에 의하여 실행가능하게 된 상기 검사점전용취득 수단을 디스패치하기 위한 디스패치 수단과; 그리고 상기 디스패치 수단에 의하여 디스패치된 상기 검사점전용취득 수단이 검사점을 취득하고 난 후, 다시 상기 검사점전용취득 수단을 수면 상태로 잠재우기 위한 수면상태전환 수단.
따라서, 본 발명에 의하면, 검사점취득 지시 수단에 의하여 검사점취득이 지시되었을 때 실행준비 수단은 검사점 취득 수단을 준비상태로 깨운다. 디스패치 수단은 실행준비 수단에 의하여 준비상태로 깨워진 검사점 취득 수단을 디스패치한다. 이러한 방식으로, 검사점이 취득될 때, 임의의 다른 프로세스는 실행 상태에 있지 않으므로, 교착상태가 발생될 가능성이 없다.
디스패치 수단에 의하여 디스패치된 검사점 취득 수단으로 검사점이 취득된 후에, 수면상태전환 수단은 상기 검사점 취득 수단을 다시 수면상태로 설정한다.
본 발명에 따르면 검사점이 취득될 때 작동상태에 있는 프로세스는 오직 검사점 취득 수단뿐이다. 다른 어떠한 프로세스도 처리기에 의지하고 있지 않다. 그러므로, 다중-처리기 시스템의 처리기 혹은 처리기들이 고장을 일으키는 경우에, 상기 처리기을 위한 검사점취득전용프로세스가 수행되지 않는 한 상기 시스템의 재구성(상기 처리기의 교정(오프라인))은 쉽게 달성될 수 있다.
첨부된 도면에 도시되어 있는 바에 의하여 본 발명의 실시예를 구체적으로 설명하면 다음과 같다.
(첫 번째 실시예)
도 6에 의하여 본 발명의 첫 번째 실시예에 따른 컴퓨터 시스템의 구조가 도식적으로 나타나 있다.
처리기(10)는 내부버스(11)에 연결되어 있다. 또한, 이 내부버스(11)는 기억장치(12), 그리고 기억장치(12)를 갱신하기 전에 데이터를 저장하기 위한 직전상버퍼(BIB:Before Image Buffer)(13)와 연결되어 있다.
기억장치(12)는 처리기(10)에 의하여 실행될 운영시스템(OS)을 포함하는 소프트웨어를 저장한다.
도 19에 의하여 상기 컴퓨터 시스템의 검사점/복귀 기능을 설명하는 개략도가 도시되어 있다. 도 19에 도시되어 있는 바와 같이, 시간 t0에서, 기억장치의 어드레스 0,1,2 및 3의 내용은 각각 a,b,c 및 d이다. BIB 내에는 저장되어 있는 데이터는 없다. 이 상태를 "CKP"라고 하자.
그 후, 시간 t1에서 처리기는 기억장치의 어드레스 1 내에 x 를 저장하라는 명령을 내린다. 어드레스 1 의 내용은 그때부터 x 로 바뀐다. 이 때, BIB는 기억장치가 갱신되기 직전에 저장되었던 데이터를 저장한다. 이 데이터는 어드레스 1 의 내용이 b 라는 것을 나타낸다.
그리고 나서, 시간 t2에서, 처리기는 기억장치의 어드레스 2 내에 y 를 저장하라는 명령을 내린다. 어드레스 2의 내용이 y로 다시 쓰여지기 전에, BIB는 어드레스 2의 내용이 c 라는 것을 나타내는 데이터를 저장한다.
그런 다음 시간 t3에서 고장이 발생했다고 가정하자. 이 경우에, BIB내에 갱신 데이터가 저장되는 순서를 역으로하여 단지 현재 BIB 내에 저장되었던 갱신 데이터를 기억장치내로 저장함에 의하여, 기억장치는 갱신되기 전의 기억장치 상태로, 즉 시간 t0에서 가정했던 기억장치의 CKP 상태로 복귀할 수 있다.
시간 t3에서 고장이 발생하지 않았다고 가정하자. 이 경우에는, BIB 내에 저장된 데이터는 적절한 순간에 소멸되며, 이 때를 기억장치는 "CKP"상태로서 받아들인다. 이렇게하여 CKP 는 다음 세대로 진행하는 것이다.
도 7에 의하여 기억장치(12) 내에 저장된 소프트웨어의 기능을 설명하기 위한 기능 블록도가 도시되어 있다.
참조번호 21은 검사점취득전용프로세스를 가리키며, 이 검사점취득전용프로세스(21)는 정상적으로는 수면부(22)에 의하여 대기상태로 유지된다.
검사점 취득 조건이 만족된 경우에는, 대기상태의 검사점취득전용프로세스(21)는 기상부(23)에 의하여 실행가능한 상태로 된다.
검사점 취득 조건은 BIB(13) 내로 데이터의 소정량이 저장되는 경우에 만족된다.
다음과 같은 경우에 검사점 취득 조건이 만족됨을 주목하라.
(1) 기억장치(12)의 갱신 후 상 데이터를 저장하기 위한 직후상버퍼(AIB:After Image Buffer)에 소정량의 데이터가 저장되는 경우.
(2) 검사점의 취득이 코드형태로 명확하게 지시되는 경우.
(3) 마지막 검사점이 취득된 후 소정 시간이 경과한 경우.
실행가능 상태로 된 검사점취득전용프로세스(21)는 디스패처(24)에 의하여 선택된다. 그 결과로서, 검사점취득전용프로세스(21)는 실행가능하게 되어, 검사점을 취득한다.
검사점 취득 조건이 만족되는 경우에, 가능한한 빨리 검사점을 취득하기 위하여 검사점취득전용프로세스(21)의 우선권(즉, 실행 우선권)이 발생하고, 그리하여 고장 통지 등과 같은 전용 인터럽션 이외의 다른 인터럽션 등은 수신되지 않게 된다.
다음으로, 도 8 내지 도 10을 참조하여 동작을 설명한다.
도 8에 의하여 검사점취득전용프로세스(21)의 처리순서가 나타나 있는 순서도가 도시되어 있다.
검사점취득전용프로세스(21)는 정상적으로 대기상태로 유지된다(A1 단계에서). 그렇지만, 일단 검사점 취득 조건이 만족되면, 이 프로세스(21)는 기상부(23)에 의하여 깨어나고 실행가능한 상태로 된다.
그런 다음, 디스패처(24)에 의하여 상기 프로세스(21)가 디스패치되고, 그 후 검사점이 상기 프로세스(21)에 의하여 취득된다(A2 단계에서). 그런 다음, 상기 프로세스(21)는 대기상태로 돌아간다.
도 9에 의하여 검사점 취득 조건이 만족되었다는 통지를 위한, 그리고 대기상태로 유지되고 있는 검사점취득전용프로세스(21)를 깨어나게 하기 위한 처리순서를 나타내는 순서도가 도시되어 있다.
도 9에 의하여 명백한 바와 같이, 검사점 취득 조건이 만족되는 경우에, 인터럽션 처리 혹은 서브-루틴 호출에 의하여 검사점 취득 조건의 만족을 통지하기 위한 처리가 수행된다(B1 단계에서). 여기서, 검사점취득전용프로세스(21)는 대기상태이다.
검사점취득전용프로세스(21)를 대기상태로 전환하는데 있어서, 그리고 실행가능한 상태로 전환하는데 있어서는, 단지 특정 프로세스만이 실행된다. 예컨대, 유닉스(UNIX)의 경우에는 단지 하나의 특정 대기 채널(이 경우 S)이 기상을 위한 프로세스를 특정화하기 위하여 사용된다.
도 10에 의하여 검사점취득전용프로세스(21)에 의하여 취득된 검사점으로부터 재시동 처리의 흐름을 나타내는 순서도가 도시되어 있다.
이 경우에는, 검사점취득전용프로세스(21)에 의하여 취득된 마지막 검사점의 상태가 회복되고(C1 단계에서), 뒤이어, 이 검사점취득전용프로세스(21)를 현재 프로세스로서 삼아, 상기 처리는 검사점취득전용프로세스(21)의 톱(top)으로부터 수행된다(C2 단계에서). 다른 방식으로는, 검사점에서 저장된 검사점취득전용프로세스의 문맥(context)이 회복될 수 있다.
다음으로는, 도 6 내지 12를 참조하여 본 실시예에 의한 컴퓨터 시스템의 작동을 설명한다.
도 11에 의하여 본 실시예에 의한 컴퓨터 시스템의 작동을 설명하는 개략도가 도시되어 있다.
처리기가 임의의 프로세스(x)를 처리하고 있는 동안에 BIB(13) 내에 저장된 기억장치(12)의 갱신전 데이터의 데이터량이 소정 데이터량에 도달하는 때에, 상기 BIB(13)는 처리기(10)에 인터럽션 요구를 모아 들이는 검사점을 공급한다.
여기서 상기 BIB(13)는 처리기(1)에 인터럽션을 공급한다. 만약 처리기(1)가 BIB(13)로부터 인터럽션을 공급받은 경우에는, 처리기(1)는 일시적으로 실행중이던 프로세스(x)의 처리를 정지시키고 인터럽션 처리을 수행한다(도 11의 (1)).
이 인터럽션 처리에 있어서, 대기(수면) 상태에 유지되던 모든 검사점취득전용프로세스(21)는 실행가능한 상태(또는 준비상태)로 전환된다(도 11의 (2)).
도 12에 의하여 수면상태로 유지되고 있던 검사점취득전용프로세스가 준비상태로 전환되는 경우를 설명하는 개략도가 도시되어 있다.
이 경우에, 검사점취득전용프로세스의 우선권(실행 우선권)이 발생되며, 고장통지 등을 제외한 인터럽션은 수신되지 않게 배열된다.
인터럽션 처리가 완료되자마자, 처리기(1)는 일시적으로 중지되었던 프로세스(x)를 다시 실행하고, 뒤이어 상기 프로세스(x)의 한 실행단위가 완료되었을 때 디스패처가 호출된다(도 11의 (3)). 디스패처의 호출은 시분할 처리제어방식 등에 의하여 수행된다.
상기 디스패처는 우선권이 높은 프로세스를 검출하고, 이 프로세스를 실행 상태로 만들어, 처리기에 의하여 실행되도록 한다. 여기서는, 검사점취득전용프로세스(21)가 깨어났기 때문에, 상기 디스패처는 검사점취득전용프로세스(21)를 선택하며, 처리기로 하여금 이 프로세스(21)를 실행하도록 하고, 그럼으로써 검사점을 취득하도록 한다(도 11의 (4)).
통상적인 컴퓨터 시스템에 있어서 검사점의 취득은 임의의 프로세스의 인터럽션 처리 내에서 행해졌기 때문에, 상기 프로세스가 스핀-잠금을 포함한다든지 혹은 상기 프로세스가 처리기에 의존하는 원천을 가진 접근을 한다든지 할 가능성이 있다. 그러므로 교착상태가 발생될 가능성이 있다.
이와 반면에, 본 실시예에 의한 컴퓨터 시스템에 있어서는, 검사점은 디스패처에 의하여 디스패치된 검사점취득전용프로세스에 의하여 취득되고, 다른 어떤 프로세스도 실행상태에 있지 않다. 그러므로 통상적인 컴퓨터 시스템과는 다르게, 재시동이 수행될 때 교착상태가 발생되지 않는다.
또한, 검사점의 취득이 완료되었을 때, 검사점취득전용프로세스(21)는 다시 대기(혹은 수면)상태로 전환하고(도 11의 (5)), 디스패처가 호출되고, 임의의 정상 프로세스가 다시 선택된다(도 11의 (6)).
이렇게하여, 검사점취득전용프로세스(21)를 이용하는 경우에, 검사점의 취득을 항상 검사점취득전용프로세스(21) 내에서 취득된다.
그러므로, 재시동시에 잠금-추방은 더 이상 필요하지 않으며, 검사점 취득 기능을 포함하는 운영시스템은 크게 단순화될 수 있다. 이것의 결과로서, 구성 비용은 크게 감소할 수 있다.
또한, 이러한 방식으로 구조가 배열되기 때문에 다음과 같은 효과를 얻을 수 있다.
도 13a에 의하여 다중 처리기 시스템이 개략적으로 도시되어 있다. 이 실시예는 네 개의 처리기 (0 내지 3)를 가진 다중 처리기 시스템에 기초하고 있으며, 각각의 처리기(10)는 각 처리기에 대응하는 검사점취득전용프로세스(21)를 디스패치하고 실행하며, 그 때에 검사점이 취득된다.
더욱 상세하게는, 다중 처리기 시스템에 있어서 검사점이 취득되는 것은 다음의 두 가지 방법 중 하나에 의해서이다:
(1) 처리하는 데이터와 관련하여 서로 의존하고 있는 처리기들이 검사점을 취득하기 위하여 동기화되어 함께 작동한다.
(2) 시스템 내에 제공되는 모든 처리기들이 검사점을 취득하기 위하여 동기화되어 작동한다.
일반적으로는, 두 번째 방법이 대부분의 경우에 채용된다--즉, 처리기들 사이의 데이터 관계를 관리하기는 어려워서 부담이 크므로, 모든 처리기들이 동기화되는 방법이 선호된다.
따라서, 본 발명에 의한 첫 번째 실시예에 있어서도 또한 검사점을 취득하는데 있어서 모든 처리기들이 동기화되어 작동한다.
이것은, 검사점이 취득될 때 실행중인 프로세스는 단지 검사점취득전용프로세스(21)뿐이며 다른 프로세스도 어떤 것도 실행되지 않는다는 것을 의미한다.
예컨대, 여기서는, 임의의 특정 처리기(10) 내에서 간헐적인 고장이 발생한다고 가정된다. 이 경우에 있어서, 고장 회복 처리 중에, 상기 시스템의 상태는 마지막 검사점으로 복귀되며, 그런 다음에, 각각의 처리기들에 의하여 상기 검사점이 취득되었을 때 수행되었던 검사점취득전용프로세스(21)가 다시 실행된다.
다음에는, 도 13b를 참조하여, 특정한 처리기(10) 내에서 영구 고장이 발생한 경우에 대하여 고찰해 본다. 이런 경우에는, 고장 처리에 있어서, 상기 시스템의 상태는 마지막 검사점으로 복귀되며, 그런 다음에, 각각의 처리기들에 의하여 상기 검사점이 취득되었을 때 수행되었던 검사점취득전용프로세스(21)가 다시 실행된다.
그렇지만, 영구 고장을 야기한 처리기(10)(혹은 도 13b에서의 처리기(1))는 상기 프로세스(21)를 실행할 수 없다. 결과적으로, 검사점취득전용프로세스(21)는 처리기들 중 어느것에 의해서도 실행될 수 없으며, 그리고 다른 정상 프로세스들도 고장난 처리기에 의하여 디스패치될 수 없다. 그러므로, 영구고장을 야기한 처리기의 재편성(교정(오프라인), 재구성)은 쉽게 실현될 수 있다.
(두 번째 실시예)
도 14에 의하여 본 발명의 두 번째 실시예에 따른 컴퓨터 시스템을 나타내는 개략도가 도시되어 있다.
처리기(10)는 운영시스템(20)을 포함하는 소프트웨어를 실행한다.
디스패처(24)는 검사점 처리부(25)를 포함한다.
디스패처(24)가 항상 검사점 처리부(25)를 호출하는 것은 아니고, 검사점 처리 실행 지시부(26)가 검사점 처리의 실행을 지시할 때만 검사점 처리부(25)를 호출한다. 더 나아가, 검사점 취득 조건이 만족된 경우에, 검사점 처리 실행 지시부(26)에 의하여 검사점 처리의 실행이 지시된다. 검사점 처리의 실행이 상기 지시부(26)에 의하여 지시된 경우에, 디스패처(24)는 검사점 처리부(25)를 호출한다.
검사점 처리의 실행 지시에 있어서는, 예컨대 소프트웨어 내의 파라미터가 표지(flag)로서 사용되고, 이 표지는 검사점 처리의 실행이 지시되는 경우에 (1)로 설정된다. 그러므로, 디스패처(24)는 상기 표지가 (1)로 설정된 경우에만 검사점 처리부(25)를 호출한다.
도 15 내지 도 17을 참조하여 본 발명의 두 번째 실시예의 작동을 설명하면 다음과 같다.
도 15에 의하여 검사점 처리부(25)를 포함하는 디스패처(24)의 처리 순서를 나타내는 순서도가 도시되어 있다.
검사점 처리부(25)를 포함하는 디스패처(24)는 검사점 처리 실행 지시부(26)로부터의 지시가 수령되었는지 아닌지에 대하여 조사한다(D1 단계에서). 검사점 처리부(25)의 실행이 지시된 경우에는, 디스패처(24)는 검사검 처리부(25)의 실행지시를 소거하고(D2 단계에서), 그런 다음 검사점의 취득이 수행된다(D3 단계에서).
더 나아가서, 검사점의 취득이 완료된 때에, 정상 디스패처의 처리가 실행된다(D4 단계에서). 특히, 높은 우선권의 프로세스가 선택되고 상기 처리기는 이 프로세스를 실행하도록 된다.
도 16에 의하여, 검사점 취득 조건의 만족이 수령되고 검사점 처리부(25)의 실행이 디스패처(24)에게 지시되는 경우의 순서도가 도시되어 있다.
도 16에 의하여 도시되어 있는 바와 같이 검사점 취득 조건이 만족되었을 경우에, 인터럽션 처리 혹은 서브-루틴 호출에 의하여 검사점 취득조건의 만족을 통지하는 처리가 실행된다(E1 단계에서). 여기서는, 검사점 처리부(25)의 실행이 지시된다.
검사점 처리부(25)의 실행 지시에 있어서, 예컨대, 위에서 기술한 바와 같이, 소프트웨어 내의 파라미터가 표지(flag)로서 사용되고, 이 표지는 검사점 처리의 실행이 지시되는 경우에 (1)로 설정된다. 그러므로, 디스패처(24)는 상기 표지가 (1)로 설정된 경우에만 검사점 처리부(25)를 호출한다.
도 17에 의하여 검사점 처리부(25)에 의하여 취득된 검사점으로부터 재시동이 수행되는 처리 순서를 나타내는 순서도가 도시되어 있다.
이 경우에 있어서, 마지막으로 취득된 검사점에서의 상태가 처음으로 회복되며(F1 단계에서), 그리고 계속해서, 톱(top)으로부터 디스패처(24)가 호출된다(F2 단계에서).
도 18을 참조하여 본 실시예에 따른 컴퓨터 시스템의 작동을 설명하면 다음과 같다.
처리기가 임의의 프로세스를 실행하고 있는 동안에 검사점 취득 조건이 만족되었다고 통지하는 인터럽션이 발생하는 경우에(도 18의 (1)), 검사점 처리부(25)의 실행이 검사점 처리 실행 지시부(26)를 통하여 지시된다(도 18의 (2)).
그런 다음, 원래의 프로세스로 제어가 복귀하고, 한 실행단위가 완료한다. 계속해서, 디스패처가 호출된다. 그렇지만, 검사점 처리부(25)의 실행이 지시되었었기 때문에, 디스패처(24)는 검사점을 취득한다(도 18의 (3)).
이 검사점 취득이 완료된 때에, 디스패처(24)는 정상처리 상태로 복귀한다, 즉 디스패처는 높은 우선권의 프로세스를 선택하고 처리기(10)로 하여금 선택된 프로세스를 실행하도록 한다.
이렇게, 검사점 처리부(25)를 포함하는 디스패처(24)가 사용될 때, 검사점 취득은 상기 디스패처 내에서만 실행되고, 그럼으로써, 재시동시에 잠금-추방은 불필요하다. 그러므로, 검사점 취득 기능을 포함하는 운영시스템은 크게 단순화될 수 있으며, 구성 비용은 크게 감소될 수 있다.
상기한 바와 같이, 본 발명에 의한 컴퓨터 시스템에 따르면, 검사점은 검사점 처리 수단 혹은 디스패처 내에서만 취득된다. 그 결과로서, 검사점이 취득될 때 어떠한 다른 프로세스도 수행될 수 없고, 검사점을 취득하는데 있어서의 통상적인 방법에 의해서는 고려되어야만 하던 상기 "단위들의 집합"은 더 이상 고려될 필요가 없다. 이런식으로, 운영시스템은 크게 단순화될 수 있다. 그 결과로서, 구성비용 혹은 개선비용은 크게 감소될 수 있다.
다중 처리기 시스템에 있어서는, 상기 다중 처리기 시스템 내의 한 처리기 혹은 여러 처리기들이 고장을 일으키는 경우일지라도, 단지 임의의 프로세스 혹은 문제를 가진 프로세스를 위한 검사점 처리를 억제함에 의하여 상기 시스템의 재구성(교정(오프라인)), 혹은 고장을 일으킨 처리기의 분리)은 쉽게 달성될 수 있다.
Claims (21)
- 고장에 의하여 인터럽트된 임의의 프로세스를 재시동하기 위하여 사용되는 검사점을 취득하기 위한 적어도 하나 이상의 검사점취득전용프로세스 수단과, 상기 검사점취득전용프로세스 수단은 보통 수면상태로 유지되며; 상기 프로세스가 실행되는 동안에 인터럽션을 수행하기 위한, 그리고 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 수면상태로부터 준비상태로 깨우기 위한 인터럽션 수단과; 상기 인터럽션 수단에 의하여 준비상태로 깨워진 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 디스패치하기 위한 디스패치 수단과; 상기 디스패치 수단에 의하여 디스패치된 상기 적어도 하나 이상의 검사점취득전용프로세스 수단이 검사점을 취득하고 난 후, 다시 상기 적어도 하나 이상의 검사점취득전용프로레스 수단을 수면상태로 잠재우기 위한 수면상태전환 수단을 포함하는 적어도 하나 이상의 처리기를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 인터럽션 수단의 인터럽션 처리는 검사점 취득 조건이 만족된 후에 수행되는 것을 특징으로 하는 컴퓨터 시스템.
- 제2항에 있어서, 상기 검사점 취득 조건은 상기 처리기의 코드로 검사점 취득이 지시되는 경우에 만족되는 것을 특징으로 하는 컴퓨터 시스템.
- 제2항에 있어서, 상기 검사점 취득 조건은 상기 적어도 하나 이상의 검사점취득전용프로세스 수단에 의하여 검사점이 취득된 이후 소정 시간이 경과한 때에 만족되는 것을 특징으로 하는 컴퓨터 시스템.
- 제2항에 있어서, 상기 검사점 취득 조건은 기억장치를 갱신하기 전 상 데이터를 모으기 위한 BIB(직전상버퍼) 내에 저장되는 데이터의 데이터량에 의하여 결정되는 것을 특징으로 하는 컴퓨터 시스템.
- 제2항에 있어서, 상기 검사점 취득 조건은 기억장치를 갱신한 후 상 데이터를 모으기 위한 AIB(직후상버퍼) 내에 저장되는 데이터의 데이터량에 의하여 결정되는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 디스패치 수단에 의해 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 디스패치하는 것은 시분할처리방식에 의하여 수행되는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 적어도 하나 이상의 처리기 중 임의의 처리기 내에서 간헐적인 고장이 발생할 때, 상기 적어도 하나 이상의 검사점취득전용프로세스 수단에 의해 마지막으로 취득된 검사점에서의 상기 프로세스의 상태를 회복시키기 위한 회복 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제8항에 있어서, 상기 적어도 회복 수단에 의하여 프로세스의 상태가 회복된 후, 현재 프로세스로서 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 처리하기 위한 처리 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 적어도 하나 이상의 처리기 중 임의의 처리기에 영구 고장이 발생하는 경우에, 영구 고장을 일으킨 상기 처리기 외의 다른 처리기가 상기 적어도 하나 이상의 검사점취득전용프로세스 수단에 의하여 마지막으로 취득된 검사점에서의 상기 프로세스의 상태을 회복시키는 방식으로 회복을 수행하기 위한 회복 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제10항에 있어서, 상기 회복 수단에 의하여 프로세스의 상태가 회복된 후에, 영구 고장을 일으킨 처리기 외의 다른 처리기에 의하여 현재 프로세스로 간주되는 상기 적어도 하나 이상의 검사점취득전용프로세스 수단을 처리하기 위한 처리 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 적어도 하나 이상의 처리기와; 검사점 취득조건이 만족된 경우에 고장에 의하여 인터럽트된 임의의 프로세스를 재시동하기 위하여 검사점의 취득을 지시하기 위한 검사점취득 지시수단과; 고장에 의하여 인터럽트된 임의의 프로세스를 재시동하기 위하여 사용되는 적어도 한 이상의 검사점을 취득하기 위하여, 운영 시스템의 디스패처 내에 제공되고, 상기 적어도 하나 이상의 처리기에 대응하는 검사점전용취득 수단과, 상기 검사점전용취득 수단은 보통 수면상태로 유지되며, 상기 검사점취득 지시 수단에 의하여 검사점 취득이 지시되는 경우에, 상기 검사점전용취득 수단을 수면상태로부터 실행가능하도록 하는 실행준비 수단과; 상기 실행준비 수단에 의하여 실행가능하게 된 상기 검사점전용취득 수단을 디스패치하기 위한 디스패치 수단과; 상기 디스패치 수단에 의하여 디스패치된 상기 검사점전용취득 수단이 검사점을 취득하고 난 후, 다시 상기 검사점전용취득 수단을 수면 상태로 잠재우기 위한 수면상태전환 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 검사점 취득 조건은 상기 처리기의 코드로 검사점 취득이 지시되는 경우에 만족되는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 검사점 취득 조건은 상기 검사점 취득 수단에 의하여 검사점이 취득된 이후 소정 시간이 경과한 때에 만족되는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 검사점 취득 조건은 기억장치를 갱신하기 전 상 데이터를 모으기 위한 BIB 내에 저장되는 데이터의 데이터량에 의하여 결정되는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 검사점 취득 조건은 기억장치를 갱신한 후 상 데이터를 모으기 위한 AIB 내에 저장되는 데이터의 데이터량에 의하여 결정되는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 디스패치 수단에 의해 상기 검사점전용취득 수단을 디스패치하는 것은 시분할처리방식에 의하여 수행되는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 적어도 하나 이상의 처리기 중 임의의 처리기 내에서 간헐적인 고장이 발생할 때, 상기 검사점전용취득 수단에 의해 마지막으로 취득된 검사점에서의 상기 적어도 하나 이상의 처리기의 상태를 회복시키기 위한 회복 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제18항에 있어서, 상기 회복 수단에 의하여 처리기의 상태가 회복된 후, 현재 프로세스로서 상기 검사점전용취득 수단을 처리하기 위한 처리 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 적어도 하나 이상의 처리기 중 임의의 처리기에 영구 고장이 발생하는 경우에, 영구 고장을 일으킨 처리기 외의 다른 처리기가 상기 검사점전용취득 수단에 의해 마지막으로 취득된 검사점에서의 상기 처리기의 상태를 회복시키는 방식으로 회복을 수행하기 위한 회복 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제20항에 있어서, 상기 회복 수단에 의하여 처리기의 상태가 회복된 후에, 영구 고장을 일으킨 처리기 외의 다른 처리기에 의하여 현재 프로세스로 간주되는 상기 검사점전용취득 수단을 처리하기 위한 처리 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8-015660 | 1996-01-31 | ||
JP96-015660 | 1996-01-31 | ||
JP1566096 | 1996-01-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970059931A KR970059931A (ko) | 1997-08-12 |
KR100246120B1 true KR100246120B1 (ko) | 2000-03-15 |
Family
ID=11894904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960043164A KR100246120B1 (ko) | 1996-01-31 | 1996-09-30 | 컴퓨터 시스템 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5884021A (ko) |
EP (1) | EP0788050B1 (ko) |
KR (1) | KR100246120B1 (ko) |
CN (1) | CN1101573C (ko) |
DE (1) | DE69625323T2 (ko) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3648892B2 (ja) * | 1996-12-16 | 2005-05-18 | 富士通株式会社 | 計算機システム |
US7200623B2 (en) * | 1998-11-24 | 2007-04-03 | Oracle International Corp. | Methods to perform disk writes in a distributed shared disk system needing consistency across failures |
US6338147B1 (en) * | 1998-10-29 | 2002-01-08 | International Business Machines Corporation | Program products for performing checkpoint/restart of a parallel program |
US6393583B1 (en) | 1998-10-29 | 2002-05-21 | International Business Machines Corporation | Method of performing checkpoint/restart of a parallel program |
US6401216B1 (en) | 1998-10-29 | 2002-06-04 | International Business Machines Corporation | System of performing checkpoint/restart of a parallel program |
US6594779B1 (en) * | 1999-03-30 | 2003-07-15 | International Business Machines Corporation | Method, system and program products for managing the checkpointing/restarting of resources of a computing environment |
US6658594B1 (en) * | 2000-07-13 | 2003-12-02 | International Business Machines Corporation | Attention mechanism for immediately displaying/logging system checkpoints |
US6802024B2 (en) * | 2001-12-13 | 2004-10-05 | Intel Corporation | Deterministic preemption points in operating system execution |
CN1967489A (zh) * | 2005-11-14 | 2007-05-23 | 鸿富锦精密工业(深圳)有限公司 | 防止计算机当机的系统及方法 |
CN101271413B (zh) * | 2007-03-21 | 2011-12-14 | 鸿富锦精密工业(深圳)有限公司 | 计算机运行状态侦测及处理方法和系统 |
US7950019B2 (en) * | 2007-05-21 | 2011-05-24 | International Business Machines Corporation | Method and apparatus for checkpoint and restarting a stream in a software partition |
US8527650B2 (en) * | 2007-05-21 | 2013-09-03 | International Business Machines Corporation | Creating a checkpoint for modules on a communications stream |
US7792983B2 (en) * | 2007-07-31 | 2010-09-07 | International Business Machines Corporation | Method and apparatus for checkpoint and restart of pseudo terminals |
GB202202815D0 (en) * | 2022-03-01 | 2022-04-13 | Graphcore Ltd | Reset of a multi-node syste |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4852092A (en) * | 1986-08-18 | 1989-07-25 | Nec Corporation | Error recovery system of a multiprocessor system for recovering an error in a processor by making the processor into a checking condition after completion of microprogram restart from a checkpoint |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0228559A1 (de) * | 1985-12-17 | 1987-07-15 | BBC Brown Boveri AG | Fehlertolerante Mehrrechneranordnung |
US5146569A (en) * | 1986-10-24 | 1992-09-08 | Hitachi, Ltd. | System for storing restart address of microprogram, determining the validity, and using valid restart address to resume execution upon removal of suspension |
US5065311A (en) * | 1987-04-20 | 1991-11-12 | Hitachi, Ltd. | Distributed data base system of composite subsystem type, and method fault recovery for the system |
JPH02287858A (ja) * | 1989-04-28 | 1990-11-27 | Toshiba Corp | 分散処理システムのリスタート方式 |
-
1996
- 1996-09-17 US US08/710,403 patent/US5884021A/en not_active Expired - Lifetime
- 1996-09-18 EP EP96114979A patent/EP0788050B1/en not_active Expired - Lifetime
- 1996-09-18 DE DE69625323T patent/DE69625323T2/de not_active Expired - Fee Related
- 1996-09-27 CN CN96113090A patent/CN1101573C/zh not_active Expired - Lifetime
- 1996-09-30 KR KR1019960043164A patent/KR100246120B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4852092A (en) * | 1986-08-18 | 1989-07-25 | Nec Corporation | Error recovery system of a multiprocessor system for recovering an error in a processor by making the processor into a checking condition after completion of microprogram restart from a checkpoint |
Also Published As
Publication number | Publication date |
---|---|
CN1156860A (zh) | 1997-08-13 |
DE69625323D1 (de) | 2003-01-23 |
EP0788050B1 (en) | 2002-12-11 |
DE69625323T2 (de) | 2003-10-16 |
KR970059931A (ko) | 1997-08-12 |
US5884021A (en) | 1999-03-16 |
EP0788050A1 (en) | 1997-08-06 |
CN1101573C (zh) | 2003-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100246120B1 (ko) | 컴퓨터 시스템 | |
US6266781B1 (en) | Method and apparatus for providing failure detection and recovery with predetermined replication style for distributed applications in a network | |
EP0221274B1 (en) | Method for ensuring switchover in a restartable data base system | |
CN101833475B (zh) | 用于执行指令原子块的方法和装置 | |
EP0981089A2 (en) | Method and apparatus for providing failure detection and recovery with predetermined degree of replication for distributed applications in a network | |
Kalaiselvi et al. | A survey of checkpointing algorithms for parallel and distributed computers | |
US20060294435A1 (en) | Method for automatic checkpoint of system and application software | |
JPH0895935A (ja) | マルチプロセッサシステムにおけるプロセッサ異常対策方法およびそのための装置 | |
US7178056B2 (en) | Rolling software upgrades for fault tolerant systems | |
US8060778B2 (en) | Processor controller, processor control method, storage medium, and external controller | |
JP6073710B2 (ja) | 情報処理装置、起動障害からの自動復旧方法、及び起動障害からの自動復旧プログラム | |
CN105988885B (zh) | 基于补偿回滚的操作系统故障自恢复方法 | |
JP3122371B2 (ja) | 計算機システム | |
JPH1139178A (ja) | 計算機システム及び計算機システムにおけるチェックポイントスレッド方法 | |
Bowen et al. | Availability in parallel systems: Automatic process restart | |
JP3725318B2 (ja) | プロセス状態の管理方法およびプロセス管理装置、並びにこれを行うプログラムを記録した記録媒体 | |
JPH10133963A (ja) | 計算機の故障検出・回復方式 | |
Osman et al. | Process checkpointing in an open distributed environment | |
JP2008077388A (ja) | マルチプロセッサ制御システム、方法、およびプログラム | |
Lasnier et al. | Behavioral modular description of fault tolerant distributed systems with aadl behavioral annex | |
JPH09251393A (ja) | 計算機システム | |
JPH03138753A (ja) | マルチプロセッサシステムのブートロード装置 | |
WO2024177597A1 (en) | A booting system and method | |
JP2017520851A (ja) | トランザクションにおけるレジスタの動的なセーブ | |
JPH02139630A (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 | ||
FPAY | Annual fee payment |
Payment date: 20071127 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |