JP2001331331A - Unique process multithread operating system - Google Patents

Unique process multithread operating system

Info

Publication number
JP2001331331A
JP2001331331A JP2000147002A JP2000147002A JP2001331331A JP 2001331331 A JP2001331331 A JP 2001331331A JP 2000147002 A JP2000147002 A JP 2000147002A JP 2000147002 A JP2000147002 A JP 2000147002A JP 2001331331 A JP2001331331 A JP 2001331331A
Authority
JP
Japan
Prior art keywords
thread
operating system
unique
switching
unique process
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.)
Pending
Application number
JP2000147002A
Other languages
Japanese (ja)
Inventor
Takashi Kadohiro
崇 角廣
Yoshitaka Marutani
佳孝 丸谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
NEC Software Kobe Ltd
Original Assignee
NEC Corp
NEC Software Kobe Ltd
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 NEC Corp, NEC Software Kobe Ltd filed Critical NEC Corp
Priority to JP2000147002A priority Critical patent/JP2001331331A/en
Publication of JP2001331331A publication Critical patent/JP2001331331A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To solve the problem in the conventional systems that throughput or a response is poor because process switching occurs during the execution of an application process and a system process. SOLUTION: An IPL part 100 which is an initial setting when a computer is started has a unique process generation means 101 and a resident system thread generation means 102, and a unique process shutdown part 130 to be shut down, when the computer is halted has a unique process halt means 131. Thereby a unique process in the system is generated when the computer is started, and the constitutional elements of an operating system are realized as threads in the process. A process management part 120 has an application thread start means 121, and an application program also is executed as a thread in the unique process so that switching of processes is not generated.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、プロセスのスイッ
チングによって生ずるオーバヘッドを改善するシステム
に関し、特にシステム内の唯一プロセス配下でオペレー
ティングシステムを含むプログラムをスレッドとして動
作させる唯一プロセス・マルチスレッドオペレーティン
グシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system for improving overhead caused by process switching, and more particularly to a single process multithread operating system in which a program including an operating system operates as a thread under a single process in a system.

【0002】[0002]

【従来の技術】従来のオペレーティングシステムの例
が、製品化されているものとしては「インサイドWin
dowsNT(マイクロソフト・コーポレーションの登
録商標)」や、特殊なものとしてはマルチプロセッサ構
成におけるスレッドの効率的なスケジューリングに関す
る「特開平10-055284」などに記載されてい
る。
2. Description of the Related Art An example of a conventional operating system has been commercialized as "Inside Win".
dowsNT (registered trademark of Microsoft Corporation) "and, as a special case," JP-A-10-055284 "which relates to efficient thread scheduling in a multiprocessor configuration.

【0003】図9に示すように、従来のオペレーティン
グシステムのプロセススケジューラは、プロセス切替え
手段(プロセスディスパッチャ)と、プロセス生成手段
と、プロセス削除手段とから構成されている。
As shown in FIG. 9, a conventional process scheduler of an operating system includes a process switching unit (process dispatcher), a process generation unit, and a process deletion unit.

【0004】このような構成を有する従来のオペレーテ
ィングシステムは、図9を参照すると、次のように動作
する。
A conventional operating system having such a configuration operates as follows with reference to FIG.

【0005】すなわち、コンピュータの起動時は、IP
L900において、常駐システムプロセスを生成し、タ
イムスライスによる割り込み発生時、割り込みハンドラ
910では、プロセス切替え手段945によってプロセ
スの切り替えを行う。ここでプロセスの切り替え後、次
にスレッドの切り替えを行い、論理空間の切り替えも行
っていた。また、プログラム管理920によるアプリケ
ーションの起動もプロセス生成手段945により、単独
のプロセスとして起動していた。
That is, when the computer is started, the IP
In L900, a resident system process is generated, and when an interrupt occurs due to a time slice, the interrupt handler 910 switches the process by the process switching unit 945. Here, after the process is switched, the thread is switched next, and the logical space is also switched. In addition, the application was started by the program management 920 as a single process by the process generation unit 945.

【0006】この従来技術は、論理(仮想)メモリのア
ドレス空間がプロセス毎に独立した空間となるので、次
のような利点があった。
This prior art has the following advantages because the address space of the logical (virtual) memory is independent for each process.

【0007】第1の利点は、論理(仮想)メモリのアド
レス空間が、プロセス毎に全空間使用できる。つまり大
きな論理空間をアプリケーション毎に占有できる。
A first advantage is that the entire address space of the logical (virtual) memory can be used for each process. That is, a large logical space can be occupied for each application.

【0008】第2の利点は、他のプロセス空間にアクセ
スできないので、不正アクセスに対して強く、信頼性が
高い。
[0008] The second advantage is that since no other process space can be accessed, it is strong against unauthorized access and highly reliable.

【0009】しかし、これらの利点は、不特定多数のア
プリケーションを使用する場合に有効で、コンピュータ
を特定の完成されたアプリケーション実行専用マシンと
して使用する場合は、必要性の薄い利点である。さら
に、この利点とのトレードオフで、逆に次のような問題
点があった。
However, these advantages are effective when an unspecified number of applications are used, and are unnecessary when the computer is used as a machine dedicated to executing a specific completed application. In addition, there is the following problem in trade-off with this advantage.

【0010】[0010]

【発明が解決しようとする課題】その問題点は、スルー
プットやレスポンスが悪いということである。理由は、
システムに要求される機能の増加に伴い、同時に動作す
るアプリケーションも増え続け、アプリケーションを実
行するアプリケーションプロセス間でのプロセスの切り
替えやアプリケーションプロセスとシステムプログラム
(システムプロセス)の間でのプロセス切り替えが頻発
するためである。
The problem is that the throughput and the response are poor. Reason,
With the increase in functions required of the system, the number of applications that operate simultaneously continues to increase, and process switching between application processes that execute applications and process switching between application processes and system programs (system processes) frequently occur. That's why.

【0011】一般的にプロセスの切り替えよりスレッド
の切り替えに要するオーバヘッドは少なくて済む為、本
発明はプロセスの切り替えをなくし、オペレーティング
システムのプロセスやアプリケーションプログラムをシ
ステムで唯一つ用意したプロセス配下のスレッドとして
動作させることで、プロセスの切り替えを無くしスレッ
ドの切り替えのみにすることにより、前記問題点の解決
を図ることを目的とするものである。
In general, since the overhead required for thread switching is smaller than that of process switching, the present invention eliminates process switching, and uses operating system processes and application programs as the only thread under the process prepared in the system. It is an object of the present invention to solve the above-mentioned problem by causing the operation to be performed so that the process switching is eliminated and only the thread switching is performed.

【0012】[0012]

【課題を解決するための手段】本願の第1の発明の唯一
プロセス・マルチスレッドオペレーティングシステム
は、システムで唯一のプロセスを唯一プロセスとして生
成する唯一プロセス生成手段とオペレーティングシステ
ムを構成する各要素を前記唯一プロセス配下に主記憶メ
モリに常駐する常駐システムスレッドとして生成する常
駐システムスレッド生成手段とを含みシステム立ち上げ
時に動作するIPLと、割り込み発生時の処理を行う割
り込み要求処理手段とタイムスライスによる割り込みを
検出すると別のスレッドにCPUの割り当ての変更を行
うスレッドプリエンプション手段とを含む割り込みハン
ドラと、起動の指定が行われたアプリケーションプログ
ラムを空いているメモリにロードし前記唯一プロセス配
下のスレッドとして生成するアプリケーションスレッド
起動手段を含むプログラム管理と、コンピュータの停止
要求によって前記唯一プロセスを終了させる唯一プロセ
ス終了手段を含むシャットダウンと、要求されたプログ
ラムを実行する為のスレッドを生成するスレッド生成手
段と現在実行中のスレッドを中断させ実行準備の整って
いる最も高い優先度を持つスレッドを実行させるスレッ
ド切替え手段と実行の終了したスレッドをシステムから
削除するスレッド削除手段とを含むスレッドスケジュー
ラと、を備える。
According to a first aspect of the present invention, there is provided a unique process / multithread operating system comprising: a unique process generating means for generating a unique process as a unique process; An IPL that operates at system startup including a resident system thread generating unit that generates as a resident system thread resident in the main memory only under the process, an interrupt request processing unit that performs processing when an interrupt occurs, and an interrupt by a time slice. An interrupt handler including a thread preemption means for changing the assignment of the CPU to another thread when detected, and an application program specified to be started is loaded into a free memory, and is executed as a thread under the sole process. Program management including an application thread starting means to be executed, a shutdown including a unique process terminating means for terminating the sole process in response to a computer stop request, a thread generating means for creating a thread for executing a requested program, and a current The thread scheduler includes thread switching means for interrupting the thread being executed and executing the thread having the highest priority ready for execution and thread deletion means for deleting the thread whose execution has been completed from the system.

【0013】本願の第2の発明の唯一プロセス・マルチ
スレッドオペレーティングシステムは、第1の発明にお
いて、オペレーティングシステムを構成するシステムプ
ロセスを前記唯一プロセス配下のスレッドとして生成す
ることを備える。
[0013] The sole process multi-thread operating system according to the second invention of the present application is the method according to the first invention, wherein a system process constituting the operating system is generated as a thread under the sole process.

【0014】本願の第3の発明の唯一プロセス・マルチ
スレッドオペレーティングシステムは、第1の発明にお
いて、起動の要求がされたアプリケーションプログラム
を前記唯一プロセス配下のスレッドとして生成すること
を備える。
A third embodiment of the present invention provides the unique process multi-thread operating system according to the first invention, wherein the application program requested to be started is generated as a thread under the unique process.

【0015】本願の第4の発明の唯一プロセス・マルチ
スレッドオペレーティングシステムは、第1の発明にお
いて、プロセスの切り替えを行わず、スレッドの切り替
えのみを行うことを備える。
The sole process multi-thread operating system according to the fourth aspect of the present invention, in the first aspect, comprises switching only a thread without switching a process.

【0016】本願の第5の発明の唯一プロセス・マルチ
スレッドオペレーティングシステムは、第1の発明にお
いて、プロセスの切り替えを行うプロセススケジューラ
を持たず、唯一プロセス配下におけるスレッドの切り替
えを行うスレッドスケジューラのみを有することを備え
る。
The sole process multi-thread operating system according to the fifth aspect of the present invention, in the first aspect, does not have a process scheduler for switching a process but only has a thread scheduler for switching a thread under a process. It is prepared.

【0017】本願の第6の発明の唯一プロセス・マルチ
スレッドオペレーティングシステムは、第1の発明にお
いて、仮想記憶装置をもたない実メモリ空間で動作する
コンピュータにおいては、前記唯一プロセス生成手段
と、前記唯一プロセス終了手段とを含まないことを備え
る。
According to a sixth aspect of the present invention, in the computer according to the first aspect, wherein the computer operates in a real memory space having no virtual storage device, the unique process multi-thread operating system includes: It does not include only the process termination means.

【0018】[0018]

【発明の実施の形態】次に、本発明の実施例について図
面を参照して詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, embodiments of the present invention will be described in detail with reference to the drawings.

【0019】図1を参照すると、本発明のオペレーティ
ングシステムの一実施例は、コンピュータの起動時の初
期設定を行うIPL(Initial Program
Loader)100と、割り込みを解析し適切な割
り込み処理を行う割り込みハンドラ110と、要求され
たプログラムをスレッドとして起動するプログラム管理
120と、コンピュータの停止を行うシャットダウン1
30と、システム中のスレッドの実行を制御するスレッ
ドスケジューラ140と、から構成されている。
Referring to FIG. 1, an embodiment of an operating system according to the present invention is an IPL (Initial Program) for performing initial settings at the time of starting a computer.
(Loader) 100, an interrupt handler 110 that analyzes an interrupt and performs an appropriate interrupt process, a program management 120 that starts a requested program as a thread, and a shutdown 1 that stops the computer.
30 and a thread scheduler 140 for controlling the execution of threads in the system.

【0020】IPL100は、システム全体で唯一つの
プロセスである唯一プロセスを生成する唯一プロセス生
成手段101と、常駐システムスレッド生成手段102
と、を含む。
The IPL 100 includes a unique process creating means 101 for creating a unique process which is a unique process in the entire system, and a resident system thread creating means 102
And

【0021】これらの手段は、それぞれ概略つぎのよう
に動作する。
Each of these means operates roughly as follows.

【0022】唯一プロセス生成手段101は、システム
全体で唯一つのプロセスである唯一プロセスを生成し、
全スレッドの動作環境である論理メモリ空間を作成す
る。
The unique process generating means 101 generates a unique process which is a unique process in the entire system,
Create a logical memory space that is the operating environment for all threads.

【0023】常駐システムスレッド生成手段102は、
オペレーティングシステムを構成する各要素を主記憶メ
モリ上に常駐する常駐システムスレッドとして生成す
る。
The resident system thread generating means 102
Each element constituting the operating system is generated as a resident system thread resident on the main storage memory.

【0024】割り込みハンドラ110は、割り込み要求
処理手段111、スレッドプリエンプション手段112
と、を含む。
The interrupt handler 110 includes an interrupt request processing unit 111, a thread preemption unit 112
And

【0025】これらの手段はそれぞれ概略つぎのように
動作する。
Each of these means operates as follows.

【0026】割り込み要求処理手段111は、割り込み
がI/Oの完了であったような場合に、それを処理する
スレッドを生成する。
The interrupt request processing means 111 generates a thread for processing when the interrupt is the completion of I / O.

【0027】スレッドプリエンプション手段112は、
割り込みがタイムスライス(現実行中のスレッドのCP
Uの消費時間切れによるスレッドの切り替え)の場合
に、CPUによる実行を行うスレッドを別のスレッドに
切り替える要求をスレッド切替え手段142に対して行
う。
The thread preemption means 112
Interrupt is time slice (CP of currently executing thread)
In the case of switching of the thread due to the expiration of the consumption time of U), a request to switch the thread to be executed by the CPU to another thread is made to the thread switching means 142.

【0028】プログラム管理120は、アプリケーショ
ンスレッド起動手段121を含む。
The program management 120 includes an application thread starting means 121.

【0029】アプリケーションスレッド起動手段121
は、起動要求されたアプリケーションプログラムを空い
ているメモリにロードし実行するスレッドを生成する。
Application thread starting means 121
Generates a thread that loads the application program requested to be started into a free memory and executes it.

【0030】シャットダウン130は、唯一プロセス終
了手段131を含む。
The shutdown 130 includes only one process termination unit 131.

【0031】唯一プロセス終了手段131は、コンピュ
ータの停止要求を受けてシステムシャットダウンを行う
時、唯一プロセスを終了させる。
The sole process termination means 131 terminates only the process when the system is shut down in response to the request to stop the computer.

【0032】スレッドスケジューラ140は、スレッド
生成手段141、スレッド切替え手段(スレッドディス
パッチャ)142、スレッド削除手段143を含む。
The thread scheduler 140 includes a thread generation unit 141, a thread switching unit (thread dispatcher) 142, and a thread deletion unit 143.

【0033】これらの手段はそれぞれ概略つぎのように
動作する。
Each of these means operates as follows.

【0034】スレッド生成手段141は、要求されたプ
ログラムを実行するスレッドやスレッド化された当該プ
ログラムから派生するスレッドを生成する。
The thread generating means 141 generates a thread for executing the requested program or a thread derived from the threaded program.

【0035】スレッド切替え手段(スレッドディスパッ
チャ)142は、スレッドプリエンプション手段112
からの切り替え要求に基づき、現在実行中のスレッドを
中断させ、実行準備の整っているReadyキュー上の
最も優先度の高いスレッドを実行させる。
The thread switching means (thread dispatcher) 142 includes a thread preemption means 112
, The currently executing thread is suspended, and the thread with the highest priority on the Ready queue ready for execution is executed.

【0036】スレッド削除手段143は、プログラム実
行の終了したスレッドをシステムから削除する。
The thread deletion means 143 deletes a thread for which program execution has been completed from the system.

【0037】次に、本発明の実施の形態の動作について
図面を参照して説明する。
Next, the operation of the embodiment of the present invention will be described with reference to the drawings.

【0038】図1及び図2〜図5のフローチャートを参
照して本実施例の全体の動作について詳細に説明する。
The overall operation of this embodiment will be described in detail with reference to FIG. 1 and the flowcharts of FIGS.

