JP4533713B2 - 情報処理装置およびデータ転送制御方法 - Google Patents
情報処理装置およびデータ転送制御方法 Download PDFInfo
- Publication number
- JP4533713B2 JP4533713B2 JP2004288217A JP2004288217A JP4533713B2 JP 4533713 B2 JP4533713 B2 JP 4533713B2 JP 2004288217 A JP2004288217 A JP 2004288217A JP 2004288217 A JP2004288217 A JP 2004288217A JP 4533713 B2 JP4533713 B2 JP 4533713B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- direct memory
- memory access
- access controller
- controller
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Bus Control (AREA)
Description
David A. Patterson and John L. Hennessy,「Computer Architecture A Quantitative Approach Second Edition」,Morgan Kaufmann Publishers Inc.,1996年6月1日,p.501−504,FIGURE 6.15
・Up(1)領域114B:第1のユーザプロセス
・Up(2)領域114C:第2のユーザプロセス
また、特権プロセス、第1のユーザプロセスおよび第2のユーザプロセスには、I/Oメモリ118上の互いに異なる領域もそれぞれ割り当てられている。I/Oメモリ118上に割り当てられた領域とその領域を使用するプロセスとの関係は次の通りである。
・Up領域(1)118B:第1のユーザプロセス
・Up領域(2)118C:第2のユーザプロセス
Kp領域114AおよびKp領域118Aは、特権プロセスのみが使用可能である。Up領域(1)114Bおよび118Bは、第1のユーザプロセスがアクセス可能な領域である。Up領域(2)114Cおよび118Cは、第2のユーザプロセスがアクセス可能な領域である。
I/Oデバイス135とメモリ114,118との間のDMA転送:第1のユーザプロセス
I/Oデバイス145とメモリ114,118との間のDMA転送:第2のユーザプロセス
この場合、C/S124の操作は特権プロセスのみに許可される。つまり、C/S124は特権プロセスがアクセス可能なアドレス空間にマッピングされる。
Claims (9)
- 複数のプロセスを並列に実行可能な情報処理において、
特権モードとユーザモードとを有するプロセッサと、
メモリと、
前記ユーザモード上で動作するユーザプロセスがアクセス可能なアドレス空間にマッピングされた第1レジスタおよび前記特権モード上で動作する特権プロセスがアクセス可能なアドレス空間にマッピングされた第2レジスタを有し、I/Oデバイスを制御するとともに、I/Oバスを介して前記メモリに接続されるI/Oコントローラと、
前記I/Oコントローラに設けられ、前記ユーザプロセスによって前記第1レジスタに設定されるデータ転送制御情報に基づいて、前記I/Oデバイスと前記メモリとの間のデータ転送を前記ユーザプロセスが実行する直接メモリアクセスコントローラと、
前記I/Oコントローラに設けられ、前記直接メモリアクセスコントローラと前記I/Oバスとの間に位置し、前記直接メモリアクセスコントローラから出力されるアドレスと前記特権プロセスによって前記第2レジスタに設定されるアクセス制御情報に基づいて前記直接メモリアクセスコントローラのデータ転送動作を制限し、前記ユーザプロセスがアクセス可能な前記メモリ上の所定領域以外の他の領域が前記直接メモリアクセスコントローラによってアクセスされることを禁止するアクセス制御部とを具備することを特徴とする情報処理装置。 - 前記アクセス制御部は、前記直接メモリアクセスコントローラのデータ転送動作を制限するために前記直接メモリアクセスコントローラから出力されるアドレスを監視する手段を含むことを特徴とする請求項1記載の情報処理装置。
- 前記アクセス制御情報は、前記所定領域に対応するアドレス範囲を指定するアドレス情報を含み、
前記アクセス制御部は、前記直接メモリアクセスコントローラから出力されるアドレスを監視し、前記アドレスが前記所定領域に対応するアドレス範囲内に属するか否かを判別する手段と、前記直接メモリアクセスコントローラから出力されるアドレスが前記所定領域に対応するアドレス範囲内に属さない場合、前記直接メモリアクセスコントローラによるデータ転送動作の実行を禁止する手段とを含むことを特徴とする請求項1記載の情報処理装置。 - 前記アクセス制御情報は、前記所定領域に対応するアドレス範囲を指定するアドレス情報を含み、
前記アクセス制御部は、前記直接メモリアクセスコントローラから出力されるアドレスを監視し、前記アドレスが前記所定領域に対応するアドレス範囲内に属するか否かを判別する手段と、前記直接メモリアクセスコントローラから出力されるアドレスが前記所定領域に対応するアドレス範囲内に属さない場合、前記直接メモリアクセスコントローラによるデータ転送動作の実行を禁止する手段と、前記データ転送動作の実行が禁止された場合、前記直接メモリアクセスコントローラから出力されるアドレスを前記特権プロセスに通知するために、前記アドレスを前記第2レジスタに保存する手段とを含むことを特徴とする請求項1記載の情報処理装置。 - 複数のプロセスを並列に実行可能な情報処理において、
特権モードとユーザモードとを有するプロセッサと、
メモリと、
前記ユーザモード上で動作する第1のユーザプロセスがアクセス可能なアドレス空間にマッピングされた第1レジスタおよび前記特権モード上で動作する特権プロセスがアクセス可能なアドレス空間にマッピングされた第2レジスタを有し、第1のI/Oデバイスを制御するとともに、I/Oバスを介して前記メモリに接続される第1のI/Oコントローラと、
前記ユーザモード上で動作する第2のユーザプロセスからアクセス可能なアドレス空間にマッピングされた第3レジスタおよび前記特権プロセスからアクセス可能なアドレス空間にマッピングされた第4レジスタを有し、第2のI/Oデバイスを制御するとともに、前記I/Oバスを介して前記メモリに接続される第2のI/Oコントローラと、
前記第1のI/Oコントローラに設けられ、前記第1のユーザプロセスによって前記第1レジスタに設定されるデータ転送制御情報に基づいて、前記第1のI/Oデバイスと前記メモリとの間のデータ転送を前記第1のユーザプロセスが実行する第1の直接メモリアクセスコントローラと、
前記第1のI/Oコントローラに設けられ、前記第1の直接メモリアクセスコントローラと前記I/Oバスとの間に位置し、前記第1の直接メモリアクセスコントローラから出力されるアドレスと前記特権プロセスによって前記第2レジスタに設定される第1のアクセス制御情報に基づいて前記第1の直接メモリアクセスコントローラのデータ転送動作を制限し、前記第1のユーザプロセスがアクセス可能な前記メモリ上の第1領域以外の他の領域が前記第1の直接メモリアクセスコントローラによってアクセスされることを禁止する第1のアクセス制御部と、
前記第2のI/Oコントローラに設けられ、前記第2のユーザプロセスによって前記第3レジスタに設定されるデータ転送制御情報に基づいて、前記第2のI/Oデバイスと前記メモリとの間のデータ転送を前記第2のユーザプロセスが実行する第2の直接メモリアクセスコントローラと、
前記第2のI/Oコントローラに設けられ、前記第2の直接メモリアクセスコントローラと前記I/Oバスとの間に位置し、前記第2の直接メモリアクセスコントローラから出力されるアドレスと前記特権プロセスによって前記第4レジスタに設定される第2のアクセス制御情報に基づいて前記第2の直接メモリアクセスコントローラのデータ転送動作を制限し、前記第2のユーザプロセスがアクセス可能な前記メモリ上の第2領域以外の他の領域が前記第2の直接メモリアクセスコントローラによってアクセスされることを禁止する第2のアクセス制御部とを具備することを特徴とする情報処理装置。 - 前記第1のユーザプロセスは前記第1のI/Oデバイスを制御するための処理を実行し、前記第2のユーザプロセスは前記第2のI/Oデバイスを制御するための処理を実行することを特徴とする請求項5記載の情報処理装置。
- 前記第1のアクセス制御情報は、前記第1領域に対応するアドレス範囲を指定するアドレス情報を含み、
前記第1のアクセス制御部は、前記第1の直接メモリアクセスコントローラから出力されるアドレスを監視し、前記アドレスが前記第1領域に対応するアドレス範囲内に属するか否かを判別する手段と、前記第1の直接メモリアクセスコントローラから出力されるアドレスが前記第1領域に対応するアドレス範囲内に属さない場合、前記第1の直接メモリアクセスコントローラによるデータ転送動作の実行を禁止する手段とを含むことを特徴とする請求項5記載の情報処理装置。 - 前記第2のアクセス制御情報は、前記第2領域に対応するアドレス範囲を指定するアドレス情報を含み、
前記第2のアクセス制御部は、前記第2の直接メモリアクセスコントローラから出力されるアドレスを監視し、前記アドレスが前記第2領域に対応するアドレス範囲内に属するか否かを判別する手段と、前記第2の直接メモリアクセスコントローラから出力されるアドレスが前記第2領域に対応するアドレス範囲内に属さない場合、前記第2の直接メモリアクセスコントローラによるデータ転送動作の実行を禁止する手段とを含むことを特徴とする請求項5記載の情報処理装置。 - I/Oコントローラによって実行されるI/Oデバイスとメモリとの間のデータ転送を制御するデータ転送制御方法であって、前記I/Oコントローラは、I/Oバスを介して前記メモリに接続され、前記データ転送をユーザプロセスが実行する直接メモリアクセスコントローラと、前記ユーザプロセスがアクセス可能なアドレス空間にマッピングされた第1レジスタと、特権プロセスがアクセス可能なアドレス空間にマッピングされた第2レジスタとを含み、
前記第2レジスタにアクセス制御情報を設定する処理を前記特権プロセスによって実行するステップと、
前記直接メモリアクセスコントローラの動作を制御するデータ転送制御情報を前記第1レジスタに設定する処理を前記ユーザプロセスによって実行するステップと、
前記直接メモリアクセスコントローラから出力されるアドレスを監視し、前記アドレスが前記ユーザプロセスによりアクセス可能な前記メモリ上の所定領域に対応するアドレス範囲内に属するか否かを前記アクセス制御情報に基づいて判別するステップと、
前記直接メモリアクセスコントローラから出力されるアドレスが前記所定領域に対応するアドレス範囲内に属さない場合、前記直接メモリアクセスコントローラによるデータ転送動作の実行を禁止するステップとを具備することを特徴とするデータ転送制御方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004288217A JP4533713B2 (ja) | 2004-09-30 | 2004-09-30 | 情報処理装置およびデータ転送制御方法 |
| US11/237,972 US7523229B2 (en) | 2004-09-30 | 2005-09-29 | Memory protection during direct memory access |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004288217A JP4533713B2 (ja) | 2004-09-30 | 2004-09-30 | 情報処理装置およびデータ転送制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006099702A JP2006099702A (ja) | 2006-04-13 |
| JP4533713B2 true JP4533713B2 (ja) | 2010-09-01 |
Family
ID=36126990
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004288217A Expired - Fee Related JP4533713B2 (ja) | 2004-09-30 | 2004-09-30 | 情報処理装置およびデータ転送制御方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7523229B2 (ja) |
| JP (1) | JP4533713B2 (ja) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4698285B2 (ja) * | 2005-05-19 | 2011-06-08 | 富士通株式会社 | 情報処理装置、情報処理方法及びコンピュータプログラム |
| JP2007012021A (ja) * | 2005-06-01 | 2007-01-18 | Sony Corp | 情報処理装置および情報処理方法、並びにプログラム |
| JP4766498B2 (ja) | 2008-12-24 | 2011-09-07 | 株式会社ソニー・コンピュータエンタテインメント | ユーザレベルdmaとメモリアクセス管理を提供する方法と装置 |
| US8615614B2 (en) | 2011-11-30 | 2013-12-24 | Freescale Semiconductor, Inc. | Message passing using direct memory access unit in a data processing system |
| US9311458B2 (en) * | 2011-12-21 | 2016-04-12 | Intel Corporation | Secure direct memory access |
| US9092647B2 (en) | 2013-03-07 | 2015-07-28 | Freescale Semiconductor, Inc. | Programmable direct memory access channels |
| FR3019339B1 (fr) | 2014-03-25 | 2016-04-01 | Commissariat Energie Atomique | Procede de transfert de donnees entre taches temps reel utilisant un controleur memoire dma |
| CN104182264B (zh) * | 2014-09-03 | 2017-07-11 | 福州瑞芯微电子股份有限公司 | 一种eMMC的开机优化方法及其装置 |
| US10599208B2 (en) * | 2015-09-08 | 2020-03-24 | Toshiba Memory Corporation | Memory system and controller |
| JP6274623B2 (ja) * | 2016-03-24 | 2018-02-07 | インテル・コーポレーション | 安全なダイレクトメモリアクセス |
| CN111752604A (zh) * | 2019-03-27 | 2020-10-09 | 阿里巴巴集团控股有限公司 | 一种具有多个运行模式的处理器 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62191950A (ja) * | 1986-02-18 | 1987-08-22 | Fujitsu Ltd | Cpuシステム |
| JP2628079B2 (ja) * | 1988-11-25 | 1997-07-09 | 三菱電機株式会社 | マルチプロセサシステムにおけるダイレクト・メモリ・アクセス制御装置 |
| US5347634A (en) * | 1990-03-15 | 1994-09-13 | Hewlett-Packard Company | System and method for directly executing user DMA instruction from user controlled process by employing processor privileged work buffer pointers |
| JPH06274450A (ja) * | 1993-03-23 | 1994-09-30 | Fuji Xerox Co Ltd | データ転送システム |
| JP3790323B2 (ja) * | 1997-04-16 | 2006-06-28 | 株式会社ルネサステクノロジ | データ転送制御装置、マイクロコンピュータ及びデータ処理システム |
| JP2001297054A (ja) * | 2000-04-11 | 2001-10-26 | Sharp Corp | Dmaの転送逸脱防止方法及びdmaコントローラ |
| US7073173B1 (en) * | 2000-12-04 | 2006-07-04 | Microsoft Corporation | Code and thread differential addressing via multiplex page maps |
| JP2003281076A (ja) * | 2002-03-27 | 2003-10-03 | Nec Microsystems Ltd | Dmaコントローラの不正アクセス検出装置、不正アクセス検出方法およびそのプログラム |
-
2004
- 2004-09-30 JP JP2004288217A patent/JP4533713B2/ja not_active Expired - Fee Related
-
2005
- 2005-09-29 US US11/237,972 patent/US7523229B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2006099702A (ja) | 2006-04-13 |
| US20060075158A1 (en) | 2006-04-06 |
| US7523229B2 (en) | 2009-04-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5318964B2 (ja) | セキュアな埋め込みコンテナの実行のためのプロセッサの拡張 | |
| CN109726549B (zh) | 用于采用处理器沙箱支持的不可信代码执行的技术 | |
| TWI603223B (zh) | 記憶體保護電路、處理裝置、及記憶體保護方法 | |
| US8898666B2 (en) | Virtual machine system and virtual machine system control method for controlling program execution on a plurality of processors that have a plurality of privileged modes | |
| JP5242747B2 (ja) | システム管理割り込みを再命令し、仮想マシンコンテナを生成することによる、信頼性のないシステム管理コードに対する保護方法 | |
| JP5571201B2 (ja) | ハードウェアモードおよびセキュリティフラグに基づく、読み出される命令用のメモリエリアの制限 | |
| JP4345630B2 (ja) | 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム | |
| JP2007220086A (ja) | 入出力制御装置、入出力制御システム及び入出力制御方法 | |
| JP4533713B2 (ja) | 情報処理装置およびデータ転送制御方法 | |
| JP2002099436A (ja) | コンピュータシステムおよびそのレジューム処理方法 | |
| CN112749397A (zh) | 一种系统和方法 | |
| JP7569307B2 (ja) | 例外原因イベントをハンドリングするための装置及び方法 | |
| JP2009157542A (ja) | 情報処理装置及びそのスタックポインタ更新方法 | |
| JP6921800B2 (ja) | セキュアモード状態のデータ・アクセス・トラッキング | |
| JP2013161299A (ja) | 情報処理装置、インタフェースアクセス方法 | |
| JP2974577B2 (ja) | コンピュータシステム | |
| CN103778099A (zh) | 信息处理设备 | |
| CN102428471A (zh) | 从系统管理模式确定信任级别的系统和方法 | |
| JP6198858B2 (ja) | 計算機、及び、ハイパバイザによる資源スケジューリング方法 | |
| JP2009134565A (ja) | 仮想計算機システム及び仮想計算機システムの制御方法 | |
| CN117272412B (zh) | 中断控制寄存器保护方法、装置、计算机设备及存储介质 | |
| JP2007334432A (ja) | 情報処理装置及びそのアクセス制御方法 | |
| JP2017208058A (ja) | 情報処理装置 | |
| JP2003242026A (ja) | 情報処理システムおよびプログラム実行モード制御方法 | |
| JP2006338426A (ja) | 計算機システム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070410 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100114 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100126 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100329 |
|
| 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: 20100518 |
|
| 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: 20100614 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130618 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |