JP2013152725A - マルチスレッドシステムの中でイベントを設定するための技術 - Google Patents
マルチスレッドシステムの中でイベントを設定するための技術 Download PDFInfo
- Publication number
- JP2013152725A JP2013152725A JP2013035676A JP2013035676A JP2013152725A JP 2013152725 A JP2013152725 A JP 2013152725A JP 2013035676 A JP2013035676 A JP 2013035676A JP 2013035676 A JP2013035676 A JP 2013035676A JP 2013152725 A JP2013152725 A JP 2013152725A
- Authority
- JP
- Japan
- Prior art keywords
- event
- priority
- thread
- setting
- scheduler
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
- Computer And Data Communications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【解決手段】スケジューラは最初に本質的に無効にされる。次いで、例えば設定されるべき各イベントにつき1回、単一のイベントを設定するために関数を繰り返し呼び出すことによってイベントが設定される。次いで、スケジューラはその通常の効果に回復される。スケジューラは、処理されている現在のスレッドの優先権を最も高い可能な優先レベルに人為的に設定することによって、無効にされてもよい。このことは、イベントが設定される間に、現在のスレッドが別のスレッドによって割り込まれることを回避する。すべてのイベントが設定された後、現在のスレッドの優先権は本来の優先レベルに回復され、このことが、その後スケジューラをその通常の効果に回復する。
【選択図】図3
Description
Claims (24)
- 現在のスレッドの優先権を高い優先レベルに設定するためのコードと、
少なくとも1つのイベントを設定するためのコードと、
前記現在のスレッドの前記優先権を本来の優先レベルに回復するためのコードとを記憶するためのプロセッサ可読媒体。 - 前記現在のスレッドの前記優先権を前記高い優先レベルに設定する前に、前記本来の優先レベルを保存するためのコードをさらに記憶するための請求項1に記載のプロセッサ可読媒体。
- 少なくとも1つのイベントを設定するための前記コードが、
1回につき1つのイベントで、少なくとも1つのイベントを設定するためのコードを含む請求項1に記載のプロセッサ可読媒体。 - 少なくとも1つのイベントを設定するための前記コードが、
前記少なくとも1つのイベントの各々につき1回、単一のイベントを設定するために関数を呼び出すためのコードを含む請求項1に記載のプロセッサ可読媒体。 - 少なくとも1つのイベントを設定するための前記コードが、
前記少なくとも1つのイベントの各々を個々に設定するために、オペレーティングシステムの中で関数を呼び出すためのコードを含む請求項1に記載のプロセッサ可読媒体。 - 前記現在のスレッドの前記優先権を設定するための前記コードが、
前記現在のスレッドの前記優先権を最も高い可能な優先レベルに設定するためのコードを含む請求項1に記載のプロセッサ可読媒体。 - 前記現在のスレッドの前記優先権を設定するための前記コード、前記少なくとも1つのイベントを設定するための前記コード、および前記現在のスレッドの前記優先権を回復するための前記コードが、1つまたは複数のイベントを設定するためにスレッドによって呼び出されることが可能な関数の一部である請求項1に記載のプロセッサ可読媒体。
- 前記関数が、オペレーティングシステムのためのカーネルの上の抽象層に存在する請求項7に記載のプロセッサ可読媒体。
- 現在のタスクの優先権を高い優先レベルに設定することと、
少なくとも1つのイベントを設定することと、
前記現在のタスクの前記優先権を本来の優先レベルに回復することとを含むイベントを設定するための方法。 - 前記現在のタスクの前記優先権を前記高い優先レベルに設定する前に、前記本来の優先レベルを保存することをさらに含む請求項9に記載の方法。
- 前記少なくとも1つのイベントを設定することが、1回につき1つのイベントで、前記少なくとも1つのイベントを設定することを含む請求項9に記載の方法。
- 前記現在のタスクの前記優先権を前記高い優先レベルに設定することが、前記現在のタスクの前記優先権を最も高い可能な優先レベルに設定することを含む請求項9に記載の方法。
- 現在のタスクの優先権を高い優先レベルに設定するための手段と、
少なくとも1つのイベントを設定するための手段と、
前記現在のタスクの前記優先権を本来の優先レベルに回復するための手段とを含む装置。 - 前記現在のスレッドの前記優先権を前記高い優先レベルに設定する前に、前記本来の優先レベルを保存するための手段をさらに含む請求項13に記載の装置。
- もしあれば、設定されている前記少なくとも1つのイベントに基づいて、実行のために準備ができているタスクを識別するための手段と、
実行のために準備ができている前記タスクの中で、最も高い優先権を有するタスクをスケジュールするための手段とをさらに含む請求項13に記載の装置。 - スケジューラを一時的に無効にすることと、
少なくとも1つのイベントを設定することと、
前記スケジューラを通常の効果に回復することとを含むイベントを設定する方法。 - 前記スケジューラを一時的に無効にすることが、現在のタスクの優先権を高い優先レベルに設定することを含む請求項16に記載の方法。
- 前記スケジューラを通常の効果に回復することが、前記現在のタスクの前記優先権を本来の優先レベルに回復することを含む請求項17に記載の方法。
- 前記少なくとも1つのイベントを設定することが、1回につき1つのイベントで、前記少なくとも1つのイベントを設定することを含む請求項16に記載の方法。
- タスクをスケジュールするために動作可能なスケジューラと、
前記スケジューラを一時的に無効にし、少なくとも1つのイベントを設定するため、かつ前記スケジューラを通常の効果に回復するために動作可能な処理モジュールとを含み、前記スケジューラが、設定される前記少なくとも1つのイベントにしたがって前記タスクをスケジュールするために動作可能である装置。 - 前記処理モジュールが、現在のタスクの優先権を高い優先レベルに設定して、前記スケジューラを無効にするために動作可能である請求項20に記載の装置。
- 前記処理モジュールが、前記現在のタスクの前記優先権を本来の優先レベルに回復して、前記スケジューラを通常の効果に回復するために動作可能である請求項21に記載の装置。
- 前記処理モジュールが、1回につき1つのイベントで、前記少なくとも1つのイベントを設定するために動作可能である請求項20に記載の装置。
- 前記スケジューラが、もしあれば、設定される前記少なくとも1つのイベントに基づいて、実行のために準備ができているタスクを識別するため、かつ実行のために準備ができている前記タスクの中で最も高い優先権を有するタスクをスケジュールするために動作可能である請求項20に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/105,913 | 2005-04-13 | ||
US11/105,913 US8255912B2 (en) | 2005-04-13 | 2005-04-13 | Techniques for setting events in a multi-threaded system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008506796A Division JP2008538043A (ja) | 2005-04-13 | 2006-04-12 | マルチスレッドシステムの中でイベントを設定するための技術 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013152725A true JP2013152725A (ja) | 2013-08-08 |
Family
ID=36936427
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008506796A Withdrawn JP2008538043A (ja) | 2005-04-13 | 2006-04-12 | マルチスレッドシステムの中でイベントを設定するための技術 |
JP2013035676A Withdrawn JP2013152725A (ja) | 2005-04-13 | 2013-02-26 | マルチスレッドシステムの中でイベントを設定するための技術 |
JP2014260693A Expired - Fee Related JP6009529B2 (ja) | 2005-04-13 | 2014-12-24 | マルチスレッドシステムの中でイベントを設定するための技術 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008506796A Withdrawn JP2008538043A (ja) | 2005-04-13 | 2006-04-12 | マルチスレッドシステムの中でイベントを設定するための技術 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014260693A Expired - Fee Related JP6009529B2 (ja) | 2005-04-13 | 2014-12-24 | マルチスレッドシステムの中でイベントを設定するための技術 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8255912B2 (ja) |
EP (1) | EP1869552A2 (ja) |
JP (3) | JP2008538043A (ja) |
KR (1) | KR101004861B1 (ja) |
CN (1) | CN101194231B (ja) |
TW (1) | TWI327291B (ja) |
WO (1) | WO2006110914A2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8255912B2 (en) * | 2005-04-13 | 2012-08-28 | Qualcomm Incorporated | Techniques for setting events in a multi-threaded system |
US8149698B1 (en) * | 2006-01-09 | 2012-04-03 | Genband Us Llc | Providing a schedule for active events to be processed by a processor |
US9063778B2 (en) * | 2008-01-09 | 2015-06-23 | Microsoft Technology Licensing, Llc | Fair stateless model checking |
US8676976B2 (en) * | 2009-02-25 | 2014-03-18 | International Business Machines Corporation | Microprocessor with software control over allocation of shared resources among multiple virtual servers |
US9207943B2 (en) * | 2009-03-17 | 2015-12-08 | Qualcomm Incorporated | Real time multithreaded scheduler and scheduling method |
US8572617B2 (en) * | 2009-07-21 | 2013-10-29 | Sas Institute Inc. | Processor-implemented systems and methods for event handling |
US8893049B2 (en) * | 2009-08-28 | 2014-11-18 | International Business Machines Corporation | Creation and prioritization of multiple virtual universe teleports in response to an event |
US8904399B2 (en) * | 2010-03-15 | 2014-12-02 | Qualcomm Incorporated | System and method of executing threads at a processor |
TWI493923B (zh) * | 2010-11-09 | 2015-07-21 | Univ Nat Cheng Kung | 處理資訊的裝置與其方法 |
US8589934B2 (en) * | 2011-04-01 | 2013-11-19 | Arm Limited | Controlling priority levels of pending threads awaiting processing |
KR20130063825A (ko) * | 2011-12-07 | 2013-06-17 | 삼성전자주식회사 | 운영체제에서 동적으로 선점 구간을 조정하는 장치 및 방법 |
US8930965B1 (en) * | 2012-02-28 | 2015-01-06 | Marvell International Ltd | Event-driven state-machine sequencer |
CN104572036B (zh) * | 2013-10-12 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 事件的处理方法及装置 |
US20160210174A1 (en) * | 2015-01-15 | 2016-07-21 | Microsoft Corporation | Hybrid Scheduler and Power Manager |
US9697043B2 (en) * | 2015-02-02 | 2017-07-04 | Mediatek Inc. | Methods and computer systems for performance monitoring of tasks |
US10761714B2 (en) * | 2015-11-23 | 2020-09-01 | Google Llc | Recognizing gestures and updating display by coordinator |
US11216287B2 (en) * | 2017-06-02 | 2022-01-04 | Apple Inc. | Selective rendering mode |
CN118152106A (zh) * | 2018-10-11 | 2024-06-07 | 华为技术有限公司 | 资源调度方法和终端设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008538043A (ja) * | 2005-04-13 | 2008-10-02 | クゥアルコム・インコーポレイテッド | マルチスレッドシステムの中でイベントを設定するための技術 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04287233A (ja) * | 1991-03-18 | 1992-10-12 | Hitachi Ltd | 事象処理制御方法 |
JP3655648B2 (ja) * | 1994-03-07 | 2005-06-02 | 富士通株式会社 | プロセススイッチ制御装置およびプロセス制御方法 |
US6055559A (en) * | 1994-03-07 | 2000-04-25 | Fujitsu Limited | Process switch control apparatus and a process control method |
SE9404294D0 (sv) * | 1994-12-09 | 1994-12-09 | Ellemtel Utvecklings Ab | sätt och anordning vid telekommunikation |
US6006247A (en) * | 1995-03-21 | 1999-12-21 | International Business Machines Corporation | Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system |
US6105053A (en) * | 1995-06-23 | 2000-08-15 | Emc Corporation | Operating system for a non-uniform memory access multiprocessor system |
JPH09160790A (ja) * | 1995-12-12 | 1997-06-20 | Matsushita Electric Ind Co Ltd | タスクスケジュール装置及びタスクスケジュール方法 |
US5706515A (en) * | 1996-03-25 | 1998-01-06 | Sun Microsystems, Inc. | System and method for implementing an atomic wait for notification operation |
US6128640A (en) * | 1996-10-03 | 2000-10-03 | Sun Microsystems, Inc. | Method and apparatus for user-level support for multiple event synchronization |
US6101524A (en) * | 1997-10-23 | 2000-08-08 | International Business Machines Corporation | Deterministic replay of multithreaded applications |
FI108478B (fi) * | 1998-01-21 | 2002-01-31 | Nokia Corp | Sulautettu jõrjestelmõ |
US6115715A (en) * | 1998-06-29 | 2000-09-05 | Sun Microsystems, Inc. | Transaction management in a configuration database |
US6061709A (en) * | 1998-07-31 | 2000-05-09 | Integrated Systems Design Center, Inc. | Integrated hardware and software task control executive |
JP2000194573A (ja) | 1998-12-24 | 2000-07-14 | Toshiba Corp | スレッド制御システムおよびスレッド制御方法 |
US6587955B1 (en) * | 1999-02-26 | 2003-07-01 | Sun Microsystems, Inc. | Real time synchronization in multi-threaded computer systems |
KR100617228B1 (ko) | 1999-03-19 | 2006-08-31 | 엘지전자 주식회사 | 실시간 운영체계 커널의 이벤트 전달 체계 구현방법 |
US6874144B1 (en) * | 1999-04-05 | 2005-03-29 | International Business Machines Corporation | System, method, and program for implementing priority inheritance in an operating system |
US6754690B2 (en) * | 1999-09-16 | 2004-06-22 | Honeywell, Inc. | Method for time partitioned application scheduling in a computer operating system |
US6823517B1 (en) * | 2000-01-27 | 2004-11-23 | Andrew E. Kalman | Multi-tasking-real-time operating system for microprocessors with limited memory that constrains context switching to occur only at task level |
US20010027464A1 (en) * | 2000-03-27 | 2001-10-04 | General Instrument Corporation | Operating system abstraction interface for broadband terminal platform firmware |
US20010034751A1 (en) * | 2000-04-21 | 2001-10-25 | Shinichiro Eto | Real-time OS simulator |
US6845504B2 (en) * | 2001-02-08 | 2005-01-18 | International Business Machines Corporation | Method and system for managing lock contention in a computer system |
US20020165999A1 (en) * | 2001-03-07 | 2002-11-07 | Ajile Systems, Inc. | Apparatus and method for interfacing hardware events with software events |
US6904483B2 (en) * | 2001-03-20 | 2005-06-07 | Wind River Systems, Inc. | System and method for priority inheritance |
US7117496B1 (en) * | 2001-05-09 | 2006-10-03 | Ncr Corporation | Event-based synchronization |
US7065765B2 (en) * | 2001-12-05 | 2006-06-20 | International Business Machines Corporation | Serializing event handling in a threaded system with no wait states |
JP4170227B2 (ja) | 2002-01-24 | 2008-10-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 多重処理環境における処理の実行 |
US7448036B2 (en) * | 2002-05-02 | 2008-11-04 | International Business Machines Corporation | System and method for thread scheduling with weak preemption policy |
US7487502B2 (en) * | 2003-02-19 | 2009-02-03 | Intel Corporation | Programmable event driven yield mechanism which may activate other threads |
US7278141B2 (en) * | 2003-04-23 | 2007-10-02 | International Business Machines Corporation | System and method for adding priority change value corresponding with a lock to a thread during lock processing |
US20040226016A1 (en) * | 2003-05-08 | 2004-11-11 | Samsung Electronics Co., Ltd. | Apparatus and method for sharing resources in a real-time processing system |
US7380247B2 (en) * | 2003-07-24 | 2008-05-27 | International Business Machines Corporation | System for delaying priority boost in a priority offset amount only after detecting of preemption event during access to critical section |
US8438569B2 (en) * | 2004-10-14 | 2013-05-07 | International Business Machines Corporation | Broadcasting a condition to threads executing on a plurality of on-chip processors |
US7765547B2 (en) * | 2004-11-24 | 2010-07-27 | Maxim Integrated Products, Inc. | Hardware multithreading systems with state registers having thread profiling data |
-
2005
- 2005-04-13 US US11/105,913 patent/US8255912B2/en active Active
-
2006
- 2006-04-12 JP JP2008506796A patent/JP2008538043A/ja not_active Withdrawn
- 2006-04-12 EP EP06750367A patent/EP1869552A2/en not_active Ceased
- 2006-04-12 KR KR1020077026350A patent/KR101004861B1/ko not_active IP Right Cessation
- 2006-04-12 WO PCT/US2006/014306 patent/WO2006110914A2/en active Application Filing
- 2006-04-12 CN CN2006800200919A patent/CN101194231B/zh not_active Expired - Fee Related
- 2006-04-13 TW TW095113191A patent/TWI327291B/zh active
-
2013
- 2013-02-26 JP JP2013035676A patent/JP2013152725A/ja not_active Withdrawn
-
2014
- 2014-12-24 JP JP2014260693A patent/JP6009529B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008538043A (ja) * | 2005-04-13 | 2008-10-02 | クゥアルコム・インコーポレイテッド | マルチスレッドシステムの中でイベントを設定するための技術 |
Also Published As
Publication number | Publication date |
---|---|
KR20070121839A (ko) | 2007-12-27 |
WO2006110914A2 (en) | 2006-10-19 |
US20060236322A1 (en) | 2006-10-19 |
CN101194231B (zh) | 2012-05-23 |
TW200710734A (en) | 2007-03-16 |
JP2015097106A (ja) | 2015-05-21 |
WO2006110914A3 (en) | 2007-03-01 |
TWI327291B (en) | 2010-07-11 |
JP2008538043A (ja) | 2008-10-02 |
CN101194231A (zh) | 2008-06-04 |
KR101004861B1 (ko) | 2010-12-28 |
US8255912B2 (en) | 2012-08-28 |
JP6009529B2 (ja) | 2016-10-19 |
EP1869552A2 (en) | 2007-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6009529B2 (ja) | マルチスレッドシステムの中でイベントを設定するための技術 | |
JP5323828B2 (ja) | 仮想計算機制御装置、仮想計算機制御プログラム及び仮想計算機制御回路 | |
KR100746797B1 (ko) | 프로세서 및 정보처리 방법 | |
JP4148223B2 (ja) | プロセッサおよび情報処理方法 | |
US9201693B2 (en) | Quota-based resource management | |
JP5538442B2 (ja) | リアルタイムマルチスレッドスケジューラおよびスケジューリング方法 | |
US9207968B2 (en) | Computing system using single operating system to provide normal security services and high security services, and methods thereof | |
KR101551321B1 (ko) | 휴대용 컴퓨팅 디바이스에서 요청들을 스케쥴링하기 위한 방법 및 시스템 | |
US20140115308A1 (en) | Control method, control device and computer system | |
EP4336359A1 (en) | Method for processing page faults and corresponding apparatus | |
JP4609113B2 (ja) | プロセッサ | |
US20150135181A1 (en) | Information processing device and method for protecting data in a call stack | |
US20140237475A1 (en) | Sleep/wake with suppression and donated importance | |
WO2005064463A1 (en) | Task scheduling apparatus, method, program, storage medium and transmission medium for prioritized signal handler scheduling | |
JP2001117786A (ja) | プロセススケジューリング装置およびプロセススケジューリング方法 | |
JP2005519393A (ja) | 仮想直接メモリ・アクセスのための方法及び装置 | |
JP4389797B2 (ja) | プロセッサおよび情報処理方法 | |
CN116302379A (zh) | 微内核架构、调度方法、微内核系统及存储介质 | |
JPH02219148A (ja) | ページング方式 | |
JP2007094941A (ja) | オペレーティングシステム,電子機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140128 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140415 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140418 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140728 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20140902 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20141222 |