JPH03245257A - Acquisition method for ownership of multiprocessor system resources - Google Patents
Acquisition method for ownership of multiprocessor system resourcesInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 13
- 238000004891 communication Methods 0.000 claims description 3
- 230000007704 transition Effects 0.000 abstract description 5
- 230000002093 peripheral effect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はマルチプロセッサシステムの資源所有権獲得方
式に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a resource ownership acquisition method for a multiprocessor system.
従来のマルチプロセッサシステムの資源所有権獲得方式
は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.
上述した従来のマルチプロセッサシステムの資源所有権
獲得方式は、排他的に使用すべき資源の種類によらずに
無条件に割込み禁止状態としていたため、アプリケーシ
ョンタスクのみにしか使わない資源を排他するために、
スピンロック制御ヲ使うので、高い走行レベルが割り付
けられている入出力タスクがその間動けなくなるという
欠点を有している。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.
マルチプロセッサシステムの資源所有権獲得方式は、複
数のプロセッサと、主記憶装置と、複数の前記プロセッ
サおよび前記主記憶装置を結ぶ通信路であるバスとを有
するマルチプロセッサシステムの資源所有権獲得方式に
おいて、前記プロセッサの各々でタスクが走行するタス
ク走行レベルを設定するタスク走行レベル設定手段と、
排他使用資源をスピンロック制御で獲得する資源獲得手
段と、前記資源獲得手段で獲得した資源を解放する資源
解放手段と、前記資源獲得手段によって資源獲得後に前
記資源解放手段で資源を解放するまで動作する資源を獲
得したタスクのタスク走行レベルを資源処理走行レベル
へ遷移させる資源処理走行レベルへの遷移手段とを有し
て構成されている。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.
次に、本発明の実施例について図面を参照して説明する
。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.
以上説明したように、本発明のマルチプロセッサシステ
ムの資源所有権獲得方式は、排他使用資源の資源処理走
行レベルを資源毎に設定して、アプリケーションタスク
より高い走行レベルをもつ入出力タスクの入出力要求処
理を優先的に行えるようにすることにより、一般的に処
理速度が遅い周辺装置と処理速度の速いプロセッサとの
バランスを図ることが可能となりマルチプロセッサシス
テムの効率的な運用に寄与することができるという効果
を有している。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.
第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)
セッサおよび前記主記憶装置を結ぶ通信路であるバスと
を有するマルチプロセッサシステムの資源所有権獲得方
式において、前記プロセッサの各々でタスクが走行する
タスク走行レベルを設定するタスク走行レベル設定手段
と、排他使用資源をスピンロック制御で獲得する資源獲
得手段と、前記資源獲得手段で獲得した資源を解放する
資源解放手段と、前記資源獲得手段によって資源獲得後
に前記資源解放手段で資源を解放するまで動作する資源
を獲得したタスクのタスク走行レベルを資源処理走行レ
ベルへ遷移させる資源処理走行レベルへの遷移手段とを
有することを特徴とするマルチプロセッサシステムの資
源所有権獲得方式。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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7500036B2 (en) | 2000-12-28 | 2009-03-03 | International Business Machines Corporation | Quad aware locking primitive |
-
1990
- 1990-02-23 JP JP4315790A patent/JPH03245257A/en active Pending
Cited By (2)
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 |