JP2009104259A - マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム - Google Patents
マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム Download PDFInfo
- Publication number
- JP2009104259A JP2009104259A JP2007273186A JP2007273186A JP2009104259A JP 2009104259 A JP2009104259 A JP 2009104259A JP 2007273186 A JP2007273186 A JP 2007273186A JP 2007273186 A JP2007273186 A JP 2007273186A JP 2009104259 A JP2009104259 A JP 2009104259A
- Authority
- JP
- Japan
- Prior art keywords
- sequencer
- managed
- operating system
- processor
- application
- 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
Images
Landscapes
- Microcomputers (AREA)
Abstract
【解決手段】軽量コードレイヤは、オペレーティングシステムの下で実行する。このコードレイヤは、OMSとAMS間の通信の必要性といった特定のモニタリングされるイベントに応答して呼び出しされる。制御は、特殊オペレーションのためにこのコードレイヤに転送され、その後、制御は最初に実行されていたコードに戻る。コードレイヤは通常はドーマントであり、ユーザアプリケーションまたはオペレーティングシステムが実行しているときにいつでも呼び出しされることができる。
【選択図】図1
Description
102 コンピュータ
103 プロセッサ
104 オペレーティングシステム
105 プラットフォームハードウェア
106 アプリケーション
108 ソフトウェアレイヤ
110 OS管理されるシーケンサ
112 アプリケーション管理されるシーケンサ
Claims (20)
- アプリケーションにより管理されるシーケンサおよびオペレーティングシステムにより管理されるシーケンサのうちの少なくとも1つが、一のマルチプロセッサシステムにおいて実行される一のオペレーティングシステムとインタラクションすることを要求する一の状態を検出する工程と、
前記オペレーティングシステムにより管理されるシーケンサおよび前記アプリケーションにより管理されるシーケンサにメモリを割り当てる工程と、
前記オペレーティングシステムにより管理されるシーケンサにおける一の特権ステートを初期化する工程と、
前記アプリケーションにより管理されるシーケンサの実行を、前記検出された状態に応答する、複数のイベントハンドラを含む一のカーネル特権レベルコンポーネントにリダイレクトする工程と、
を含む方法。 - 前記割り当てられるメモリは、プロセッサグローバルメモリ、プロセッサローカルメモリ、スレッドグローバルメモリ、およびスレッドローカルメモリから構成されるグループから選択される請求項1に記載の方法。
- 一の第1のシーケンサグループに関連付けられる一のグローバル領域を指すよう前記オペレーティングシステムにより管理されるシーケンサにおける一の第1のポインタを初期化する工程と、
一の第1のプロセッサローカルメモリ領域を指すよう前記オペレーティングシステムにより管理されるシーケンサにおける一の第2のポインタを初期化する工程と、
一の第2のシーケンサグループに関連付けられる一のグローバル領域を指すよう前記アプリケーションにより管理されるシーケンサにおける一の第1のポインタを初期化する工程と、
一の第2のプロセッサローカルメモリ領域に関連付けられる一のグローバル領域を指すよう前記アプリケーションにより管理されるシーケンサにおける一の第2のポインタを初期化する工程と、
をさらに含む請求項2に記載の方法。 - 前記状態は、前記マルチプロセッサシステムにおける一の第1のプロセッサから一のプロセッサ間割り込み信号を受信することを含む請求項1に記載の方法。
- 前記状態は、一のリング移行イベントを検出することを含む請求項4に記載の方法。
- 前記リング移行イベントは、リング0からリング3への移行を含む請求項5に記載の方法。
- 前記リング移行イベントは、リング3からリング0への移行を含む請求項5に記載の方法。
- 前記状態が前記アプリケーションにより管理されるシーケンサによりもたらされる場合に、前記検出された状態のプロキシ実行処理を実行する工程と、
前記状態が前記オペレーティングシステムにより管理されるシーケンサによりもたらされる場合に、前記状態は一のモニタリングされるスレッドか否かを判断する工程と、
前記状態が一のモニタリングされるスレッドにおいて発生する場合に、一の割り込みベクタテーブルにより指し示される一の実行ロケーションにジャンプする工程と、
をさらに含む請求項5に記載の方法。 - 前記カーネル特権レベルコンポーネントは、前記マルチプロセッサシステムの少なくとも1つのプロセッサと前記オペレーティングシステムとの間に機能的に存在する一のファームウェアレイヤを含み、
前記ハードウェアイベントハンドラは、前記オペレーティングシステムに対してトランスペアレントである請求項4に記載の方法。 - 前記少なくとも1つのプロセッサは、一の64ビットプロセッサを含み、
前記カーネル特権レベルコンポーネントは、前記64ビットプロセッサのアーキテクチャにより定義される一のプロセッサアブストラクションレイヤを含む請求項9に記載の方法。 - 一の仮想ハッシュページテーブルウォーカを介して、前記オペレーティングシステムにより管理されるシーケンサと前記アプリケーションにより管理されるシーケンサの両方により使用される一のトランスレーションルックアサイドバッファにおける一貫性を保持する工程をさらに含む請求項1に記載の方法。
- 一のマルチプロセッサプラットフォームにおいて実行される一のオペレーティングシステムの1つ以上の処理スレッドを実行する一のオペレーティングシステムにより管理されるシーケンサと、
前記マルチプロセッサプラットフォーム上で1つ以上のアプリケーションプログラムを実行する一のアプリケーションにより管理されるシーケンサと、
前記オペレーティングシステムおよび前記アプリケーションプログラムのコンテンツを具現化する1つ以上のページを保存するよう前記アプリケーションにより管理されるシーケンサおよび前記オペレーティングシステムにより管理されるシーケンサに割り当てられる一のメモリ空間と、
前記アプリケーションにより管理されるシーケンサが前記オペレーティングシステムとインタラクションすることを要求する一の検出状態に応答する、複数のハードウェアイベントハンドラを含む一のカーネル特権レベルコンポーネントに、前記アプリケーションにより管理されるシーケンサの実行をリダイレクトする一のファームウェアレイヤと、
を含むシステム。 - 前記少なくとも1つのプロセッサは、一の64ビットプロセッサを含み、
前記ファームウェアレイヤは、前記64ビットプロセッサのアーキテクチャにより定義される一のプロセッサアブストラクションレイヤを含む請求項12に記載のシステム。 - 前記メモリ空間は、プロセッサグローバルメモリ、プロセッサローカルメモリ、スレッドグローバルメモリ、およびスレッドローカルメモリから構成されるグループから選択される請求項13に記載のシステム。
- 前記検出状態は、前記プロセッサが前記マルチプロセッサシステムにおける別のプロセッサからの一のプロセッサ間割り込み信号を受信する状態と、前記プロセッサが一のリング移行イベントを検出する状態とから構成されるグループから選択される請求項12に記載のシステム。
- 前記リング移行イベントは、リング0からリング3への移行と、リング3からリング0への移行とから構成されるグループから選択される請求項15に記載のシステム。
- 前記オペレーティングシステムにより管理されるシーケンサおよび前記アプリケーションにより管理されるシーケンサにより使用される一のトランスレーションルックアサイドバッファをさらに含み、
前記トランスレーションルックアサイドバッファのコンテンツは、一の仮想ハッシュページテーブルウォーカにより制御される請求項16に記載のシステム。 - 複数の命令が保存され、前記複数の命令が一のシステムにおける一のプロセッサによって実行されると複数のオペレーションを実行する機械可読媒体であって、
前記オペレーションは、
一のアプリケーションにより管理されるシーケンサが、一のマルチプロセッサシステムにおいて実行される一のオペレーティングシステムとインタラクションすることを要求する一の状態を検出するオペレーションと、
前記マルチプロセッサシステムにおける一のオペレーティングシステムにより管理されるシーケンサおよび前記アプリケーションにより管理されるシーケンサにメモリを割り当てるオペレーションと、
前記オペレーティングシステムにより管理されるシーケンサにおける一の特権ステートを初期化するオペレーションと、
前記アプリケーションにより管理されるシーケンサの実行を、前記検出された状態に応答する、複数のハードウェアイベントハンドラを含む一のカーネル特権レベルコンポーネントにリダイレクトするオペレーションと、
を含む、機械可読媒体。 - 一の第1のシーケンサグループに関連付けられる一のグローバル領域を指すよう前記オペレーティングシステムにより管理されるシーケンサにおける一の第1のポインタを初期化するオペレーションと、
一の第1のプロセッサローカルメモリ領域を指すよう前記オペレーティングシステムにより管理されるシーケンサにおける一の第2のポインタを初期化するオペレーションと、
一の第2のシーケンサグループに関連付けられる一のグローバル領域を指すよう前記アプリケーションにより管理されるシーケンサにおける一の第1のポインタを初期化するオペレーションと、
一の第2のプロセッサローカルメモリ領域に関連付けられる一のグローバル領域を指すよう前記アプリケーションにより管理されるシーケンサにおける一の第2のポインタを初期化するオペレーションと、
を実行する複数の命令をさらに含む請求項18に記載の機械可読媒体。 - 前記状態が前記アプリケーションにより管理されるシーケンサによりもたらされる場合に、前記検出された状態のプロキシ実行処理を実行するオペレーションと、
前記状態が前記オペレーティングシステムにより管理されるシーケンサによりもたらされる場合に、前記状態は一のモニタリングされるスレッドか否かを判断するオペレーションと、
前記状態が一のモニタリングされるスレッドにおいて発生する場合に、一の割り込みベクタテーブルにより指し示される一の実行ロケーションにジャンプするオペレーションと、
を実行する複数の命令をさらに含む請求項19に記載の機械可読媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007273186A JP4978914B2 (ja) | 2007-10-19 | 2007-10-19 | マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007273186A JP4978914B2 (ja) | 2007-10-19 | 2007-10-19 | マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009104259A true JP2009104259A (ja) | 2009-05-14 |
JP4978914B2 JP4978914B2 (ja) | 2012-07-18 |
Family
ID=40705892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007273186A Expired - Fee Related JP4978914B2 (ja) | 2007-10-19 | 2007-10-19 | マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4978914B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011134318A (ja) * | 2009-12-22 | 2011-07-07 | Intel Corp | 複数のデータ・エレメントの収集及び分散 |
CN106716983A (zh) * | 2015-02-10 | 2017-05-24 | 京瓷办公信息系统株式会社 | 通信终端设备以及通信系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006074024A2 (en) * | 2004-12-30 | 2006-07-13 | Intel Corporation | A mechanism for instruction set based thread execution on a plurality of instruction sequencers |
JP2007102781A (ja) * | 2005-09-30 | 2007-04-19 | Intel Corp | 持続的なユーザレベルスレッド用の装置、システムおよび方法 |
-
2007
- 2007-10-19 JP JP2007273186A patent/JP4978914B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006074024A2 (en) * | 2004-12-30 | 2006-07-13 | Intel Corporation | A mechanism for instruction set based thread execution on a plurality of instruction sequencers |
JP2007102781A (ja) * | 2005-09-30 | 2007-04-19 | Intel Corp | 持続的なユーザレベルスレッド用の装置、システムおよび方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011134318A (ja) * | 2009-12-22 | 2011-07-07 | Intel Corp | 複数のデータ・エレメントの収集及び分散 |
CN106716983A (zh) * | 2015-02-10 | 2017-05-24 | 京瓷办公信息系统株式会社 | 通信终端设备以及通信系统 |
JPWO2016129179A1 (ja) * | 2015-02-10 | 2017-06-22 | 京セラドキュメントソリューションズ株式会社 | 通信端末装置、及び通信システム |
US10279611B2 (en) | 2015-02-10 | 2019-05-07 | Kyocera Document Solutions Inc. | Communication terminal device and communication system |
CN106716983B (zh) * | 2015-02-10 | 2019-06-18 | 京瓷办公信息系统株式会社 | 通信终端设备以及通信系统 |
Also Published As
Publication number | Publication date |
---|---|
JP4978914B2 (ja) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7768518B2 (en) | Enabling multiple instruction stream/multiple data stream extensions on microprocessors | |
Hedayati et al. | Hodor:{Intra-Process} isolation for {High-Throughput} data plane libraries | |
US8689215B2 (en) | Structured exception handling for application-managed thread units | |
US8380907B2 (en) | Method, system and computer program product for providing filtering of GUEST2 quiesce requests | |
US9785506B2 (en) | Reducing likelihood of concurrency error in virtualized computing environment | |
US6996698B2 (en) | Blocking processing restrictions based on addresses | |
US9626187B2 (en) | Transactional memory system supporting unbroken suspended execution | |
KR100624668B1 (ko) | 가상 머신 모니터와 게스트 운영 체제 간의 주소 공간 충돌을 해결하는 방법 | |
US7530067B2 (en) | Filtering processor requests based on identifiers | |
US7356735B2 (en) | Providing support for single stepping a virtual machine in a virtual machine environment | |
US8140834B2 (en) | System, method and computer program product for providing a programmable quiesce filtering register | |
EP1630670A2 (en) | Virtual machine environment in a computer system | |
Varanasi | Implementing Hardware-supported Virtualization in OKL4 on ARM | |
US11301283B1 (en) | Virtualization extension modules | |
EP0588473B1 (en) | Method and apparatus for emulating the environment of a microprocessor | |
US7552434B2 (en) | Method of performing kernel task upon initial execution of process at user level | |
NL2030804B1 (en) | Flexible return and event delivery | |
JP4978914B2 (ja) | マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム | |
GB2532777A (en) | System error handling in a data processing apparatus | |
CN113474754A (zh) | 有条件退让给管理程序指令 | |
US20230315444A1 (en) | Synchronous microthreading | |
EP4254177A1 (en) | Synchronous microthreading | |
US20060122821A1 (en) | Method for detecting and processing sensitive non-privileged processor instructions in a virtual machine computer system | |
JP2012108938A (ja) | コンピュータのメモリを参照する方法およびコンピュータ | |
Maeda | Kernel korner: kernel mode Linux for AMD64 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100611 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100615 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100915 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110607 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110829 |
|
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: 20120321 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120409 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150427 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |