JP2011516972A - 複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 - Google Patents
複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 Download PDFInfo
- Publication number
- JP2011516972A JP2011516972A JP2011503029A JP2011503029A JP2011516972A JP 2011516972 A JP2011516972 A JP 2011516972A JP 2011503029 A JP2011503029 A JP 2011503029A JP 2011503029 A JP2011503029 A JP 2011503029A JP 2011516972 A JP2011516972 A JP 2011516972A
- Authority
- JP
- Japan
- Prior art keywords
- subprocess
- processes
- sub
- context
- calling
- 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
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
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44557—Code layout in executable memory
- G06F9/44563—Sharing
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Advance Control (AREA)
- Telephone Function (AREA)
Abstract
Description
Claims (20)
- 複数のプロセスにわたって複数のサブプロセスを共有することを可能にするコンピュータプログラムを格納するコンピュータ読み取り可能な媒体、該媒体は、下記を具備する:
複数のプロセスとサブプロセスとを実行するオペレーティングシステム・コードセグメント、該サブプロセスは該複数のプロセスによって共有されることが可能であり、該サブプロセスはそれ自体のコンテキストを有する。 - 各プロセスについてプロセス制御ブロックをさらに具備しており、該プロセス制御ブロックは該それぞれのプロセスによっていったん呼び出された該サブプロセスの表示を格納する、請求項1に記載の媒体。
- いずれの複数のプロセスが該サブプロセスを呼び出したかの表示を格納するグローバルデータ構造をさらに具備する、請求項2に記載の媒体。
- 該サブプロセスは複数のコーリングプロセスオペランドのためのアドレスオフセットを格納しており、該アドレスオフセットは、該複数のコーリングプロセスオペランドに関してコーリングプロセス・コンテキスト内にアドレス空間を定義するために、ベースアドレスに追加される、請求項1に記載の媒体。
- 該サブプロセスは非リエントラントである、請求項1に記載の媒体。
- 該サブプロセスは単一のプロセス内で宣言されるのみである、請求項1に記載の媒体。
- 該呼び出されたサブプロセスの親プロセスとして該コーリングプロセスをセットする表示を格納するサブプロセス関連データ構造をさらに具備する、請求項1に記載の媒体。
- 下記を具備するモバイルデバイス:
プログラムカウンタ(PC)相対アドレッシングのためのハードウェアサポートを欠いたプロセッサ、該プロセッサは複数のプロセスにわたって複数のサブプロセスを共有することを可能にするオペレーティングシステムを実行し、各サブプロセスはそれ自体のコンテキストを有する。 - 該プロセッサはデジタル信号プロセッサ(DSP)を具備する、請求項8に記載のモバイルデバイス。
- 該オペレーティングシステムはリアルタイム・オペレーティングシステムを具備する、請求項8に記載のモバイルデバイス。
- 該複数のサブプロセスは非リエントラントである、請求項8に記載のモバイルデバイス。
- 該オペレーティングシステムは該共有することを可能にする複数のデータ構造を具備しており、該複数のデータ構造のうちの少なくとも1つは呼び出されたサブプロセスをいずれのプロセスがコールしたかの表示を格納する、請求項8に記載のモバイルデバイス。
- 複数のプロセスにわたってサブプロセスを共有する方法、該方法は、下記を具備する:
複数のコーリングプロセスからサブプロセスを呼び出すこと、該サブプロセスはそれ自体のコンテキストを有する、
該サブプロセスの該コンテキストに複数のハードウェアベースおよび長さレジスタをセットすること、
及び、各コーリングプロセスのコンテキストに複数のハードウェアベースおよび長さレジスタをセットすること。 - 第1のプロセス内でのみ該サブプロセスを宣言することをさらに具備する、請求項13に記載の方法。
- ベースアドレスと固定されたオフセットとを使用して、各コーリングプロセスの該コンテキスト内の該複数のオペランドにアクセスすることをさらに具備する、請求項13に記載の方法。
- 該サブプロセスが呼び出されたことを示すために各コーリングプロセスのプロセス制御ブロックをアップデートすることをさらに具備する、請求項13に記載の方法。
- 該コーリングプロセスが該サブプロセスの親であることを示すためにグローバルデータ構造をアップデートすることをさらに具備する、請求項16に記載の方法。
- 該コーリングプロセスを該呼び出されたサブプロセスの親として示すためにサブプロセス関連データ構造をアップデートすることをさらに具備する、請求項16に記載の方法。
- 該サブプロセスをプリエンプトすることと、
該サブプロセスの該親を決定することに一部よって、該サブプロセスに復帰することと、をさらに具備する、請求項18に記載の方法。 - 該サブプロセスをプリエンプトすることは、内部メモリ中の該サブプロセスの少なくとも一部分をスワップアウトさせることをさらに具備する、請求項19に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/061,607 | 2008-04-02 | ||
US12/061,607 US9015727B2 (en) | 2008-04-02 | 2008-04-02 | Sharing operating system sub-processes across tasks |
PCT/US2009/037933 WO2009123873A1 (en) | 2008-04-02 | 2009-03-23 | Sharing operating system sub-processes across tasks |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013134145A Division JP5678133B2 (ja) | 2008-04-02 | 2013-06-26 | 複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011516972A true JP2011516972A (ja) | 2011-05-26 |
JP5307228B2 JP5307228B2 (ja) | 2013-10-02 |
Family
ID=40668438
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011503029A Expired - Fee Related JP5307228B2 (ja) | 2008-04-02 | 2009-03-23 | 複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 |
JP2013134145A Expired - Fee Related JP5678133B2 (ja) | 2008-04-02 | 2013-06-26 | 複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013134145A Expired - Fee Related JP5678133B2 (ja) | 2008-04-02 | 2013-06-26 | 複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9015727B2 (ja) |
EP (1) | EP2281238A1 (ja) |
JP (2) | JP5307228B2 (ja) |
KR (1) | KR101284099B1 (ja) |
CN (2) | CN103324529B (ja) |
TW (1) | TW201003525A (ja) |
WO (1) | WO2009123873A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102469035B (zh) * | 2010-11-05 | 2016-01-20 | 腾讯科技(深圳)有限公司 | 跨进程通信的方法和装置 |
US8868886B2 (en) | 2011-04-04 | 2014-10-21 | International Business Machines Corporation | Task switch immunized performance monitoring |
US9342432B2 (en) | 2011-04-04 | 2016-05-17 | International Business Machines Corporation | Hardware performance-monitoring facility usage after context swaps |
US20130055033A1 (en) | 2011-08-22 | 2013-02-28 | International Business Machines Corporation | Hardware-assisted program trace collection with selectable call-signature capture |
US9705985B1 (en) * | 2013-03-18 | 2017-07-11 | Marvell International Ltd. | Systems and methods for cross protocol automatic sub-operation scheduling |
US10048976B2 (en) | 2013-11-29 | 2018-08-14 | New Jersey Institute Of Technology | Allocation of virtual machines to physical machines through dominant resource assisted heuristics |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09198255A (ja) * | 1996-01-02 | 1997-07-31 | Internatl Business Mach Corp <Ibm> | オペレーティング・システムに影響を与えないエミュレーション・コンテキストの保管と復元を行う方法およびシステム |
JPH09288586A (ja) * | 1995-09-29 | 1997-11-04 | Informix Software Inc | ダイナミック・ライブラリ・タスク切替え |
JP2007265228A (ja) * | 2006-03-29 | 2007-10-11 | Fujitsu Ten Ltd | 共有プログラムおよび情報機器 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4928237A (en) * | 1987-03-27 | 1990-05-22 | International Business Machines Corp. | Computer system having mode independent addressing |
US6286025B1 (en) * | 1994-12-09 | 2001-09-04 | International Business Machines Corporation | Method and system of process identification by user defined process variables |
US5727211A (en) * | 1995-11-09 | 1998-03-10 | Chromatic Research, Inc. | System and method for fast context switching between tasks |
US6711673B1 (en) * | 2000-01-03 | 2004-03-23 | Advanced Micro Devices, Inc. | Using a model specific register as a base I/O address register for embedded I/O registers in a processor |
US7272664B2 (en) * | 2002-12-05 | 2007-09-18 | International Business Machines Corporation | Cross partition sharing of state information |
US20040123270A1 (en) | 2002-12-23 | 2004-06-24 | Motorola, Inc. | Method and apparatus for shared libraries on mobile devices |
KR100518584B1 (ko) | 2003-07-12 | 2005-10-04 | 삼성전자주식회사 | 공유 라이브러리 시스템 및 상기 시스템 구축 방법 |
GB0316532D0 (en) | 2003-07-15 | 2003-08-20 | Transitive Ltd | Method and apparatus for partitioning code in program code conversion |
US7653684B2 (en) | 2004-12-03 | 2010-01-26 | Microsoft Corporation | Enabling inter-subsystem resource sharing |
US7543126B2 (en) * | 2005-08-31 | 2009-06-02 | International Business Machines Corporation | Apparatus, system, and method for implementing protected virtual memory subcontexts |
TW200739421A (en) | 2006-04-07 | 2007-10-16 | Sunplus Technology Co Ltd | Method of dynamically linking function database software devices and sharing static linked source codes with main application program |
US7793055B2 (en) * | 2006-08-04 | 2010-09-07 | Apple Inc. | Transferring memory buffers between multiple processing entities |
-
2008
- 2008-04-02 US US12/061,607 patent/US9015727B2/en not_active Expired - Fee Related
-
2009
- 2009-03-23 CN CN201310162859.8A patent/CN103324529B/zh not_active Expired - Fee Related
- 2009-03-23 JP JP2011503029A patent/JP5307228B2/ja not_active Expired - Fee Related
- 2009-03-23 EP EP09728955A patent/EP2281238A1/en not_active Ceased
- 2009-03-23 KR KR1020107024643A patent/KR101284099B1/ko not_active IP Right Cessation
- 2009-03-23 CN CN200980116360.5A patent/CN102016802B/zh not_active Expired - Fee Related
- 2009-03-23 WO PCT/US2009/037933 patent/WO2009123873A1/en active Application Filing
- 2009-03-27 TW TW98110305A patent/TW201003525A/zh unknown
-
2013
- 2013-06-26 JP JP2013134145A patent/JP5678133B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09288586A (ja) * | 1995-09-29 | 1997-11-04 | Informix Software Inc | ダイナミック・ライブラリ・タスク切替え |
JPH09198255A (ja) * | 1996-01-02 | 1997-07-31 | Internatl Business Mach Corp <Ibm> | オペレーティング・システムに影響を与えないエミュレーション・コンテキストの保管と復元を行う方法およびシステム |
JP2007265228A (ja) * | 2006-03-29 | 2007-10-11 | Fujitsu Ten Ltd | 共有プログラムおよび情報機器 |
Also Published As
Publication number | Publication date |
---|---|
US20090254919A1 (en) | 2009-10-08 |
EP2281238A1 (en) | 2011-02-09 |
US9015727B2 (en) | 2015-04-21 |
CN103324529B (zh) | 2016-08-03 |
CN102016802A (zh) | 2011-04-13 |
KR101284099B1 (ko) | 2013-07-10 |
TW201003525A (en) | 2010-01-16 |
JP5678133B2 (ja) | 2015-02-25 |
CN103324529A (zh) | 2013-09-25 |
WO2009123873A1 (en) | 2009-10-08 |
JP2013232215A (ja) | 2013-11-14 |
JP5307228B2 (ja) | 2013-10-02 |
KR20100127309A (ko) | 2010-12-03 |
CN102016802B (zh) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5678133B2 (ja) | 複数のタスクにわたる複数のオペレーティングシステム・サブプロセスの共有 | |
US10592218B2 (en) | Dynamic data and compute resource elasticity | |
US9658890B2 (en) | Runtime agnostic representation of user code for execution with selected execution runtime | |
US8185895B2 (en) | Method, apparatus and program storage device for providing an anchor pointer in an operating system context structure for improving the efficiency of accessing thread specific data | |
US10585653B2 (en) | Declarative programming model with a native programming language | |
US20090328058A1 (en) | Protected mode scheduling of operations | |
US9063805B2 (en) | Method and system for enabling access to functionality provided by resources outside of an operating system environment | |
CN103793255A (zh) | 可配置的多主模式多os内核实时操作系统架构与启动方法 | |
US8151266B2 (en) | Operating system fast run command | |
US9298460B2 (en) | Register management in an extended processor architecture | |
US11144329B2 (en) | Processor microcode with embedded jump table | |
US9110793B2 (en) | Inner process | |
Yang et al. | A RISC-V On-chip Operating System Based on Rust | |
WO2023219692A1 (en) | Externally-initiated runtime type extension | |
Mahboubi et al. | . NET API Wrapping for Existing C++ Haptic APIs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120906 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120925 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20121225 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130107 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130125 |
|
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: 20130528 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130626 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |