JPH1124943A - 計算機再起動方法および計算機停止方法 - Google Patents
計算機再起動方法および計算機停止方法Info
- Publication number
- JPH1124943A JPH1124943A JP9191840A JP19184097A JPH1124943A JP H1124943 A JPH1124943 A JP H1124943A JP 9191840 A JP9191840 A JP 9191840A JP 19184097 A JP19184097 A JP 19184097A JP H1124943 A JPH1124943 A JP H1124943A
- Authority
- JP
- Japan
- Prior art keywords
- kernel
- module
- interrupt
- computer
- restart
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 operations
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Retry When Errors Occur (AREA)
Abstract
ペレーティングシステムとは独立して処理を実施できる
外部割り込み処理について、その割り込みの処理をオペ
レーティングシステムの再起動の間も実行できるように
することにある。 【解決手段】 カーネルが複数のロードモジュールによ
り構成されるオペレーティングシステムを有する計算機
おけるカーネルがソフトウェア障害を検出した時にカー
ネルを再起動するために、オペレーティングシステムの
カーネルを主記憶に再ロードする場合に、無停止モジュ
ールに係るアドレス領域に対する仮想アドレス変換テー
ブルと、主記憶内の無停止モジュールに係るアドレス領
域の記憶内容と、無停止モジュールが処理する外部割り
込みに対する割り込み処理ハンドラの登録内容とについ
ては主記憶に保持したままにして、再ロード対象から外
して再ロードを行い、再ロード後にカーネルを実行す
る。
Description
関し、特に、オペレーティングシステムがソフトウェア
フォルトにより停止した時の再起動方法に関する。
計算機に接続しているハードウェアについて、それを制
御するデバイスドライバモジュールをカーネルから分離
して、カーネルが必要なデバイスドライバをロードして
利用することが可能になっている。上記の機能を持つオ
ペレーティングシステムにおいて、クロック割り込みを
横取りして管理する実時間処理ドライバを利用して、時
間制約の厳しいシステムの制御を計算機に実施させる方
式がある。この方式では、本来オペレーティングシステ
ムが受けとるべきクロック割り込みを実時間処理ドライ
バが横取りし、オペレーティングシステムの処理より優
先して実時間処理を実施し、その後オペレーティングシ
ステムに制御を戻す方法が取られる。この方式は、Wind
ows NT等のカーネルモードで動作するモジュールの追加
が容易なオペレーティングシステムで多く実現されてい
る。
な問題となる。上記の方式においては、実時間処理モジ
ュールをオペレーティングシステムのカーネルに依存し
ないようにすることにより、オペレーティングシステム
がソフトウェア障害により停止してしまっても、実時間
処理を継続することができる機能を持つものもある。ま
た、オペレーティングシステムが障害により停止する時
に、実時間処理モジュールにその旨通知を発行して、実
時間処理モジュール側でオペレーティングシステムの停
止に対処する処理を実施できるようにしているものもあ
る。
ウェア障害により停止してしまったオペレーティングシ
ステムを再起動する時、実時間処理ドライバも停止して
しまう。つまり、オペレーティングシステムの再起動処
理と実時間処理を同時には実施できないという問題点が
ある。これは、オペレーティングシステムの再起動時に
プロセッサをリセットしてしまうため、実時間モジュー
ルが動作するための仮想記憶、割り込み処理用の情報が
失われてしまうからである。これは、非常に短い周期で
停止することなく制御しなければならないハードウェア
がある場合には、計算機再起動時にその制御が途絶えて
しまうため問題である。
計算機の再起動中はハードウェアの発生する外部割り込
みを受け付けることができない。その割り込み処理がオ
ペレーティングシステムの機能に依存していなくてもで
ある。例えば、複数の計算機からなるクラスタ構成の計
算機システムでは、他の計算機が稼働しているかどうか
を一定間隔で問い合わせて、一定時間返答がなければそ
の計算機が実行を停止していると判断し、システム構成
を変更する処理を実施する。この場合に、計算機が停止
しているという判断を下すためには一定の待ち時間が必
要になり、システム再構成を開始するまでの時間が長く
なり問題である。この問合せに反応する外部割り込みを
カーネル再起動処理中も受け付けて返答を返すことがで
きれば、再構成を開始するまでの時間を短縮できる。ま
た、プロセッサをリセットする再起動方法では、メモリ
チェック、ハードウェア構成認識等の処理が実行される
ため、オペレーティングシステムの起動までの時間が長
くなるという問題がある。
グシステムでは、オペレーティングシステムがソフトウ
ェアフォルトにより停止し再起動を実施する場合に、再
起動処理の間、外部デバイスからの割り込みを受け付け
られず、割り込みに対する処理を実行できない問題があ
る。本発明の目的は、オペレーティングシステム再起動
時でも、オペレーティングシステムとは独立して処理を
実施できる外部割り込み処理について、その割り込みの
処理をオペレーティングシステムの再起動の間も実行で
きるようにすることにある。
め、本発明は、カーネルが複数のロードモジュールによ
り構成されるオペレーティングシステムを有する計算機
おけるカーネルがソフトウェア障害を検出した時にカー
ネルを再起動する計算機再起動方法であり、オペレーテ
ィングシステムのカーネルを主記憶に再ロードする際、
特定のモジュールに係るアドレス領域に対する仮想アド
レス変換テーブルと、主記憶装置の該アドレス領域の記
憶内容と、該特定のモジュールが処理する外部割り込み
に対する割り込み処理ハンドラの登録とについては保持
したままとして再ロード対象から外し、再ロード後、カ
ーネルを実行するようにしている。
処理するモジュールを、カーネルの再起動処理中も中断
することなく割り込み処理をする前記特定のモジュール
として登録し、該特定のモジュールが管理する外部デバ
イスの占有するハードウェア資源を登録し、前記登録し
た2つのデータを書き込み禁止領域に配置し、オペレー
ティングシステムのカーネルがソフトウェア障害を検出
してカーネルを再起動する時に、前記登録データに基づ
きカーネル再起動時の外部デバイスの初期化手順、およ
びカーネルがロードするモジュールの構成を決定するこ
とにより再ロード対象を決定するようにしている。
により構成されるオペレーティングシステムを有する計
算機おけるカーネルがソフトウェア障害を検出した時に
カーネルの処理を停止する計算機停止方法であり、カー
ネルがソフトウェア障害を検出したとき、プロセッサを
リセットすることなく、カーネル再起動中も特定の割り
込みに対する処理ができるように割り込み処理に利用さ
れる主記憶内容および割り込みハンドラの設定を主記憶
中に維持したままカーネルの処理を停止するようにして
いる。
により構成されるオペレーティングシステムを有する計
算機おけるカーネルがソフトウェア障害を検出した時に
カーネルを再起動する計算機再起動方法であって、上記
の計算機停止方法により主記憶中に格納された割り込み
処理用の主記憶内容、および割り込みハンドラの設定
を、オペレーティングシステムカーネル起動時に引き継
ぐようにしている。
により構成されるオペレーティングシステムを有する計
算機おけるカーネルがソフトウェア障害を検出した時に
カーネルを再起動する計算機再起動方法であり、カーネ
ル初期起動時のカーネルを構成するモジュールの主記憶
へのロードと外部デバイスの初期化が終了した時点で、
特定の割り込み処理で使用されるデータ領域以外の主記
憶内容と、カーネル初期起動時のレジスタ内容を二次記
憶装置に格納し、カーネルが停止した時に、特定の割り
込みハンドラの設定を保持したまま、前記二次記憶装置
に格納された特定の割り込み処理で使用されるデータ領
域以外の主記憶内容と、カーネル初期起動時のレジスタ
内容を復元して、カーネルを構成するモジュールの主記
憶へのロードと、外部デバイスの初期化以降の処理を再
開することで再起動を実施するようにしている。
一の実施の形態を説明する。図1は本発明の実施の形態
の計算機を示す図である。計算機100はプロセッサ1
01、主記憶102、読み取り専用メモリ103、磁気
ディスク105、外部デバイス106、および、10
7、割り込みコントローラ104、各構成要素を接続す
るバス108、割り込み信号バス109からなる。読み
取り専用メモリ103には、計算機の初期化処理を実行
するプログラムが格納されており、プロセッサ101が
リセット状態になった時に制御が移るアドレスに初期化
プログラムが配置されるようにバス108に接続されて
いる。読み取り専用メモリ103に格納されているプロ
グラムは、ハードウェア構成を表すデータを主記憶内に
構築する。更に磁気ディスクのあらかじめ定められた領
域にあるデータを主記憶にロードし、それをプログラム
とみなして制御を渡す。この例では、ローダ114が磁
気ディスク105の定められた領域にあり、これが主記
憶102にロードされて実行される。処理を引き継いだ
ローダ114は、カーネル111を主記憶にロードし、
プロセッサの仮想アドレス変換機構を設定して、プロセ
ッサを仮想アドレスモードに移し、カーネルを実行す
る。この時、ローダはハードウェア構成データをカーネ
ルに引き渡す。
照してカーネルが管理するハードウェアデバイスの初期
化処理を実施し、モジュール構成ファイル110の内容
にしたがってカーネルからは分離されたプログラムモジ
ュールを主記憶102にロードし、それぞれのモジュー
ルの初期化処理を実行する。例えば、モジュール構成フ
ァイルが、再起動ローダ113、デバイスドライバ11
2をロードするように書かれていれば、カーネルはこれ
らを主記憶にロードし、それぞれの初期化ルーチンを実
行する。図1は、主記憶にカーネル、再起動ローダ、お
よび、デバイスドライバがロードされていることを示し
ている。最後に、カーネルは最初のプロセスを生成し
て、計算機起動手順は完了する。
ィングシステムカーネルがソフトウェア障害により停止
してしまった時に、プロセッサをリセットして上記の手
順で計算機を再起動してしまうと、再起動の間、仮想ア
ドレスモードは解除され、外部デバイス106、およ
び、107からの割り込みを受け付けることができなく
なる。ここでは、外部デバイス106が発生する割り込
みは、カーネルがソフトウェア障害により停止し、再起
動している間も処理しなければならない割り込みで、デ
バイスドライバ112により管理されるものとして説明
する。本発明は、カーネルの再起動処理をしている間も
特定の割り込みを受け付け続け、割り込み処理を実行可
能な再起動手順を提供するものである。
12により管理されるものとする。デバイスドライバ1
12は、カーネルが提供するサービスを利用せずに外部
デバイス106の割り込みを処理するようにプログラム
されているモジュールである。ここで述べる実施の形態
では、デバイスドライバ112は、無停止モジュールと
して再起動ローダ113の無停止モジュール管理テーブ
ル500に登録される。再起動ローダ113は、カーネ
ルがソフトウェア障害により停止してカーネルの再起動
を実施する時に実行されるモジュールであり、無停止モ
ジュールとして管理テーブル500に登録されているモ
ジュールの処理環境を維持したままカーネルの再起動処
理を実行する。
モジュールが配置されている仮想アドレス、それに対す
るアドレス変換テーブル、モジュールが格納されている
物理メモリ、無停止モジュールが処理すべき割り込みの
割り込みハンドラの設定を指している。アドレス変換テ
ーブルはページテーブル410に設定され、割り込みハ
ンドラは割り込みハンドラテーブル430に設定されて
いる。また、アドレス空間情報とハードウェア資源情報
は資源管理データ115に格納されている。再起動ロー
ダ113は、無停止モジュール管理テーブル500を参
照して、無停止モジュールが確保しているアドレス領
域、割り込みハンドラの設定を保持したまま、カーネル
の再ロード、および、実行を行なう。これにより、無停
止モジュールの割り込み処理の連続性を保つことができ
る。
について説明する。図2は、本発明のオペレーティング
システムのカーネルのアドレス空間を表現するデータ構
造を示している。200はカーネルのアドレス空間にロ
ードされているモジュールを記録するロードモジュール
管理テーブルである。各モジュールはファイルとして磁
気ディスクなどの二次記憶装置に格納されており、オペ
レーティングシステムローダ、または、カーネルにより
主記憶にロードされる。ロードモジュール管理テーブル
200は、主記憶にロードされている各モジュールのモ
ジュール名称201、モジュールのコード領域開始仮想
アドレス202、コード領域のサイズ203、データ領
域開始仮想アドレス、データ領域の大きさ205、およ
び、モジュールインターフェイス情報206を含んでい
る。モジュールインターフェイス情報は、ロードされる
モジュールがカーネルに提供するインターフェイスルー
チンの開始アドレスである。インターフェイスルーチン
206を登録することにより、カーネルはロードされた
モジュールの機能を利用できるようになる。
称がデバイスドライバ1であるモジュールのコード開始
アドレス、サイズ、データ開始アドレス、サイズ、およ
び、インターフェイスルーチン情報を格納している。こ
の図のロードモジュール管理テーブル200では、カー
ネル、再起動ローダ、デバイスドライバ1、およびデバ
イスドライバ2がカーネル空間にロードされていること
を示している。220は、カーネルの仮想アドレス空間
の空き領域を表現するカーネル仮想空間空き領域リスト
を保持している。220は空き領域を表現する空きブロ
ック構造体230を指している。空きブロック構造体2
30は、空き領域の開始仮想アドレス232、その空き
領域のサイズ233、および、次の空き領域を表現する
空きブロック構造体へのポインタ231を含んでいる。
231は次の空きブロック構造体である240のアドレ
スを格納している。この図の220では、それぞれアド
レス232、242から始まり、大きさが233、24
3である2つの連続した空き領域がカーネルの仮想アド
レス空間にあることを示している。250は、物理メモ
リの空き領域を表現する物理メモリ空き領域リストであ
る。物理メモリ空き領域リストも、カーネル仮想空間空
き領域リストと同様に構成される。空きブロック構造体
260、および、270がそれぞれ物理メモリの空き領
域を表現している。この図の250も、220と同様に
2つの連続した空き物理メモリがあることを表現してい
る。
を管理するデータ構造について説明する。図3は、本発
明の実施の形態の計算機に接続している外部デバイスが
占有する資源を表現するデータ構造を示している。30
0は、外部デバイスの制御用のレジスタが存在するアド
レス範囲を表現するデバイス占有アドレスリストであ
る。デバイス占有アドレスリスト300は、1つのアド
レス範囲を表現するデバイス占有アドレス構造体から成
り、図3では、310、320、330の3つのデバイ
ス占有アドレス構造体から構成されている。デバイス占
有アドレス構造体310は、デバイス制御レジスタ開始
アドレス312、大きさ313、そのアドレス範囲によ
り制御されるデバイスを管理しているモジュールのモジ
ュール番号314、および、デバイス占有アドレスリス
トを構成するためのリンク311を含んでいる。モジュ
ール番号314は、図2のロードモジュール管理テーブ
ル200へのインデックスとなる。例えば、デバイス占
有アドレス構造体310がカーネルが管理している外部
デバイスの占有資源を表現しているとすると、314の
モジュール番号には0が格納される。デバイスドライバ
1の管理するデバイスがあるならば、そのモジュール番
号には2が格納される(ロードモジュール管理テーブル
200へのインデックスは0から数えるとする)。
み番号を記録するデバイス占有割り込みテーブルであ
る。デバイス占有割り込みテーブル340は、プロセッ
サが認識する割り込み番号が、どのモジュールの管理す
るハードウェアデバイスに占有されているかを記録して
いる。例えば、カーネルが管理するクロック割り込み用
デバイスが割り込み番号0を占有しているならば、デバ
イス占有割り込みテーブルの0番目のエントリ341
に、カーネルのモジュール番号である0が格納される。
造について説明する。図4は、プロセッサが利用する仮
想アドレス変換テーブル、および、割り込み処理用テー
ブルのデータ構造を示している。410は、プロセッサ
の仮想アドレス−物理アドレス変換を規定するページテ
ーブルである。ページテーブル410のエントリは、プ
ロセッサの規定するページサイズ毎に存在する。各エン
トリは、仮想アドレス空間内のそれぞれの仮想ページに
ついて、そのエントリが有効であるかを示すフラグ41
1、そのページが書き込み可能であるかを示すフラグ4
12、そのエントリの仮想ページに対応する物理ページ
の開始アドレス413を含んでいる。400は、プロセ
ッサのレジスタで、ページテーブル410の開始アドレ
スを格納している。プロセッサは、仮想アドレスモード
で動作している時、ページテーブルレジスタ400を参
照して、仮想アドレスから実際のメモリアクセスに必要
な物理アドレスを生成する。
いて、割り込み番号毎の割り込みハンドラを規定する割
り込みハンドラテーブルである。割り込みには要因毎に
番号が振られている。割り込みコントローラ104は、
外部デバイスからの割り込み要求を受け、割り込み番号
に変換してプロセッサに通知する。割り込みハンドラテ
ーブル430は、それぞれの割り込み番号毎の割り込み
ハンドラの開始アドレスを格納している。例えば、クロ
ック割り込みが0番の割り込みを利用しているならば、
割り込みハンドラテーブルの0番目のエントリ431に
は、クロック割り込みハンドラのアドレスが格納されて
いる。420は、プロセッサのレジスタで、割り込みハ
ンドラテーブル430の開始アドレスを格納している。
プロセッサは、割り込みハンドラテーブルレジスタ42
0を参照して、割り込みを検出した時に要因毎の割り込
みハンドラに制御を移す。例えば、プロセッサがクロッ
ク割り込み、つまり0番の割り込みを検出した時、プロ
セッサは割り込みハンドラテーブルレジスタ420が指
すテーブル430の0番エントリ431に格納されてい
るハンドラに制御を移す。
について説明する。再起動ローダは、オペレーティング
システムのカーネルがソフトウェア障害により停止し、
オペレーティングシステムを再起動する時に、オペレー
ティングシステムカーネルを主記憶にロードし、カーネ
ルを実行するモジュールである。図5は、再起動ローダ
が管理するデータ構造を示している。500は無停止モ
ジュール管理テーブルであり、再起動ローダによりカー
ネルの再ロード、再起動中もハードウェアデバイスから
の割り込み受け付けて処理を実行するモジュールである
無停止モジュールの情報を管理するデータ構造である。
無停止モジュール管理テーブル500は、無停止モジュ
ール名501、無停止モジュールのコード領域開始アド
レス502、コード領域の大きさ503、データ領域の
開始アドレス504、データ領域の大きさ505、無停
止モジュールが管理する外部デバイスが占有する資源の
情報506、および、無停止モジュールの再初期化ルー
チンのアドレスを含んでいる。利用ハードウェア情報5
06には、無停止モジュールが管理する外部デバイスの
制御用占有アドレス、占有割り込み番号が記録されてい
る。再初期化ルーチン507には、カーネルが再起動し
たときに実行されるルーチンのアドレスを格納する。再
初期化ルーチンが何を実行するかは、モジュールが管理
しているハードウェアに依存するが、少なくとも、ロー
ドモジュール管理テーブル200へのインターフェイス
ルーチン206の登録を実行する。これにより、カーネ
ルは再び無停止モジュールの提供する機能を利用できる
ようになる。
0では、再起動ローダ、および、デバイスドライバ1が
無停止モジュールとして登録されている。更に、508
ないし513には、デバイスドライバ1の占有アドレ
ス、外部デバイス情報、再初期化ルーチンアドレスが格
納されている。再起動ローダは、無停止モジュール管理
テーブル500の情報を利用して、オペレーティングシ
ステムカーネル再起動時のカーネル空間、および、外部
デバイス構成情報を構築してカーネルに引き渡す。カー
ネルが、これらの情報を参照して起動手順を決定するこ
とで、カーネル再起動中でも中断することなく、外部デ
バイスからの割り込み処理を可能にする。無停止モジュ
ール管理テーブル500は、再起動ローダのデータ領域
に置かれるデータ構造で、再起動ローダモジュールによ
り管理される。再起動ローダモジュールは、モジュール
の初期化時に再起動ローダのデータ領域を書き込み禁止
とし、ソフトウェア障害による無停止モジュール管理テ
ーブル500の破壊を防ぐ。データ領域を書き込み禁止
にするには、データ領域を含む仮想ページに対応するペ
ージテーブル410のエントリの書き込み可フラグをリ
セットすることで実現できる。
モジュールを定義するファイルの形式について説明す
る。図6は、本発明の実施の形態のロードモジュールを
定義するデータ構造を示している。110は、モジュー
ル構成ファイルの内容を示している。モジュール構成フ
ァイル110の各エントリは、カーネルがロードするモ
ジュールの名称601、モジュールが格納されているフ
ァイル名602、および、そのモジュールが無停止モジ
ュールであるかを示すフラグ603を含んでいる。図6
の例では、カーネルは再起動ローダ、デバイスドライバ
1、デバイスドライバ2の順でモジュールを主記憶に読
み込む。デバイスドライバ1が格納されているファイル
の名前はdriver1で、デバイスドライバ1は無停
止モジュールであることを表現している。モジュール構
成ファイル110は、オペレーティングシステムが予め
定めた名前のファイルに格納され、カーネルは容易にこ
のファイルを発見できる。
ュールが格納されるファイルの形式を示している。ロー
ドモジュールを格納しているファイル700は、モジュ
ールの実行コードが格納されているコード開始オフセッ
ト701、実行コードのサイズ702、データが格納さ
れているデータ開始オフセット703、データ領域のサ
イズ704、モジュールの初期化ルーチンの実行コード
が格納されている初期化ルーチンオフセット705、モ
ジュールの再配置情報開始オフセット706、再配置情
報のサイズ707、実行コード708および、データ7
09を保持している。モジュールの再配置情報は710
は、モジュールを主記憶にロードする時に利用するデー
タで、モジュールのコード、および、データ領域がロー
ドされたアドレスにしたがってモジュールのコードを変
更するためのデータである。これにより、ロードするモ
ジュールの構成が変わってモジュールがロードされるア
ドレスが変わっても良い。
システム再起動の手順について説明する。図8は、オペ
レーティングシステムを再起動する時に実行される再起
動ローダの処理手順を示すフローチャートである。ま
ず、ステップ801でカーネル空間に再起動ローダがロ
ードされているか検査する。再起動ローダがロードされ
ていない、あるいは、ロードされているかどうか判別で
きない場合は、ステップ802へ進む。ステップ802
では、プロセッサをリセットして計算機の再起動を実行
する。多くの計算機ではプロセッサをリセット状態にす
ると、仮想アドレス変換が禁止になり、割り込みハンド
ラの設定も無効になり、プロセッサが規定する物理アド
レスに制御を移す。通常、この物理アドレスには計算機
の起動手順を記憶した読み込み専用メモリ103がマッ
プされている。この起動手順は、計算機に接続している
ハードウェアデバイスをリセットする。これは、オペレ
ーティングシステムのカーネル実行時に外部デバイスを
既知の状態にするためである。この起動手順のために、
特に、プロセッサがリセットされてしまうために、従来
の計算機ではオペレーティングシステム再起動の間、外
部デバイスからの割り込み処理を受け付けることができ
なくなってしまう。一方、ステップ801で再起動ロー
ダがロードされていると判断された場合は、プロセッサ
をリセットすることなく、ステップ803に進む。ステ
ップ803からが、実際の再起動ローダが実行する処理
である。
理テーブル200に登録されているモジュールがハード
ウェアリセットルーチンをもっているか検査し、登録さ
れていれば、そのリセットルーチンを呼び出す。特別な
ハードウェアリセットが必要ないデバイスの場合は、リ
セットルーチンは登録しなくてもよい。次のステップ8
04では、無停止モジュール管理テーブル500の各エ
ントリの利用ハードウェア情報506を参照して、無停
止モジュールが受け付ける以外の割り込みについて、そ
れらの割り込みの割り込みハンドラを無効にする。具体
的には、割り込みハンドラテーブル430のエントリ
を、割り込みを受け付けるだけの割り込みハンドラのア
ドレスに設定する。次のステップ805では、この後に
続く無停止モジュールのデータ領域へのデータ格納に備
えて、無停止モジュールのデータ領域の格納されている
ページを書き込み可能に設定する。具体的には、ページ
テーブル410の、無停止モジュールのデータ領域に対
応するエントリの書き込み可フラグ412をセットす
る。
08では、カーネルが再起動時に参照するカーネル空間
空き領域リスト、物理メモリ空き領域リスト、デバイス
占有アドレスリスト、および、デバイス占有割り込みテ
ーブルを作成する。ステップ806では、仮想メモリ空
き領域リスト、および、物理メモリ空き領域リストを作
成する。ステップ806では、無停止モジュール管理テ
ーブル500を参照して、無停止モジュール、再起動ロ
ーダ、およびカーネルスタック116が利用している以
外のアドレス領域を空き領域とする空き領域リストを、
再起動ローダのデータ領域内に作成する。空き領域リス
トは、オペレーティングシステムの管理する空き領域リ
スト220、および、250と同じデータ構造である。
ステップ807では、デバイス占有アドレスリストを作
成する。ステップ807では、ステップ806と同様、
無停止モジュール管理テーブル500を参照して、無停
止モジュールが利用している以外のアドレス領域を空き
領域とするデバイス占有アドレスリストを再起動ローダ
のデータ領域内に作成する。ここで作成するデバイス占
有アドレスリストは、オペレーティングシステムの管理
するデバイス占有アドレスリスト300とほぼ同じデー
タ構造であるが、デバイス占有アドレス構造体のモジュ
ール番号については、モジュール番号ではなくモジュー
ル名称を格納する。ステップ808では、デバイス占有
割り込みテーブルを作成する。ステップ807と同様
に、無停止モジュールが利用している以外の割り込み番
号を未使用とするデバイス占有割り込みテーブルを、再
起動ローダのデータ領域内に作成する。ここでも、ステ
ップ807と同様、デバイス占有割り込みテーブルの各
エントリには、モジュール番号ではなくモジュール名称
を格納する。
ータ構造は、カーネルが再起動した時に、無停止モジュ
ールが管理しているハードウェアデバイス資源を、誤っ
て他のモジュールに割り当てないようにするためのデー
タ構造である。最後に、再起動ローダは、主記憶にオペ
レーティングシステムカーネルをロードし(ステップ8
09)、再起動ローダの再初期化ルーチンのアドレスを
パラメータに加えてカーネルを実行する(ステップ81
0)。
システムカーネルの初期化処理について説明する。図9
は、本発明の実施例のオペレーティングシステムカーネ
ルの初期化処理手順を示すフローチャートである。ま
ず、カーネルは起動時に再起動ローダによる起動か、通
常の起動かを判別する(ステップ901)。これは、再
起動ローダによる起動では、再起動ローダの再初期化ル
ーチンのアドレスをパラメータとしてカーネルに渡すの
で、容易に判別できる。再起動ローダによる起動でない
場合は、通常手順によりカーネルの実行を進める(ステ
ップ902)。ここでの通常手順とは、バス、および、
割り込みコントローラの初期化、カーネル管理のハード
ウェアデバイスの初期化、モジュール構成ファイルに記
されたモジュールの主記憶へのロードと初期化、初期プ
ロセスの実行である。
プ903へ進む。ステップ903では、再起動ローダモ
ジュール用にロードモジュール管理テーブル200のエ
ントリを割り当てる。続くステップ904で、パラメー
タとして渡された再起動ローダモジュールの再初期化ル
ーチンのアドレスを基に再初期化ルーチンを実行する。
再起動ローダの再初期化ルーチンは、無停止モジュール
の再初期化ルーチンと同様の処理を実施する。この再初
期化ルーチンでは、ロードモジュール管理テーブル20
0の設定を実施する。特に、管理テーブル200のモジ
ュールインターフェイス206が設定され、再起動ルー
チンが提供するインターフェイスルーチンをカーネルか
ら呼び出せるようになる。続く、ステップ905でハー
ドウェア構成情報のコピー、ステップ906と907で
再起動ローダがカーネル起動前に構築した空き領域リス
ト、デバイス占有アドレスリスト、デバイス占有割り込
みテーブルをカーネルのデータ空間にコピーする。これ
らの処理は、再起動ローダが提供するインターフェイス
ルーチンにより実行される。
いる以外のメモリ領域を空き領域とする空き領域リス
ト、空のデバイス占有アドレスリスト、および、すべて
の割り込みのエントリが未使用であるデバイス割り込み
テーブルを作成して、以降の処理を実行する。それに対
し、再起動ローダによるカーネル再起動時には、再起動
ローダが作成した空き領域リスト、デバイス占有アドレ
スリスト、および、デバイス占有割り込みテーブルを利
用する。これにより、無停止モジュールのデータ領域の
初期化、外部デバイスの初期化を避け、無停止モジュー
ルの外部デバイスに関連する処理の連続性を保持するこ
とが可能になる。
ルが管理するバスと割り込みコントローラ以外のすべて
の外部デバイスについての初期化処理である。ステップ
909では、外部デバイスが利用するアドレス領域、お
よび、割り込み番号が、既に利用されているか検査す
る。これは、デバイス占有アドレスリスト300、およ
び、デバイス占有割り込みテーブル340を参照するこ
とにより検査する。再起動ローダによる再起動時には、
これらのデータ構造に無停止モジュールが利用している
デバイス情報が含まれていることになる。外部デバイス
の使用するアドレス領域、および、割り込み番号が未使
用であるならば、そのアドレス領域、および、割り込み
番号をデバイス占有アドレスリスト300と、デバイス
占有割り込みテーブル340に、カーネルのモジュール
番号とともに登録する(ステップ910)。カーネルの
モジュール番号は、ロードモジュール管理テーブル20
0を検索することによって得られる。さらに、対象とな
っている外部デバイスの初期化を実施し(ステップ91
1)、ステップ912へ進む。
するアドレス、あるいは、割り込み番号が既にデバイス
占有アドレスリスト300、および、デバイス占有割り
込みテーブル340に登録されているならば、これは、
無停止モジュールが利用しているデバイスであるか、ハ
ードウェア構成に誤りがあるかのどちらかである。も
し、初期化処理中の外部デバイスが利用するアドレス、
割り込み番号が既にデバイス占有アドレスリスト30
0、および、デバイス占有割り込みテーブル340に登
録されている場合は、ステップ910、および、911
は実行せずにステップ912へ進む。これにより、無停
止モジュールが管理している外部デバイスの初期化を避
け、無停止モジュールのデバイスに関連する処理の連続
性が保持される。ステップ912では、処理対象デバイ
スを他のデバイスに設定して、ステップ908へ進む。
処理対象デバイスが残っていなければ、ステップ908
の検査からステップ1001へ処理を進める。
ートは図10に示す。図10のフローチャートは、主
に、モジュールのロード処理に関する。ステップ100
1では、モジュール構成ファイル110をメモリに読み
込む。続くステップ1002ないし1011はモジュー
ル構成ファイルに登録されている各モジュールについて
実行する。ステップ1002と1008により、各モジ
ュール毎に処理を実行するようループを構成する。ルー
プ内の最初のステップ1003では、モジュール構成フ
ァイル110の無停止フラグ603を参照して、処理対
象のモジュールが無停止モジュールかどうか検査する。
無停止モジュールでない場合は、ステップ1004へ進
む。
ュールの主記憶へのロードを実施する。まず、ステップ
1004で必要なメモリ領域を獲得する。これは、空き
領域リスト220、および、250を参照してモジュー
ルを格納するのに十分な空き領域を探し、見つけた領域
を空きリストから外すことで実施する。モジュールを格
納するのに必要な領域は、モジュールを格納しているフ
ァイルの先頭部分702、および、704を参照して求
める。メモリの割当では、ページテーブル410の設定
も行なう。割り当てたアドレス領域に対応するページテ
ーブル410のそれぞれのエントリについて、有効フラ
グ411をセットし、割り当てた物理ページの先頭アド
レスを413に格納する。さらに、書き込み可能フラグ
412もセットする。コード領域が格納されているペー
ジの書き込み可能フラグ412は、コード領域のロード
後リセットする。
ファイル110のファイル名602で示されるファイル
を、ステップ1004で割り当てた領域にロードする。
ロード後、ファイルに格納されている再配置情報70
6、707、および、710によりコード領域を修正す
る。さらに、ロードモジュール管理テーブル200に処
理中のモジュール用のエントリを割り当て、そのエント
リのアドレス、および、サイズ情報を設定する(ステッ
プ1006)。次に、モジュールの初期化ルーチンを実
行する(ステップ1007)。モジュールの初期化ルー
チンは、少なくとも、ロードモジュール管理テーブル2
00のモジュールインターフェイス206を設定する。
もし、その他のモジュールが必要とする初期化処理があ
れば、それも実行する。モジュールインターフェイス2
06が設定されると、カーネルはモジュールが提供する
処理ルーチンのアドレスを知ることができ、モジュール
の提供する処理を実行できるようになる。続くステップ
1008では、処理対象モジュールを次のモジュール構
成ファイルのエントリに設定して、ステップ1002へ
戻る。
ールである場合について説明する。ステップ1003
で、処理対象モジュールが無停止モジュールであると判
定された場合、ステップ1009へ進む。ステップ10
09では、ロードモジュール管理テーブル200の更新
処理をする。まず、ロードモジュール管理テーブル20
0に処理中のモジュールのデータを格納するエントリを
割り当てる。割り当てたエントリに格納すべき202、
ないし、205のアドレス、および、サイズ情報は、再
起動ローダのデータ領域内の無停止モジュール管理テー
ブル500の502、ないし、505に格納されてお
り、これを割り当てたエントリにコピーし、ロードモジ
ュール管理テーブル200を更新する。
ンを実行する(ステップ1010)。再初期化ルーチン
のアドレスは、無停止モジュール管理テーブル500の
再初期化ルーチン507に格納されており、無停止モジ
ュール名称より再初期化ルーチンを得ることができる。
無停止モジュールの再初期化ルーチンは、少なくとも、
ロードモジュール管理テーブル200のインターフェイ
スルーチン206の設定を実行する。必要であれば、ハ
ードウェアデバイスの設定などその他の処理を行なう。
この時に、無停止モジュールは新しくロードされないた
め、これまでのデータ領域は保存され、無停止モジュー
ルのデバイスに関連する処理の連続性を保持することが
できる。
アドレスリスト300、および、デバイス占有割り込み
テーブル340の内、処理対象の無停止モジュールが管
理するアドレス領域、および、割り込み番号を表現して
いるエントリのモジュール番号の欄に、ステップ100
9で割り当てたロードモジュール管理テーブル200の
エントリ番号を格納する。無停止モジュールが管理する
デバイスアドレス領域と割り込み番号は、無停止モジュ
ール管理テーブル500の利用ハードウェア情報506
より得られる。空き領域リスト220と250について
は、再起動ローダが無停止モジュールのあるアドレス領
域を空きリストから外しているので、特別な処理をする
必要はない。続いてステップ1008へ進み、次のロー
ドモジュールの処理を行なう。ステップ1002で、す
べてのモジュールをロードしたと判定されたら、ステッ
プ1012へ進む。ステップ1012は初期プロセスの
作成と実行を行ない、オペレーティングシステムの起動
を完了する。
について説明する。モジュールの初期化ルーチンはすべ
てのモジュールが持たなければならないルーチンで、カ
ーネルの起動時に実行される。図11は、本発明の実施
の形態の、無停止モジュールの初期化ルーチンの処理を
示すフローチャートである。ここでは、モジュール構成
ファイル110に設定されているデバイスドライバ1の
初期化ルーチンであるとして説明する。まず、デバイス
ドライバ1のカーネルへのインターフェイスとなるモジ
ュールインターフェイスを、ロードモジュール管理テー
ブル200のデバイスドライバ1用に割り当てたエント
リ211に格納する(ステップ1101)。次のステッ
プ1102では、デバイスドライバ1用のデバイス占有
アドレス構造体を割り当て、開始アドレス、サイズ、モ
ジュール番号を設定し、デバイス占有アドレスリスト3
00に追加する。さらに、デバイス占有割り込みテーブ
ル340の、デバイスドライバ1が管理する割り込み番
号のエントリにデバイスドライバ1のモジュール番号を
格納する。これにより、デバイスドライバ1の利用する
デバイスアドレス領域、および、割り込み番号を、デバ
イス占有アドレスリスト300、および、デバイス占有
割り込みテーブル340に登録する。続いて、モジュー
ルの無停止モジュール管理テーブル500への登録を行
なう(ステップ1103)。無停止モジュール管理テー
ブルに現在処理中のモジュール用のエントリを割り当
て、アドレス、サイズ情報、利用ハードウェア情報、お
よび、再初期化ルーチンのアドレスを設定する。設定
は、再起動ローダの提供するインターフェイスルーチン
により実行する。無停止モジュール管理テーブル500
を更新する場合、無停止モジュール管理テーブル500
のあるページは書き込み禁止に設定されているので、更
新の前後でページテーブル410の書き込み可フラグを
操作する。
ェイスルーチンについて説明する。再起動ローダはそれ
自身が無停止モジュールであり、初期化ルーチン、再初
期化ルーチン、ハードウェア構成データコピールーチ
ン、無停止モジュール登録ルーチンを提供する。まず、
再起動ローダの初期化ルーチンの処理について説明す
る。図12は、再起動ローダの処理手順を示すフローチ
ャートである。再起動ローダは無停止モジュールであ
り、再起動ローダの初期化ルーチンは、計算機が起動さ
れた時にのみ呼ばれる。まず、再起動ローダの初期化ル
ーチンでは、以降の再起動処理に備えて、読み込み専用
メモリ103に格納されている初期プログラムが作成し
たハードウェア構成情報を、再起動ローダのデータ領域
にコピーする(ステップ1201)。次に、無停止モジ
ュール管理テーブル500の初期化(ステップ120
2)、再起動ローダ自身の無停止モジュール管理テーブ
ルへの登録(ステップ1203)を実行する。最後に、
無停止モジュール管理テーブル、および、ハードウェア
構成データが格納されている再起動ローダのデータ領域
に割り当てられているページを書き込み禁止に設定して
(ステップ1204)終了する。
ルと同じであり、ロードモジュール管理テーブルへのイ
ンターフェイスルーチンの登録処理をする。ハードウェ
ア構成データコピールーチンは、再起動ローダのデータ
領域に格納されているハードウェア構成データをカーネ
ルのデータ領域にコピーする。無停止モジュール登録ル
ーチンは、無停止モジュールに関するデータを無停止モ
ジュール管理テーブル500に登録する。通常、再起動
ローダのデータ領域は仮想アドレス機構により書き込み
禁止に設定されているので、登録ルーチンは書き込み禁
止を一旦解除して、無停止モジュールデータをテーブル
500に書き込み、再びデータ領域を書き込み禁止とす
る。
グシステムカーネルがソフトウェア障害により停止して
再起動処理を実施しても、無停止モジュールが利用する
として登録した外部デバイスの割り込みの処理を中断す
ることなく実施することができる。また、プロセッサリ
セット時に実行されるハードウェア構成認識処理を回避
でき、再起動までの時間を短縮できる。
に外部デバイスの制御を実施するモジュールを無停止モ
ジュールとする実施形態について述べる。クロック割り
込みは、通常カーネル本体が管理する割り込みである。
時間制約の厳しい処理を実施する場合に、クロック割り
込みをカーネルに渡す前に横取りして、時間制約付きの
処理を優先して実施するモジュールを利用する方式があ
る。割り込みを横取りするとは、割り込みハンドラの設
定を変更してしまうことをいう。このような時間制約の
厳しい制御においては、時間制約が厳しいと同時に、ク
ロック割り込みに対する処理の中断が許されない場合が
ある。本発明によれば、クロック割り込みを横取りする
モジュールを無停止モジュールとすることで、カーネル
がソフトウェア障害により停止して再起動することにな
っても、クロック割り込みに対する処理を中断すること
なく継続することができる。クロック割り込み処理モジ
ュールを無停止モジュールとして登録する時に、クロッ
ク割り込みの割り込み番号、および、クロック割り込み
の制御アドレスをモジュールの占有資源としてデバイス
として無停止モジュール管理テーブル500に登録す
る。これにより、カーネルの再起動の前後で、クロック
割り込みの処理環境は引き継がれる。また、カーネルの
再起動時に、カーネルが自身の管理デバイスであるクロ
ック割り込みが他のモジュールに占有されていることを
認識し、クロック割り込みに関する設定を変更せずに起
動処理を進める。これにより、オペレーティングシステ
ムカーネルがソフトウェア障害により停止し再起動され
ても、クロック割り込み処理は中断することなく、信頼
性が高く、高可用な制御システムを実現できる。
る。図13はこの実施形態における計算機の起動手順に
示すフローチャートである。ステップ1301から13
03にて通常のカーネル初期化処理であるカーネルデー
タの初期化(ステップ1301)、外部デバイスの初期
化(ステップ1302)、および、カーネルモジュール
のロードと初期化(ステップ1303)を実施する。モ
ジュールの初期化は、第一の実施の形態でのように、モ
ジュールが無停止モジュールであるならば、無停止モジ
ュール管理テーブル500にその利用アドレス情報を登
録する。次のステップ1304では、主記憶102のう
ち、カーネル、および、その他のモジュールがロードさ
れている領域で、無停止モジュールのデータ領域以外の
領域を磁気ディスク105の再起動ファイルに記録す
る。さらに、ステップ1305では、ページテーブルレ
ジスタ、および、カーネルスタックのスタックポインタ
値を磁気ディスク105の再起動ファイルに保存し、ス
テップ1306で次のステップ1307のアドレスを磁
気ディスク105の再起動ファイルに保存する。ここで
作成された再起動ファイルは、カーネルがソフトウェア
障害のための再起動する時にカーネルのソフトウエア構
成を再現するために利用する。
るオペレーティングシステムカーネルの再起動手順を示
すフローチャートである。この再起動手順は、無停止モ
ジュールとして登録されている再起動ローダにより実施
される。図にしたがって再起動手順を説明する。まず、
ページテーブルレジスタ400の指しているページテー
ブル410を、再起動ローダのデータ領域にコピーし
(ステップ1401)、ページテーブルレジスタ400
がコピーされた方のページテーブルを指すように変更す
る(ステップ1402)。次に、磁気ディスク105の
再起動ファイルに記録されたカーネル起動時の主記憶1
02の内容を、主記憶102にコピーする(ステップ1
403)。続いて、ページテーブルレジスタとスタック
ポインタ、および、ステップ1307のアドレスを磁気
ディスク105の再起動ファイルより取得する(ステッ
プ1404、1405)。続くステップ1406で、取
得したページレジスタ値、および、スタックポインタ値
をレジスタに設定し、ステップ1307へ処理を移す
(ステップ1407)。第2の実施形態では、磁気ディ
スク105の再起動ファイルは、無停止モジュールとし
て登録されているモジュールのデータ領域を含んでいな
いため、カーネル再起動の前後で無停止モジュールのデ
ータ領域は主記憶102に保存されている。これによ
り、無停止モジュールの外部割り込み処理の連続性を維
持することができる。
したときに、プロセッサのリセットを行わないように
し、カーネル再起動中も特定の割り込みに対する処理が
できるように割り込み処理に利用される主記憶の内容を
主記憶中に維持したまま、かつ割り込みハンドラの設定
を主記憶中に維持したままカーネルの処理を停止するよ
うにしてもよい。そして、カーネルを再起動するとき、
主記憶中に格納された割り込み処理用の主記憶の内容、
および割り込みハンドラの設定を、そのまま引き継ぐよ
うにしている。
ソフトウェア障害を検出し再起動する時に、無停止モジ
ュール管理テーブル500を参照して、カーネル再起動
時の外部デバイスの初期化手順、および、ロードするモ
ジュールの構成を決定する手順を設けることにより、特
定の外部デバイスが発生する割り込みに対する処理をカ
ーネルの再起動処理中も中断することなく実施し続ける
ことができる。プロセッサをリセットすることなくオペ
レーティングシステムを再起動することにより、プロセ
ッサリセット時に実行されるハードウェア構成検査等の
処理を回避することができ、オペレーティングシステム
が再起動するまでの時間を短縮できる。
を示す図である。
管理するデータ構造を示す図である。
示す図である。
ーブルのデータ構造を示す図である。
図である。
る。
す図である。
を示す図である。
である。
に続くフローチャートを示す図である。
ートを示す図である。
図である。
順の処理のフローチャートを示す図である。
処理のフローチャートを示す図である。
Claims (5)
- 【請求項1】 カーネルが複数のロードモジュールによ
り構成されるオペレーティングシステムを有する計算機
おけるカーネルがソフトウェア障害を検出した時にカー
ネルを再起動する計算機再起動方法であって、 オペレーティングシステムのカーネルを主記憶装置に再
ロードする際、 特定のモジュールに係るアドレス領域に対する仮想アド
レス変換テーブルと、主記憶装置の該アドレス領域の記
憶内容と、該特定のモジュールが処理する外部割り込み
に対する割り込み処理ハンドラの登録とについては保持
したままとして再ロード対象から外し、再ロード後、カ
ーネルを実行することを特徴とする計算機再起動方法。 - 【請求項2】 請求項1記載の計算機再起動方法におい
て、 外部デバイスが発生する割り込みを処理するモジュール
を、カーネルの再起動処理中も中断することなく割り込
み処理をする前記特定のモジュールとして登録し、 該特定のモジュールが管理する外部デバイスの占有する
ハードウェア資源を登録し、 前記登録した2つのデータを書き込み禁止領域に配置
し、 オペレーティングシステムのカーネルがソフトウェア障
害を検出してカーネルを再起動する時に、前記登録デー
タに基づきカーネル再起動時の外部デバイスの初期化手
順、およびカーネルがロードするモジュールの構成を決
定することにより再ロード対象を決定することを特徴と
する計算機再起動方法。 - 【請求項3】 カーネルが複数のロードモジュールによ
り構成されるオペレーティングシステムを有する計算機
おけるカーネルがソフトウェア障害を検出した時にカー
ネルの処理を停止する計算機停止方法であって、 カーネルがソフトウェア障害を検出したとき、プロセッ
サをリセットすることなく、カーネル再起動中も特定の
割り込みに対する処理ができるように割り込み処理に利
用される主記憶内容および割り込みハンドラの設定を主
記憶装置中に維持したままカーネルの処理を停止するこ
とを特徴とする計算機停止方法。 - 【請求項4】 カーネルが複数のロードモジュールによ
り構成されるオペレーティングシステムを有する計算機
おけるカーネルがソフトウェア障害を検出した時にカー
ネルを再起動する計算機再起動方法であって、 請求項3記載の計算機停止方法により主記憶装置中に格
納された割り込み処理用の主記憶内容、および割り込み
ハンドラの設定を、オペレーティングシステムカーネル
起動時に引き継ぐことを特徴とする計算機再起動方法。 - 【請求項5】 カーネルが複数のロードモジュールによ
り構成されるオペレーティングシステムを有する計算機
おけるカーネルがソフトウェア障害を検出した時にカー
ネルを再起動する計算機再起動方法であって、 カーネル初期起動時のカーネルを構成するモジュールの
主記憶装置へのロードと外部デバイスの初期化が終了し
た時点で、特定の割り込み処理で使用されるデータ領域
以外の主記憶内容と、カーネル初期起動時のレジスタ内
容を二次記憶装置に格納し、 カーネルが停止した時に、特定の割り込みハンドラの設
定を保持したまま、前記二次記憶装置に格納された特定
の割り込み処理で使用されるデータ領域以外の主記憶内
容と、カーネル初期起動時のレジスタ内容を復元して、
カーネルを構成するモジュールの主記憶装置へのロード
と、外部デバイスの初期化以降の処理を再開することで
再起動を実施することを特徴とする計算機再起動方法。
Priority Applications (9)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19184097A JP3593241B2 (ja) | 1997-07-02 | 1997-07-02 | 計算機の再起動方法 |
| TW087110013A TW469409B (en) | 1997-07-02 | 1998-06-22 | Method to reboot an operating system |
| US09/107,388 US6253320B1 (en) | 1997-07-02 | 1998-06-30 | Operating system rebooting method |
| KR1019980026409A KR100306456B1 (ko) | 1997-07-02 | 1998-07-01 | 오퍼레이팅시스템의재기동방법 |
| CNB981178529A CN1143209C (zh) | 1997-07-02 | 1998-07-02 | 操作系统的重启动方法和计算机系统的控制方法 |
| CNB2004100033815A CN1251074C (zh) | 1997-07-02 | 1998-07-02 | 计算机的重启动方法 |
| US09/858,492 US7069430B2 (en) | 1997-07-02 | 2001-05-17 | Operating system rebooting during which one or more non-stop modules continuously execute a process based on interrupts accepted by the non-stop modules |
| US10/861,482 US7373496B2 (en) | 1997-07-02 | 2004-06-07 | Operating system rebooting apparatus for continuing to execute a non-stop module even during rebooting |
| US12/107,651 US7765395B2 (en) | 1997-07-02 | 2008-04-22 | Operating system rebooting method and apparatus for continuing to execute a non-stop module even during rebooting |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19184097A JP3593241B2 (ja) | 1997-07-02 | 1997-07-02 | 計算機の再起動方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH1124943A true JPH1124943A (ja) | 1999-01-29 |
| JP3593241B2 JP3593241B2 (ja) | 2004-11-24 |
Family
ID=16281398
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP19184097A Expired - Fee Related JP3593241B2 (ja) | 1997-07-02 | 1997-07-02 | 計算機の再起動方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (4) | US6253320B1 (ja) |
| JP (1) | JP3593241B2 (ja) |
| KR (1) | KR100306456B1 (ja) |
| CN (2) | CN1251074C (ja) |
| TW (1) | TW469409B (ja) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7069519B1 (en) | 1999-09-24 | 2006-06-27 | Hitachi, Ltd. | Method, apparatus and navigation apparatus for sharing display by plural operating systems |
| JP2006522536A (ja) * | 2003-03-12 | 2006-09-28 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 双方向テレビ番組を記憶するための方法及び装置 |
| US7127723B2 (en) | 2000-03-02 | 2006-10-24 | Hitachi, Ltd. | Information processing apparatus with multiple operating systems |
| JP2007122343A (ja) * | 2005-10-27 | 2007-05-17 | Nec Corp | 情報処理装置、情報処理装置における画面表示方法 |
| JP2015062107A (ja) * | 2013-09-23 | 2015-04-02 | エルエスアイ コーポレーション | ブート・データをキャッシュするソリッドステートドライブ |
| US9170862B2 (en) | 2012-09-27 | 2015-10-27 | Fujitsu Limited | Converting apparatus, conversion method, and information processing system |
Families Citing this family (151)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3593241B2 (ja) * | 1997-07-02 | 2004-11-24 | 株式会社日立製作所 | 計算機の再起動方法 |
| US6438709B2 (en) * | 1997-09-18 | 2002-08-20 | Intel Corporation | Method for recovering from computer system lockup condition |
| US6766519B1 (en) * | 1999-03-26 | 2004-07-20 | Emc Corporation | Generic software interface for hardware environments having executing code registers itself and the code for a next suboperation |
| US6438750B1 (en) * | 1999-06-18 | 2002-08-20 | Phoenix Technologies Ltd. | Determining loading time of an operating system |
| US6560699B1 (en) * | 1999-10-20 | 2003-05-06 | Cisco Technology, Inc. | Constraint-based language configuration files for updating and verifying system constraints |
| US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
| US6587966B1 (en) * | 2000-04-25 | 2003-07-01 | Hewlett-Packard Development Company, L.P. | Operating system hang detection and correction |
| JP2002041292A (ja) * | 2000-07-13 | 2002-02-08 | Internatl Business Mach Corp <Ibm> | コンピュータ用リカバリ装置 |
| US6662320B1 (en) * | 2000-07-20 | 2003-12-09 | International Business Machines Corporation | Method and apparatus for inhibiting an adapter bus error signal following a reset operation |
| US20030014608A1 (en) * | 2001-07-13 | 2003-01-16 | Mercer Ronald G. | Method of providing stack memory in an operating system with stack memory constraints |
| US6779132B2 (en) * | 2001-08-31 | 2004-08-17 | Bull Hn Information Systems Inc. | Preserving dump capability after a fault-on-fault or related type failure in a fault tolerant computer system |
| JP4074620B2 (ja) * | 2002-06-05 | 2008-04-09 | 富士通株式会社 | メモリ管理ユニット |
| US7139850B2 (en) * | 2002-06-21 | 2006-11-21 | Fujitsu Limited | System for processing programmable buttons using system interrupts |
| US7231512B2 (en) * | 2002-12-18 | 2007-06-12 | Intel Corporation | Technique for reconstituting a pre-boot firmware environment after launch of an operating system |
| JP2004297759A (ja) * | 2003-03-11 | 2004-10-21 | Seiko Epson Corp | 無線通信ネットワークシステムにおける接続認証 |
| US7130997B2 (en) * | 2003-05-29 | 2006-10-31 | International Business Machines Corporation | Method of registering a portion of RAM with firmware to preserve the portion during reboot |
| US7076645B2 (en) * | 2003-06-25 | 2006-07-11 | Nokia Inc. | Method of rebooting a multi-device cluster while maintaining cluster operation |
| US7100014B2 (en) * | 2003-09-15 | 2006-08-29 | Hewlett-Packard Development Company, Lp. | Memory stack architecture for reduced TLB misses |
| US7587723B2 (en) * | 2003-11-13 | 2009-09-08 | International Business Machines Corporation | Restarting a shared virtual resource |
| GB2397477B (en) * | 2003-11-26 | 2004-12-01 | F Secure Oyj | Securing a data transmission channel |
| JP4683218B2 (ja) * | 2004-01-27 | 2011-05-18 | 日本電気株式会社 | 高速再起動方法および情報処理装置ならびにプログラム |
| US7467328B2 (en) * | 2004-09-03 | 2008-12-16 | Hewlett-Packard Development Company, L.P. | Kernel configuration recovery |
| US8744852B1 (en) * | 2004-10-01 | 2014-06-03 | Apple Inc. | Spoken interfaces |
| US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
| CN100424650C (zh) * | 2005-11-30 | 2008-10-08 | 许先才 | 计算机上个人信息应用环境的保存与重现方法及装置 |
| US8286162B2 (en) * | 2005-12-30 | 2012-10-09 | Intel Corporation | Delivering interrupts directly to a virtual processor |
| US20070168740A1 (en) * | 2006-01-10 | 2007-07-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for dumping a process memory space |
| US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
| US8199155B2 (en) * | 2006-11-22 | 2012-06-12 | Nvidia Corporation | System, method, and computer program product for saving power in a multi-graphics processor environment |
| US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
| US7779305B2 (en) * | 2007-12-28 | 2010-08-17 | Intel Corporation | Method and system for recovery from an error in a computing device by transferring control from a virtual machine monitor to separate firmware instructions |
| US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
| US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
| US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
| US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
| WO2010067118A1 (en) | 2008-12-11 | 2010-06-17 | Novauris Technologies Limited | Speech recognition involving a mobile device |
| JP2010140361A (ja) * | 2008-12-12 | 2010-06-24 | Fujitsu Microelectronics Ltd | コンピュータシステム及び異常検出回路 |
| US10706373B2 (en) | 2011-06-03 | 2020-07-07 | Apple Inc. | Performing actions associated with task items that represent tasks to perform |
| US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
| US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
| US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
| US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
| US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
| US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
| US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
| US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
| US8977584B2 (en) | 2010-01-25 | 2015-03-10 | Newvaluexchange Global Ai Llp | Apparatuses, methods and systems for a digital conversation management platform |
| CN102754451A (zh) * | 2010-02-10 | 2012-10-24 | 松下电器产业株式会社 | 控制装置、控制装置的控制方法和数字广播接收装置 |
| US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
| US8433828B2 (en) | 2010-02-26 | 2013-04-30 | Apple Inc. | Accessory protocol for touch screen device accessibility |
| CN102375767A (zh) * | 2010-08-17 | 2012-03-14 | 鸿富锦精密工业(深圳)有限公司 | 计算机重启测试系统及方法 |
| US8386618B2 (en) | 2010-09-24 | 2013-02-26 | Intel Corporation | System and method for facilitating wireless communication during a pre-boot phase of a computing device |
| US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
| US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
| US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
| US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
| US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
| US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
| US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
| US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
| US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
| US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
| US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
| KR102579086B1 (ko) | 2013-02-07 | 2023-09-15 | 애플 인크. | 디지털 어시스턴트를 위한 음성 트리거 |
| US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
| WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
| KR101759009B1 (ko) | 2013-03-15 | 2017-07-17 | 애플 인크. | 적어도 부분적인 보이스 커맨드 시스템을 트레이닝시키는 것 |
| WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
| WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
| US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
| WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
| US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
| JP6259911B2 (ja) | 2013-06-09 | 2018-01-10 | アップル インコーポレイテッド | デジタルアシスタントの2つ以上のインスタンスにわたる会話持続を可能にするための機器、方法、及びグラフィカルユーザインタフェース |
| HK1220313A1 (zh) | 2013-06-13 | 2017-04-28 | 苹果公司 | 用於由语音命令发起的紧急呼叫的系统和方法 |
| CN105453026A (zh) | 2013-08-06 | 2016-03-30 | 苹果公司 | 基于来自远程设备的活动自动激活智能响应 |
| US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
| US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
| US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
| US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
| US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
| US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
| US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
| US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
| EP3480811A1 (en) | 2014-05-30 | 2019-05-08 | Apple Inc. | Multi-command single utterance input method |
| US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
| US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
| US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
| US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
| US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
| JP6364983B2 (ja) * | 2014-06-10 | 2018-08-01 | 富士ゼロックス株式会社 | 電子機器及びプログラム |
| US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
| US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
| US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
| US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
| US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
| US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
| US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
| US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
| US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
| US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
| US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
| US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
| US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
| US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
| US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
| US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
| US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
| US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
| US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
| US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
| US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
| US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
| US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
| US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
| US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
| US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
| US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
| US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
| US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
| US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
| US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
| US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
| US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
| US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
| CN105660231A (zh) * | 2016-03-01 | 2016-06-15 | 郑州市顺意科技有限公司 | 营养钵自动装土装置 |
| US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
| CN105638304B (zh) * | 2016-03-15 | 2019-02-05 | 郑州市顺意科技有限公司 | 营养钵自动分钵装置 |
| US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
| US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
| US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
| US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
| DK179309B1 (en) | 2016-06-09 | 2018-04-23 | Apple Inc | Intelligent automated assistant in a home environment |
| US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
| US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
| US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
| US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
| US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
| DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
| DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
| DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
| DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
| US10043516B2 (en) | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
| US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
| DK201770439A1 (en) | 2017-05-11 | 2018-12-13 | Apple Inc. | Offline personal assistant |
| DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
| DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
| DK201770432A1 (en) | 2017-05-15 | 2018-12-21 | Apple Inc. | Hierarchical belief states for digital assistants |
| DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
| DK179549B1 (en) | 2017-05-16 | 2019-02-12 | Apple Inc. | FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES |
| US11010249B2 (en) * | 2019-01-08 | 2021-05-18 | Dell Products L.P. | Kernel reset to recover from operating system errors |
| CN110489169B (zh) * | 2019-08-06 | 2021-10-19 | 晶晨半导体(上海)股份有限公司 | 一种片上系统的存储器快速启动方法 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS59140568A (ja) | 1983-01-31 | 1984-08-11 | Fujitsu Ltd | プログラム異常処理方式 |
| US5594903A (en) * | 1991-02-26 | 1997-01-14 | Lynx Real-Time Systems, Inc. | Operating System architecture with reserved memory space resident program code identified in file system name space |
| US5469571A (en) * | 1991-07-15 | 1995-11-21 | Lynx Real-Time Systems, Inc. | Operating system architecture using multiple priority light weight kernel task based interrupt handling |
| JPH06236284A (ja) | 1991-10-21 | 1994-08-23 | Intel Corp | コンピュータシステム処理状態を保存及び復元する方法及びコンピュータシステム |
| US5513319A (en) * | 1993-07-02 | 1996-04-30 | Dell Usa, L.P. | Watchdog timer for computer system reset |
| CA2126950A1 (en) * | 1993-07-30 | 1995-01-31 | Bryan M. Willman | Booting a computer system using a last known good set of configuration data |
| US5903752A (en) * | 1994-10-13 | 1999-05-11 | Intel Corporation | Method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system |
| KR970010634B1 (ko) * | 1994-10-25 | 1997-06-28 | 삼성전자 주식회사 | 네트워크 하이버네이션 시스템 |
| JP3072048B2 (ja) * | 1996-03-19 | 2000-07-31 | 株式会社東芝 | 計算機システムおよび計算機システムのソフトウェア故障回復方法 |
| US5935242A (en) * | 1996-10-28 | 1999-08-10 | Sun Microsystems, Inc. | Method and apparatus for initializing a device |
| US5995745A (en) * | 1996-12-23 | 1999-11-30 | Yodaiken; Victor J. | Adding real-time support to general purpose operating systems |
| US5991822A (en) * | 1997-03-17 | 1999-11-23 | International Business Machines Corporation | System for modifying functions of static device driver using a registered driver extension extended dynamically by providing an entry point for the driver extension |
| US5951686A (en) * | 1997-03-31 | 1999-09-14 | International Business Machines Corporation | Method and system for reboot recovery |
| JP3593241B2 (ja) | 1997-07-02 | 2004-11-24 | 株式会社日立製作所 | 計算機の再起動方法 |
-
1997
- 1997-07-02 JP JP19184097A patent/JP3593241B2/ja not_active Expired - Fee Related
-
1998
- 1998-06-22 TW TW087110013A patent/TW469409B/zh not_active IP Right Cessation
- 1998-06-30 US US09/107,388 patent/US6253320B1/en not_active Expired - Fee Related
- 1998-07-01 KR KR1019980026409A patent/KR100306456B1/ko not_active Expired - Fee Related
- 1998-07-02 CN CNB2004100033815A patent/CN1251074C/zh not_active Expired - Fee Related
- 1998-07-02 CN CNB981178529A patent/CN1143209C/zh not_active Expired - Fee Related
-
2001
- 2001-05-17 US US09/858,492 patent/US7069430B2/en not_active Expired - Fee Related
-
2004
- 2004-06-07 US US10/861,482 patent/US7373496B2/en not_active Expired - Fee Related
-
2008
- 2008-04-22 US US12/107,651 patent/US7765395B2/en not_active Expired - Fee Related
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7069519B1 (en) | 1999-09-24 | 2006-06-27 | Hitachi, Ltd. | Method, apparatus and navigation apparatus for sharing display by plural operating systems |
| US7127723B2 (en) | 2000-03-02 | 2006-10-24 | Hitachi, Ltd. | Information processing apparatus with multiple operating systems |
| JP2006522536A (ja) * | 2003-03-12 | 2006-09-28 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 双方向テレビ番組を記憶するための方法及び装置 |
| JP2007122343A (ja) * | 2005-10-27 | 2007-05-17 | Nec Corp | 情報処理装置、情報処理装置における画面表示方法 |
| US9170862B2 (en) | 2012-09-27 | 2015-10-27 | Fujitsu Limited | Converting apparatus, conversion method, and information processing system |
| JP2015062107A (ja) * | 2013-09-23 | 2015-04-02 | エルエスアイ コーポレーション | ブート・データをキャッシュするソリッドステートドライブ |
Also Published As
| Publication number | Publication date |
|---|---|
| US20010020259A1 (en) | 2001-09-06 |
| CN1251074C (zh) | 2006-04-12 |
| CN1512331A (zh) | 2004-07-14 |
| US20040230871A1 (en) | 2004-11-18 |
| JP3593241B2 (ja) | 2004-11-24 |
| TW469409B (en) | 2001-12-21 |
| CN1208890A (zh) | 1999-02-24 |
| CN1143209C (zh) | 2004-03-24 |
| US7373496B2 (en) | 2008-05-13 |
| US7069430B2 (en) | 2006-06-27 |
| KR100306456B1 (ko) | 2001-10-19 |
| US6253320B1 (en) | 2001-06-26 |
| US7765395B2 (en) | 2010-07-27 |
| US20080201573A1 (en) | 2008-08-21 |
| KR19990013514A (ko) | 1999-02-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3593241B2 (ja) | 計算機の再起動方法 | |
| JP3546678B2 (ja) | マルチos構成方法 | |
| US6711605B2 (en) | Multi OS configuration method and computer system | |
| US6996828B1 (en) | Multi-OS configuration method | |
| US7475186B2 (en) | System and method for persistent RAM disk | |
| US5825649A (en) | Kernel substitution method in multi-processor system and multi-processor system having kernel substitution function | |
| EP1854006B1 (en) | Method and system for preserving dump data upon a crash of the operating system | |
| US9298472B2 (en) | High-speed restart method, information processing device, and program | |
| US9235426B2 (en) | Multicore processor system, computer product, and notification method for updating operating system | |
| CN113127263B (zh) | 一种内核崩溃恢复方法、装置、设备及存储介质 | |
| JP3765201B2 (ja) | 計算機システム | |
| US7921247B1 (en) | Sharing a dynamically located memory block between components executing in different processor modes in an extensible firmware interface environment | |
| JP3882321B2 (ja) | オペレーティングシステムのモジュールプログラムを備えた計算機 | |
| JPWO2004081791A1 (ja) | 仮想計算機システム、仮想計算機システムにおけるファームウェアアップデート方法 | |
| JP2001216172A (ja) | マルチos構成方法 | |
| JP4026667B2 (ja) | マルチos構成方法 | |
| JP2001236237A (ja) | マルチos構成方法 | |
| JP2001290678A (ja) | 非同期メモリダンプ実行方式 | |
| JPH09231069A (ja) | 情報処理方法及び装置 | |
| JP2000242550A (ja) | データ運用管理方法 | |
| JPH03138753A (ja) | マルチプロセッサシステムのブートロード装置 | |
| JP2003131893A (ja) | 演算処理システム、コンピュータ・システム上でのタスク制御方法、並びに記憶媒体 | |
| CN121614195A (zh) | 电子设备的启动方法、电子设备、程序产品及存储介质 | |
| CN119987874A (zh) | 一种芯片的启动方法、芯片、电子设备和存储介质 | |
| JP2004038995A (ja) | マルチos構成方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040127 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040316 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040329 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040824 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040827 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080903 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080903 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090903 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090903 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100903 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100903 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110903 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120903 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130903 Year of fee payment: 9 |
|
| LAPS | Cancellation because of no payment of annual fees |