【0039】まず、コンピュータの起動時には、システ
ムの初期設定を行うIPL100が実行される。IPL
100は、システムの初期化処理の中で唯一プロセス生
成手段101によりシステム全体で唯一つのプロセスで
ある唯一プロセスを生成する(ステップA21)。次
に、常駐システムスレッド生成手段102は、メモリ負
荷制御機能、GUI制御機能、通信制御機能等の機能を
含むオペレーティングシステムを構成する機能をスレッ
ドとして生成する(ステップA22)。ここで「オペレ
ーティングシステムを構成するスレッド」は、従来では
システムプロセスに当たり、これをプロセスではなくそ
のままスレッドにしたものである。プロセスとして実行
していたプログラムは、メモリの使用をアドレス固定で
行っていなければ、スレッド化を行うのは容易である。
常駐システムスレッド生成手段102は、予め登録して
おいた常駐システムのプログラムを、スレッド生成手段
141により主記憶メモリに常駐するシステムスレッド
として生成する。
First, when the computer is started, the IPL 100 for initializing the system is executed. IPL
In the system initialization process 100, the unique process creation means 101 creates a unique process which is a unique process in the entire system (step A21). Next, the resident system thread generation unit 102 generates, as a thread, a function constituting an operating system including functions such as a memory load control function, a GUI control function, and a communication control function (step A22). Here, the “thread constituting the operating system” conventionally corresponds to a system process, and is not a process but a thread as it is. A program that has been executed as a process can easily be threaded unless the memory is used at a fixed address.
The resident system thread generating means 102 generates a resident system program registered in advance as a system thread resident in the main memory by the thread generating means 141.

【0040】システムの初期化作業が終了し、次に、ア
プリケーションプログラムの起動を行う場合には、プロ
グラム管理120のアプリケーションスレッド起動手段
121によって、起動の指定がされたアプリケーション
プログラムを実行するスレッドを唯一プロセス配下に生
成する(ステップA31)。ここでも、従来独立のプロ
セスとして実行していたアプリケーションプログラム
は、メモリの使用をアドレス固定で行っていなければ、
唯一プロセス内のスレッドにすることは容易である。
When the initialization of the system is completed and the application program is to be started next, the application thread starting means 121 of the program management 120 sets only one thread for executing the application program designated to be started. It is generated under the process (step A31). Again, if the application program, which was previously run as an independent process, does not use memory at fixed addresses,
It is easy to make it the only thread in the process.

【0041】割り込み発生時には、割り込みハンドラ1
10が割り込み原因を解析し、タイムスライス(スレッ
ドの切り替え要求)割り込みの場合、スレッドプリエン
プション手段112とスレッド切替え手段142によっ
て、実行中のスレッドを中断し、実行待ちの状態にある
スレッドを蓄積したReadyキューにある優先度の最
も高いスレッドをキューから取り出して実行中にする
(ステップA41)。このとき、プロセスの切り替え
(論理空間の切り替え)を行う必要はない。また、I/
O割り込みやその他システムの処理要求の割り込みであ
った場合、割り込み要求処理手段111がスレッド生成
手段141によって、当該要求を処理するスレッドを生
成し、Ready状態とする(ステップA42)。
When an interrupt occurs, the interrupt handler 1
10 analyzes the cause of the interrupt, and in the case of a time slice (thread switching request) interrupt, the thread that is being executed is interrupted by the thread preemption unit 112 and the thread switching unit 142, and the Ready that accumulates the threads waiting to be executed is stored. The thread with the highest priority in the queue is taken out of the queue and is being executed (step A41). At this time, there is no need to switch the process (switch the logical space). Also, I /
If it is an O-interrupt or an interrupt of a processing request of the other system, the interrupt request processing means 111 generates a thread for processing the request by the thread generating means 141, and sets the thread to a Ready state (step A42).

【0042】スレッド生成手段141は、もし、新たに
生成したスレッドが現在実行中のスレッドよりも優先度
が高い場合、スレッド切替え手段142により、スレッ
ドの実行を切り替える。
If the newly created thread has a higher priority than the currently executing thread, the thread generating means 141 switches the execution of the thread by the thread switching means 142.

【0043】最後に、コンピュータの終了時には、シャ
ットダウン130が唯一プロセス終了手段131にてシ
ステム唯一のプロセスを終了させる(ステップA5
1)。
Finally, when the computer is terminated, the shutdown 130 terminates the only process in the system by the process termination means 131 (step A5).
1).

【0044】次に、具体例を用いて説明する。Next, a specific example will be described.

【0045】図6に示すように、スレッドA604、ス
レッドB602が既にシステムに存在し、そこに新たに
アプリケーションプログラムを起動したとする。プログ
ラム管理120のアプリケーションスレッド起動手段1
21によって、当該アプリケーションプログラムを実行
するスレッドを生成するが、このとき、スレッドA60
4が実行中で、システムのReadyキュー601には
スレッドB602が入っているとすると、そこに新たに
生成したアプリケーションスレッド603が追加され
る。次に実行中の実行中スレッドA604がタイムスラ
イスを起こし、割り込みハンドラ110に制御が移る
と、タイムスライスによる割り込みであることを検出し
てスレッドプリエンプション手段112に制御が移り、
スレッドプリエンプション手段112がスレッド切替え
手段142によって、実行中のスレッドA604を中断
し、Readyキュー601にある優先度の最も高いス
レッドを実行する。これが、新たに生成したアプリケー
ションスレッド603であったとすると、このアプリケ
ーションスレッド603が実行されるが、このとき、図
7に示すように、アプリケーションプログラム703
は、スレッドAプログラム702やスレッドBプログラ
ム704が使用していないメモリに割り当てられロード
される。
As shown in FIG. 6, it is assumed that a thread A 604 and a thread B 602 already exist in the system, and a new application program is started there. Application thread starting means 1 of program management 120
21, a thread for executing the application program is generated.
Assuming that the thread B 602 is in the Ready queue 601 of the system and that the thread B 602 is being executed, a newly created application thread 603 is added thereto. Next, when the currently executing thread A 604 causes a time slice and the control is transferred to the interrupt handler 110, the interrupt is detected by the time slice and the control is transferred to the thread preemption means 112.
The thread preemption unit 112 interrupts the running thread A 604 by the thread switching unit 142 and executes the thread with the highest priority in the Ready queue 601. If this is the newly created application thread 603, the application thread 603 is executed. At this time, as shown in FIG.
Is allocated and loaded to a memory not used by the thread A program 702 or the thread B program 704.

【0046】次に、本発明の第2の実施例について図8
を参照して説明する。
Next, a second embodiment of the present invention will be described with reference to FIG.
This will be described with reference to FIG.

【0047】本実施例は、先に挙げた実施例に比べて唯
一プロセス生成手段101と唯一プロセス終了手段13
1を省略したものである。これは、多重プログラミング
オペレーティングシステムであるが、仮想記憶装置をも
たない実メモリ空間で動作するコンピュータを想定して
いる。この場合の動作は、第一の実施例(図1)に比べ
て、IPL800で唯一プロセスを生成、シャットダウ
ンで唯一プロセスを終了する処理が不要となることであ
る。
This embodiment is different from the first embodiment in that only the process generation means 101 and the only process termination means 13 are provided.
1 is omitted. This assumes a computer that is a multi-programming operating system, but operates in a real memory space without virtual storage. The operation in this case is different from the first embodiment (FIG. 1) in that the process of generating only one process in the IPL 800 and terminating the only process in the shutdown is unnecessary.

【0048】[0048]

【発明の効果】本発明の効果は、スループットやレスポ
ンスの高いシステム構築ができることにある。その理由
は、アプリケーション実行とシステムプログラム(シス
テムプロセス)実行の間で、プロセス切り替えが起こら
ないためである。
An advantage of the present invention is that a system with high throughput and high response can be constructed. The reason is that process switching does not occur between application execution and system program (system process) execution.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施例の構成を表すブロック図
である。
FIG. 1 is a block diagram illustrating a configuration of a first exemplary embodiment of the present invention.

【図2】本発明の第1の実施例を説明するフローチャー
トである。
FIG. 2 is a flowchart illustrating a first embodiment of the present invention.

【図3】本発明の第1の実施例を説明するフローチャー
トである。
FIG. 3 is a flowchart illustrating a first embodiment of the present invention.

【図4】本発明の第1の実施例を説明するフローチャー
トである。
FIG. 4 is a flowchart illustrating a first embodiment of the present invention.

【図5】本発明の第1の実施例を説明するフローチャー
トである。
FIG. 5 is a flowchart illustrating a first embodiment of the present invention.

【図6】本発明の唯一プロセス下でスレッドの切り替え
を説明する図である。
FIG. 6 is a diagram for explaining thread switching under only one process of the present invention.

【図7】本発明の新たに生成されたスレッドの論理メモ
リ空間への割り当てを説明する図である。
FIG. 7 is a diagram illustrating allocation of a newly created thread to a logical memory space according to the present invention.

【図8】本発明の第2の実施例の構成を表すブロック図
である。
FIG. 8 is a block diagram illustrating a configuration of a second exemplary embodiment of the present invention.

【図9】従来の技術におけるプロセスの切り替えを行う
場合を説明するブロック図である。
FIG. 9 is a block diagram illustrating a case where a process is switched in a conventional technique.

【符号の説明】[Explanation of symbols]

100 IPL 101 唯一プロセス生成手段 102 常駐システムスレッド生成手段 110 割り込みハンドラ 111 割り込み要求処理手段 112 スレッドプリエンプション手段 120 プログラム管理 121 アプリケーションスレッド起動手段 130 シャットダウン 131 唯一プロセス終了手段 140 スレッドスケジューラ 141 スレッド生成手段 142 スレッド切替え手段 143 スレッド削除手段 DESCRIPTION OF SYMBOLS 100 IPL 101 Only process generation means 102 Resident system thread generation means 110 Interrupt handler 111 Interrupt request processing means 112 Thread preemption means 120 Program management 121 Application thread activation means 130 Shutdown 131 Only process termination means 140 Thread scheduler 141 Thread generation means 142 Thread switching Means 143 Thread deletion means

───────────────────────────────────────────────────── フロントページの続き (72)発明者 丸谷 佳孝 兵庫県神戸市西区高塚台5丁目3番1号 神戸日本電気ソフトウェア株式会社内 Fターム(参考) 5B098 GA02 GA05 GA08 GC03 GC05 GC14 GD02 GD14  ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Yoshitaka Marutani 5-3-1 Takatsukadai, Nishi-ku, Kobe-shi, Hyogo F-term (reference) in NEC Corporation 5B098 GA02 GA05 GA08 GC03 GC05 GC14 GD02 GD14

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 システムで唯一のプロセスを唯一プロセ
スとして生成する唯一プロセス生成手段とオペレーティ
ングシステムを構成する各要素を前記唯一プロセス配下
に主記憶メモリに常駐する常駐システムスレッドとして
生成する常駐システムスレッド生成手段とを含みシステ
ム立ち上げ時に動作するIPLと、割り込み発生時の処
理を行う割り込み要求処理手段とタイムスライスによる
割り込みを検出すると別のスレッドにCPUの割り当て
の変更を行うスレッドプリエンプション手段とを含む割
り込みハンドラと、起動の指定が行われたアプリケーシ
ョンプログラムを空いているメモリにロードし前記唯一
プロセス配下のスレッドとして生成するアプリケーショ
ンスレッド起動手段を含むプログラム管理と、コンピュ
ータの停止要求によって前記唯一プロセスを終了させる
唯一プロセス終了手段を含むシャットダウンと、要求さ
れたプログラムを実行する為のスレッドを生成するスレ
ッド生成手段と現在実行中のスレッドを中断させ実行準
備の整っている最も高い優先度を持つスレッドを実行さ
せるスレッド切替え手段と実行の終了したスレッドをシ
ステムから削除するスレッド削除手段とを含むスレッド
スケジューラと、から構成されることを特徴とする唯一
プロセス・マルチスレッドオペレーティングシステム。
1. A resident system thread generating means for generating a unique process as a unique process in a system as a unique process creating means and a resident system thread resident in a main storage memory under each unique process under the unique process. And an interrupt request processing means for performing processing when an interrupt occurs, and a thread preemption means for changing the assignment of the CPU to another thread when an interrupt due to a time slice is detected. A program management including a handler, an application thread starting means for loading an application program specified to be started into an empty memory and generating the thread as a thread under the sole process, and a computer stop request. Shutting down the sole process, including the only process termination means, the thread generation means for generating a thread for executing the requested program, and suspending the currently executing thread to prepare the highest execution ready A single process multi-thread operating system, comprising: a thread scheduler including thread switching means for executing a thread having a priority and thread deletion means for deleting a thread whose execution has been completed from the system.
【請求項2】 オペレーティングシステムを構成するシ
ステムプロセスを前記唯一プロセス配下のスレッドとし
て生成することを特徴とする請求項1記載の唯一プロセ
ス・マルチスレッドオペレーティングシステム。
2. The single process multi-thread operating system according to claim 1, wherein a system process constituting the operating system is generated as a thread under the single process.
【請求項3】 起動の要求がされたアプリケーションプ
ログラムを前記唯一プロセス配下のスレッドとして生成
することを特徴とする請求項1記載の唯一プロセス・マ
ルチスレッドオペレーティングシステム。
3. The single process multi-thread operating system according to claim 1, wherein the application program requested to be started is generated as a thread under the single process.
【請求項4】 プロセスの切り替えを行わず、スレッド
の切り替えのみを行うことを特徴とする請求項1記載の
唯一プロセス・マルチスレッドオペレーティングシステ
ム。
4. The single process multi-thread operating system according to claim 1, wherein only the thread is switched without switching the process.
【請求項5】 プロセスの切り替えを行うプロセススケ
ジューラを持たず、唯一プロセス配下におけるスレッド
の切り替えを行うスレッドスケジューラのみを有するこ
とを特徴とする請求項1記載の唯一プロセス・マルチス
レッドオペレーティングシステム。
5. The single-process multi-thread operating system according to claim 1, wherein there is no process scheduler for switching processes, and only a thread scheduler for switching threads under a process is provided.
【請求項6】 仮想記憶装置をもたない実メモリ空間で
動作するコンピュータにおいては、前記唯一プロセス生
成手段と、前記唯一プロセス終了手段とを含まないこと
を特徴とする請求項1記載の唯一プロセス・マルチスレ
ッドオペレーティングシステム。
6. The unique process according to claim 1, wherein the computer operating in a real memory space without a virtual storage device does not include said unique process generating means and said unique process ending means. -Multi-thread operating system.
JP2000147002A 2000-05-18 2000-05-18 Unique process multithread operating system Pending JP2001331331A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000147002A JP2001331331A (en) 2000-05-18 2000-05-18 Unique process multithread operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000147002A JP2001331331A (en) 2000-05-18 2000-05-18 Unique process multithread operating system

Publications (1)

Publication Number Publication Date
JP2001331331A true JP2001331331A (en) 2001-11-30

Family

ID=18653251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000147002A Pending JP2001331331A (en) 2000-05-18 2000-05-18 Unique process multithread operating system

Country Status (1)

Country Link
JP (1) JP2001331331A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853180A (en) * 2010-05-25 2010-10-06 中兴通讯股份有限公司 Method for realizing application management and non-intelligent mobile terminal
CN107179921A (en) * 2016-03-11 2017-09-19 阿里巴巴集团控股有限公司 Terminal closedown method and apparatus
JP2017199369A (en) * 2016-04-22 2017-11-02 カビウム・インコーポレーテッド Method and device for kinetic virtual system on chip

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853180A (en) * 2010-05-25 2010-10-06 中兴通讯股份有限公司 Method for realizing application management and non-intelligent mobile terminal
CN107179921A (en) * 2016-03-11 2017-09-19 阿里巴巴集团控股有限公司 Terminal closedown method and apparatus
JP2017199369A (en) * 2016-04-22 2017-11-02 カビウム・インコーポレーテッド Method and device for kinetic virtual system on chip

Similar Documents

Publication Publication Date Title
US8566826B2 (en) System and method for synchronizing transient resource usage between virtual machines in a hypervisor environment
US7702828B2 (en) Input/output control apparatus, input/output control system, and input/output control method
CN104598294B (en) Efficient and safe virtualization method for mobile equipment and equipment thereof
EP1467282A2 (en) Operating systems
US9189293B2 (en) Computer, virtualization mechanism, and scheduling method
JP2000029737A (en) Processor having real-time outer instruction insertion for debugging functions
JP2011103093A (en) Computer that boots up fast
CN107203428B (en) Xen-based VCPU multi-core real-time scheduling algorithm
WO2020147544A1 (en) Method and device for resuming execution of application, and computer
JP2001043098A (en) Operating system and virtual computer system
JP2008108075A (en) Task switch control method, and computer system
US9122521B2 (en) Enabling multiple operating systems to run concurrently using barrier task priority
JP2009223842A (en) Virtual machine control program and virtual machine system
JPH06242987A (en) Method and equipment for making host computer execute succession of normal processing of microprocessor in computer unit
US20210055948A1 (en) Fast thread execution transition
WO2010137092A1 (en) Multi-operating system control method and processor system
JP2006146758A (en) Computer system
JP2001331331A (en) Unique process multithread operating system
WO2004090719A2 (en) Operating systems
JP2001282560A (en) Virtual computer control method, its performing device and recording medium recording its processing program
Hirofuchi et al. Postcopy live migration with guest-cooperative page faults
CN110333899B (en) Data processing method, device and storage medium
JP2022055002A (en) Information processing device, information processing method, and information processing program
Lim et al. Enhancing init scheme for improving bootup time in mobile devices
JPH02163834A (en) Multi-task processing system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050201

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050927