JPH03245257A - Acquisition method for ownership of multiprocessor system resources - Google Patents

Acquisition method for ownership of multiprocessor system resources

Info

Publication number
JPH03245257A
JPH03245257A JP4315790A JP4315790A JPH03245257A JP H03245257 A JPH03245257 A JP H03245257A JP 4315790 A JP4315790 A JP 4315790A JP 4315790 A JP4315790 A JP 4315790A JP H03245257 A JPH03245257 A JP H03245257A
Authority
JP
Japan
Prior art keywords
task
resource
resources
running level
running
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
JP4315790A
Other languages
Japanese (ja)
Inventor
Masashi Kudo
工藤 雅司
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
Original Assignee
NEC Corp
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 filed Critical NEC Corp
Priority to JP4315790A priority Critical patent/JPH03245257A/en
Publication of JPH03245257A publication Critical patent/JPH03245257A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To keep the balance between a peripheral device and a processor by performing the input/output request processing with preference for an input/ output task having a running level higher than an application task. CONSTITUTION:A main storage 3 includes a bus 4 which connects the processors 1 and 2 to the storage 3 and stores the exclusive resources 13 and 14, a resources acquring means 5 which acquires the resources 13 and 14 via the spin lock control, a resources release means 6 which releases the acquires resources, a task running level setting means 7 which sets the task running levels and allocates each task to its corresponding running level, and a resources processing running level transition means 8 which allocates the acquired tasks to each running level after the resources 13 and 14 are acquired via the spin lock control and then the task running levels are set for execution of the processing to those resources. Then a spin state is secured at a lower task running level even though a task 13 is set in a spin state by the processor 2 in a spin lock state. Therefore an input/output task having a higher running level than the task 13 receives an external interruption and processes an input/ output request with preference.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマルチプロセッサシステムの資源所有権獲得方
式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a resource ownership acquisition method for a multiprocessor system.

〔従来の技術〕[Conventional technology]

従来のマルチプロセッサシステムの資源所有権獲得方式
はO8内部のクリティカル処理を行うために用いられて
いるスピンロック制御で、他のタスクによる処理の追越
しを避けるために、−律に割込み禁止状態としてタスク
に対する資源の所有権を獲得する制御を行っている。
The resource ownership acquisition method in conventional multiprocessor systems is spinlock control, which is used to perform critical processing inside O8.In order to avoid overtaking processing by other tasks, tasks are typically placed in an interrupt-disabled state. control to gain ownership of resources.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述した従来のマルチプロセッサシステムの資源所有権
獲得方式は、排他的に使用すべき資源の種類によらずに
無条件に割込み禁止状態としていたため、アプリケーシ
ョンタスクのみにしか使わない資源を排他するために、
スピンロック制御ヲ使うので、高い走行レベルが割り付
けられている入出力タスクがその間動けなくなるという
欠点を有している。
In the conventional multiprocessor system resource ownership acquisition method described above, interrupts are unconditionally disabled regardless of the type of resources that should be used exclusively. To,
Since it uses spinlock control, it has the disadvantage that input/output tasks assigned to a high run level become stuck during that time.

入出力タスクが外部割込みを拾えないとその間周辺装置
は、プロセッサに対して割込みが可能になるまで待たさ
れてしまう。これは、次の入出力要求の処理までに時間
がかかり、周辺装置の稼働率が下がることを意味してい
る。このような入出力処理の遅延は、プロセッサの処理
速度が早くなってもシステム性能は、それに比例しては
上がらないというバランスの欠如を招くこととなる。
If the I/O task cannot pick up an external interrupt, the peripheral device is forced to wait until it can interrupt the processor. This means that it takes time to process the next input/output request, reducing the operating rate of the peripheral device. Such delay in input/output processing causes a lack of balance in that even if the processing speed of the processor increases, the system performance does not increase proportionally.

本発明の目的は、排他的に使用すべき資源に資源処理走
行レベルを設定し、そのタスク走行レベルでタスクを走
行させることで、それより走行レベルが高く割り付けら
れている入出力タスクの外部割込みの受信を可能にし、
入出力要求を優先的に処理することで、プロセッサに処
理速度を比べて遅い入出力処理のネックを緩和して、マ
ルチプロセッサシステムとして円滑な連用が行えるマル
チプロセッサシステムの資源所有権獲得方式を提供する
ことにある。
An object of the present invention is to set a resource processing run level for resources that should be used exclusively, and to run tasks at that task run level, thereby preventing external interrupts from input/output tasks assigned to a higher run level. enable the reception of
By processing input/output requests with priority, it alleviates the bottleneck of input/output processing that is slow compared to the processor's processing speed, and provides a resource ownership acquisition method for a multiprocessor system that can be used smoothly as a multiprocessor system. It's about doing.

〔課題を解決するだめの手段〕[Failure to solve the problem]

マルチプロセッサシステムの資源所有権獲得方式は、複
数のプロセッサと、主記憶装置と、複数の前記プロセッ
サおよび前記主記憶装置を結ぶ通信路であるバスとを有
するマルチプロセッサシステムの資源所有権獲得方式に
おいて、前記プロセッサの各々でタスクが走行するタス
ク走行レベルを設定するタスク走行レベル設定手段と、
排他使用資源をスピンロック制御で獲得する資源獲得手
段と、前記資源獲得手段で獲得した資源を解放する資源
解放手段と、前記資源獲得手段によって資源獲得後に前
記資源解放手段で資源を解放するまで動作する資源を獲
得したタスクのタスク走行レベルを資源処理走行レベル
へ遷移させる資源処理走行レベルへの遷移手段とを有し
て構成されている。
A resource ownership acquisition method for a multiprocessor system is a resource ownership acquisition method for a multiprocessor system that has a plurality of processors, a main storage device, and a bus that is a communication path connecting the plurality of processors and the main storage device. , task running level setting means for setting a task running level at which a task runs in each of the processors;
a resource acquisition unit that acquires an exclusively used resource by spinlock control; a resource release unit that releases the resource acquired by the resource acquisition unit; and a resource release unit that operates until the resource is released by the resource release unit after the resource acquisition unit acquires the resource. and resource processing running level transition means for transitioning the task running level of the task that has acquired the resource to the resource processing running level.

〔実施例〕〔Example〕

次に、本発明の実施例について図面を参照して説明する
Next, embodiments of the present invention will be described with reference to the drawings.

第1図は本発明の一実施例を示すブロック図である。本
実施例は、2台のプロセッサ1,2と、主記憶装置3と
、これらプロセッサ1,2および主記憶装置3を結合す
る通信路であるバス4とを含んで構成されている。なお
、プロセッサ1はタスク11.プロセッサ2はタスク1
2を動作させている。
FIG. 1 is a block diagram showing one embodiment of the present invention. The present embodiment includes two processors 1 and 2, a main memory device 3, and a bus 4 that is a communication path connecting these processors 1 and 2 and the main memory device 3. Note that processor 1 executes task 11. Processor 2 is task 1
2 is running.

また、主記憶装置3は、排他使用資源13.排他使用資
源14.これらをセマフォ制御ではなくスピンロック制
御で獲得する資源獲得手段5.この資源獲得手段5によ
って獲得した資源を解放する資源解放手段6.タスクが
走行するタスク走行レベルを設定して各タスクをそのタ
スク走行レベルに割り付けるタスク走行レベル設定手段
7.排他使用資源をスピンロック制御で獲得した後にそ
の資源に対する処理を行えるタスク走行レベルを設定し
て獲得したタスクをそのタスク走行レベルに割り付ける
資源処理走行レベルへの遷移手段8とを記憶している。
The main storage device 3 also has exclusive use resources 13. Exclusively used resources 14. 5. Resource acquisition means that acquires these resources using spinlock control rather than semaphore control. Resource release means 6 for releasing the resources acquired by this resource acquisition means 5. Task running level setting means 7. Setting a task running level at which a task runs and assigning each task to that task running level. A transition means 8 to a resource processing run level is stored that sets a task run level at which the resource can be processed after acquiring an exclusively used resource by spinlock control and allocates the acquired task to the task run level.

一例として、第1図で排他使用資源13には、資源処理
走行レベルの3が、排他使用資源14に5− は、資源処理走行レベルの20が設定されている。
As an example, in FIG. 1, the resource processing run level 3 is set for the exclusive use resource 13, and the resource processing run level 20 is set for the exclusive use resource 14.

一方、タスク走行レベル設定手段7でタスクIIには、
タスク走行レベルの20がタスク12にはタスク走行レ
ベルの30が各々予め付与されているので、各タスクは
自分には付与されているタスク走行レベルで通常走行の
動作を行っている。
On the other hand, the task running level setting means 7 sets task II to
Since a task running level of 20 and a task running level of 30 are assigned to task 12 in advance, each task performs a normal running operation at the assigned task running level.

そこで、プロセッサlで動作しているタスク11が、排
他使用資源13を資源獲得手段5によって獲得すれば、
資源獲得手段5では排他使用資源13の資源処理走行レ
ベルを調べ、それが3であるので資源処理走行レベルへ
の遷移手段8によって、タスク11の処理は、タスク走
行レベルの3に変更して走行することとなる。
Therefore, if the task 11 running on the processor l acquires the exclusive use resource 13 by the resource acquisition means 5,
The resource acquisition means 5 checks the resource processing run level of the exclusively used resource 13, and since it is 3, the resource processing run level transition means 8 changes the processing of the task 11 to the task run level 3 and runs it. I will do it.

他方、プロセッサ2で動作しているタスク12が、資源
獲得手段5を使って排他使用資源13を獲得しようとす
ると、既にタスク11が獲得済みなので、資源処理走行
レベル決定手段8によってタスク走行レベルの3になっ
てスピン状態で資源解放手段6により、排他使用資源1
3が解放されるのを待つこととなる。
On the other hand, when the task 12 running on the processor 2 tries to acquire the exclusive use resource 13 using the resource acquisition means 5, the task 11 has already acquired it, so the resource processing running level determining means 8 determines the task running level. 3 and in the spin state, the resource release means 6 releases the exclusive use resource 1.
3 will be released.

−〇 タスク11は、排他使用資源13に対する処理が終わる
と、資源解放手段6を使って排他使用資源13を解放し
、タスク走行レベル設定手段7によってタスク11を割
りふられていたタスク走行レベルの20に戻って次の動
作を行う。そこで、タスク12は、即座に資源獲得手段
5によって、排他使用資源13を獲得して、タスク走行
レベルの3で処理を開始することとなる。
-〇 When task 11 finishes processing for exclusive use resource 13, it uses resource release means 6 to release exclusive use resource 13, and the task run level to which task 11 was assigned by task run level setting means 7 is changed. Return to step 20 and perform the next operation. Therefore, the task 12 immediately acquires the exclusive use resource 13 by the resource acquisition means 5, and starts processing at the task running level 3.

次に、プロセッサ1で動作しているタスク11が、排他
使用資源14を資源獲得手段5によって獲得する。この
ときには、資源獲得手段5では排他使用資源14の資源
処理走行レベルを調べ、それが20であり、且つ、自タ
スクのタスク走行レベルが20であるため、タスク走行
レベルの遷移が行われずそのままタスク走行レベルの2
0で走行する。
Next, the task 11 running on the processor 1 acquires the exclusive use resource 14 by the resource acquisition means 5. At this time, the resource acquisition means 5 checks the resource processing run level of the exclusively used resource 14 and finds that it is 20, and the task run level of the own task is 20, so the task run level is not transitioned and the task continues as is. Driving level 2
Runs at 0.

このときに、プロセッサ2で動作しているタスク12が
、資源獲得手段5を使って排他使用資源13を獲得しよ
うとすれば、タスク120走行レベルは、30であるが
排他使用資源14の資源処理走行レベルが20であるた
め、資源処理走行レベルへの遷移手段8によって、タス
ク走行レベルは、20に遷移する。ところが既にタスク
11が獲得済みなので、タスク走行レベルが20のまま
、スピン状態で排他使用資源13が解放されるのを待つ
こととなる。
At this time, if the task 12 running on the processor 2 tries to acquire the exclusively used resource 13 using the resource acquisition means 5, the task 120 running level is 30, but the resource processing of the exclusively used resource 14 is Since the running level is 20, the task running level is transited to 20 by means 8 for transitioning to the resource processing running level. However, since the task 11 has already been acquired, the task running level remains at 20 and the task waits in a spin state until the exclusive use resource 13 is released.

このように、スピンロック状態でプロセッサ2でタスク
13がスピン状態に入っても、低いタスク走行レベルで
スピン状態になっているため、これより高い走行レベル
を持つ入出力タスクは、外部割込みを受信でき、入出力
要求を優先的に処理することができる。
In this way, even if task 13 enters the spin state on processor 2 in the spinlock state, it is in the spin state at a low task run level, so input/output tasks with a higher run level cannot receive external interrupts. It is possible to process input/output requests with priority.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明のマルチプロセッサシステ
ムの資源所有権獲得方式は、排他使用資源の資源処理走
行レベルを資源毎に設定して、アプリケーションタスク
より高い走行レベルをもつ入出力タスクの入出力要求処
理を優先的に行えるようにすることにより、一般的に処
理速度が遅い周辺装置と処理速度の速いプロセッサとの
バランスを図ることが可能となりマルチプロセッサシス
テムの効率的な運用に寄与することができるという効果
を有している。
As explained above, the resource ownership acquisition method of the multiprocessor system of the present invention sets the resource processing run level of the exclusively used resources for each resource, and allows input/output tasks that have a higher run level than application tasks to By allowing request processing to be performed with priority, it is possible to achieve a balance between peripheral devices that generally have slower processing speeds and processors that have faster processing speeds, contributing to the efficient operation of multiprocessor systems. It has the effect of being possible.

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

第1図は、本発明の一実施例を示すブロック図である。 1.2・・・・・・プロセッサ、3・・・・・・主記憶
装置、4・・・・・・バス、訃・・・・・資源獲得手段
、6・・・・・・資源解放手段、7・・・・・・タスク
走行レベル設定手段、8・・・・・・資源処理走行レベ
ルへの遷移手段、11゜12・・・・・・タスク、13
.14・・・・・・排他使用資源。
FIG. 1 is a block diagram showing one embodiment of the present invention. 1.2...Processor, 3...Main storage device, 4...Bus, Death...Resource acquisition means, 6...Resource release Means, 7...Task run level setting means, 8...Transition means to resource processing run level, 11°12...Task, 13
.. 14... Exclusively used resource.

Claims (1)

【特許請求の範囲】[Claims]  複数のプロセッサと、主記憶装置と、複数の前記プロ
セッサおよび前記主記憶装置を結ぶ通信路であるバスと
を有するマルチプロセッサシステムの資源所有権獲得方
式において、前記プロセッサの各々でタスクが走行する
タスク走行レベルを設定するタスク走行レベル設定手段
と、排他使用資源をスピンロック制御で獲得する資源獲
得手段と、前記資源獲得手段で獲得した資源を解放する
資源解放手段と、前記資源獲得手段によって資源獲得後
に前記資源解放手段で資源を解放するまで動作する資源
を獲得したタスクのタスク走行レベルを資源処理走行レ
ベルへ遷移させる資源処理走行レベルへの遷移手段とを
有することを特徴とするマルチプロセッサシステムの資
源所有権獲得方式。
In a resource ownership acquisition method for a multiprocessor system having a plurality of processors, a main memory device, and a bus serving as a communication path connecting the plurality of processors and the main memory device, a task runs on each of the processors. a task running level setting means for setting a running level; a resource acquisition means for acquiring exclusively used resources by spinlock control; a resource release means for releasing the resources acquired by the resource acquisition means; and a resource acquisition means for acquiring resources by the resource acquisition means. and means for transitioning to a resource processing running level for transitioning the task running level of a task that has acquired a resource, which operates until the resource is later released by the resource releasing means, to a resource processing running level. Resource ownership acquisition method.
JP4315790A 1990-02-23 1990-02-23 Acquisition method for ownership of multiprocessor system resources Pending JPH03245257A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4315790A JPH03245257A (en) 1990-02-23 1990-02-23 Acquisition method for ownership of multiprocessor system resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4315790A JPH03245257A (en) 1990-02-23 1990-02-23 Acquisition method for ownership of multiprocessor system resources

Publications (1)

Publication Number Publication Date
JPH03245257A true JPH03245257A (en) 1991-10-31

Family

ID=12656027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4315790A Pending JPH03245257A (en) 1990-02-23 1990-02-23 Acquisition method for ownership of multiprocessor system resources

Country Status (1)

Country Link
JP (1) JPH03245257A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7500036B2 (en) 2000-12-28 2009-03-03 International Business Machines Corporation Quad aware locking primitive

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7500036B2 (en) 2000-12-28 2009-03-03 International Business Machines Corporation Quad aware locking primitive
US7979617B2 (en) 2000-12-28 2011-07-12 International Business Machines Corporation Quad aware locking primitive

Similar Documents

Publication Publication Date Title
US5390329A (en) Responding to service requests using minimal system-side context in a multiprocessor environment
US20090077564A1 (en) Fast context switching using virtual cpus
EP0887730A1 (en) Method for providing exclusive access to a resource in a multiprocessor computer system
US7103631B1 (en) Symmetric multi-processor system
US20020178208A1 (en) Priority inversion in computer system supporting multiple processes
AU603876B2 (en) Multiple i/o bus virtual broadcast of programmed i/o instructions
KR20000060827A (en) method for implementation of transferring event in real-time operating system kernel
US11237859B2 (en) Securing virtual machines in computer systems
JPS62184544A (en) Virtual computer system
US6128679A (en) Computer for executing I/O instructions, by emulation, in a foreign application program wherein the emulator result thread is blocked from running between processes
JPH02300939A (en) Semaphore operation system
US6820153B2 (en) Interrupt processing and memory management method in an operation processing device and a device using the same
JPH03245257A (en) Acquisition method for ownership of multiprocessor system resources
CN112559136A (en) Method and device for interrupting delivery of computer
JPS6336023B2 (en)
US11461134B2 (en) Apparatus and method for deferral scheduling of tasks for operating system on multi-core processor
JPH11184828A (en) Test system for multiprocessor system
Rothberg Interrupt handling in Linux
JP2010026575A (en) Scheduling method, scheduling device, and multiprocessor system
JPH05143370A (en) Multi-task computer
CN117453413A (en) Resource application method, device, electronic equipment and storage medium
JP2581327B2 (en) Virtual machine I / O interrupt handling method
JPH0666060B2 (en) Bus priority control method
CN116860465A (en) Method for realizing synchronous lock and related equipment
JP2000029850A (en) Task controlling method using inter-processor communication of operating system