TWI273495B - Information processing device, process control method, and computer program - Google Patents

Information processing device, process control method, and computer program Download PDF

Info

Publication number
TWI273495B
TWI273495B TW094129104A TW94129104A TWI273495B TW I273495 B TWI273495 B TW I273495B TW 094129104 A TW094129104 A TW 094129104A TW 94129104 A TW94129104 A TW 94129104A TW I273495 B TWI273495 B TW I273495B
Authority
TW
Taiwan
Prior art keywords
processor
logical
guest
processing
sub
Prior art date
Application number
TW094129104A
Other languages
English (en)
Other versions
TW200611198A (en
Inventor
Daisuke Yokota
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of TW200611198A publication Critical patent/TW200611198A/zh
Application granted granted Critical
Publication of TWI273495B publication Critical patent/TWI273495B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

1273495 (1) 九、發明說明 【發明所屬之技術領域】 本發明係有關於資訊處理裝置、處理程序控制 以及電腦程式。更詳言之是有關於,在複數之邏輯 是共用資訊處理裝置中的資源而執行各種資料處理 當中’使得對於邏輯處理器對應之資源的存取性提 現高效率的資料處理之資訊處理裝置、處理程序控 ,以及電腦程式。 【先前技術】 在1個系統內搭載了複數作業系統(〇 s )的多 系統中’各〇 s係可以執行彼此互異的處理程序, 將系統上共通的硬體,亦即C P U或記憶體等,在 列上逐次切換地利用,而進行處理。 複數0 S的每個執行處理程序(工作)的排程 ,係藉由分割區管理軟體而執行。當1個系統內 OS ( α )與0S ( /3 )之2個作業系統時,若令os 的處理爲分割區A,令〇 s (石)的處理爲分割區Β 割區管理軟體係會決定分割區A與分割區b的執行 根據決定好的排程,分配硬體資源而執行各〇 S中 〇 揭露了多重〇 s型的系統中之工作管理的先前 例如有專利文獻1 。專利文獻i中,揭露了在複數 之個別上所執行的工作管理中,爲了讓緊急性高的 方法、 處理器 的構成 升,實 制方法 '重0S 並且是 時間系 ,·例如 並存了 (α ) ,則分 排程, 的處理 技術, 的 0S 處理優 -4- (2) 1273495 先處理所需之工作排程手法。 如前述,各種資料處理的執行主體係以分割區的方式 而被設定。具體而言,是設定了作爲系統內接受資源分配 之主體的邏輯分割區,對於邏輯分割區,將實體處理器單 元的使用時間、虛擬位址空間,甚至記憶體空間等各式各 樣的資源加以分配,而執行適用了所分配之資源的處理。 邏輯分割區中,設定有對應於任一實體處理器的邏輯性的 φ 處理器,執行以邏輯處理器爲基礎的資料處理。邏輯處理 器與實體處理器並非限於一對一的關係,有時1個邏輯處 理器是被建立對應至複數個實體處理器,也有時複數個邏 輯處理器是被建立對應至1個實體處理器。 當適用了邏輯處理器的複數處理被平行處理的時候, 實體處理器,係被複數的邏輯處理器予以排程而被使用。 亦即,複數之邏輯處理器,係以分時(time sharing)方 式進行實體處理器的使用。 Φ 例如圖1所示,當對1個實體處理器而分配了 1個邏 輯處理器的時候,亦即,邏輯處理器(甲)會佔有實體處 . 理器(1 )而利用,邏輯處理器(乙)會佔有實體處理器. _ ( 2 )而利用時,考察有關邏輯處理器(甲)之存取處理 的情形。 例如已被設定邏輯處理器(甲)的邏輯分割區所對應 的0S,試圖要對邏輯處理器(甲)進行存取。由於邏輯 處理器(甲)所正在佔有的實體處理器(1 )所保持的近 端儲存區領域等等,係作爲對應於被佔有利用之實體處理 (3) 1273495 器(1 )的領域而被映射至邏輯處理器(甲)所對應之邏 輯分割區的位址空間,因此對應於邏輯分割區的0S,總 是能夠對邏輯處理器(甲)進行存取。藉由對邏輯處理器 (甲)的存取,就可取得對應於邏輯處理器(甲)的近端 儲存區資訊等各種資訊。 可是,如圖2所示,當對1個實體處理器分配有複數 個邏輯處理器,執行分時處理的時候,如圖2所示的存取 φ A,在邏輯處理器(甲)正在適用實體處理器(1.).的時序 上,和上述處理同樣地,對應於邏輯分割區的0 S,雖然 可對邏輯處理器(甲)進行存取,但如圖2所示的存取B ,在邏輯處理器(甲)並非正在適用實體處理器(· 1 )的 時序上,邏輯處理器(甲)無法適用任何一個實體處理器 ,對應於實體處理器的近端儲存區領域等資訊,係未被映 射至對應於邏輯處理器(甲)的邏輯分割區的位址空間, 因此邏輯處理器(甲)的存取就變成不可執行。此時,邏 • 輯處理器(甲)就必須待機直到藉由分時而能利用實體處 理器的時間爲止,會導致資料處理發生延遲等問題-_ 〔專利文獻1〕特開2003 -3 45 6 1 2號公報 【發明內容】 〔發明所欲解決之課題〕 本發明係有鑑於上述問題點而硏發,目的在於提供一 種在複數之邏輯處理器是共用資訊處理裝置中的資源而執 行各種資料處理的構成當中,使得對於邏輯處理器對應之 -6- (4) 1273495 資源的存取性提升,實現高效率的資料處理之資訊處理裝 置、處理程序控制方法,以及電腦程式。 〔用以解決課題之手段〕 本發明之第1側面係 一種資訊處理裝置,係屬於將複數邏輯處理器藉由分 時(time sharing )而建立對應至實體處理器以執行資料 # 處理的資訊處理裝置,其特徵爲, 具有上下文管理部,其係將實體處理器是處於未被分 配之狀態的邏輯處理器對應之上下文(c ο n t e X t ),映射至 作爲該邏輯處理器之適用主體的邏輯分割區所對應的邏輯 分割區位址空間而加以保存。 再者’本發明之資訊處理裝置之一實施樣態中,前記 資訊處理裝置係具有:控制0 S,執行將複數邏輯處理器 藉由分時(time sharing )而建立對應至實體處理器之處 • 理;和客座OS ( Guest 0S ),其係被建立對應了作爲邏 輯處理器之適用主體的邏輯分割區;前記控制0S係構成 • 爲執行以下處理··根據從客座0 S對控制0 S的系統呼叫 _ ,而將該客座0S對應之邏輯分割區所適用之邏賴處理器 所對應之上下文,映射至前記客座0 S對應之邏輯分割區 位址空間而加以保存。 再者,本發明之資訊處理裝置之一實施樣態中,前記 控制0S係構成爲執行以下處理: 根據從客座0S對控 制〇S的系統呼叫,將前記客座0S對應之邏輯分割區所 -7 - (5) 1273495 適用之邏輯處理器,從作爲往實體處理器之對應建立處理 的分時處理對象中予以除外,並將前記邏輯處理器對應之 上下文,映射至前記邏輯分割區位址空間而加以保存。 再者,本發明之資訊處理裝置之一實施樣態中,前記 控制0 S係構成爲執行:把邏輯處理器視爲實體處理器之 分配對象的活動狀態,和不把邏輯處理器視爲實體處理器 之分配對象,的非活動狀態,之2狀態間的切換處理;且構 φ 成爲執行以下處理:根據從客座0 S對控制0 S的系統呼 叫,而將該客座0S對應之邏輯處理器設定成非活動狀態 ,而將該邏輯處理器對應之上下文,映射至前記邏輯分割 區位址空間而加以保存。 且特徵在於構成爲執行以下處理··根據從客座0S對 控制0S的系統呼叫,而將該客座0S對應之邏輯處理器 設定成非活動狀態,而將該邏輯處理器對應之上下文,映 射至前記邏輯分割區位址空間而加以保存。 ♦ 再者,本發明之資訊處理裝置之一實施樣態中,前記 控制0S係構成爲,根據從客座0S對控制0S的系統呼叫 . ,將已被設定成非活動狀態之前記客座0 S對應之邏輯處 ^ 理器再次設定成活動狀態,以將該邏輯處理器變回實體處 理器之分配對象。 再者,本發明之資訊處理裝置之一實施樣態中,前記 上下文管理部係構成爲:作爲邏輯處理器對應之上下文, 而執行包含邏輯處理器之暫存器、I/O埠、近端儲存區之 上下文的保存處理。 (6) 1273495 再者,本發明之第2側面係 一種處理程序控制方法,係屬於將複數邏輯處理器藉 由分時(time sharing )而建立對應至實體處理器以執行 資料處理的資訊處理裝置中的處理程序控制方法,其特徵 爲’具有· 邏輯處理器排程步驟,把邏輯處理器從實體處理器之 分配對象中予以除外;和 # 上下文保存步驟,其係執行以下處理··將已從實體處 理器之分配對象中除外的實體處理器對應之上下文,映射 *至作爲該邏輯處理器之適用主體的邏輯分.割區所對應.之邏 輯分割區位址空間而加以保存。 再者,在本發明之處理程序控制方法之一·實施樣態中 ,前記處理程序控制方法,更具有:系統呼叫輸出步驟, 將來自客座〇 s對控制0 S的系統呼叫予以輸出;前記邏 輯處理器排程步驟係執行以下處理:根據前記系統呼叫, • 把邏輯處理器從實體處理器之分配對象中加以除外;前記 上下文保存步驟係執行以下處理:根據前記系統呼叫,而 . 將客座0S對應之邏輯分割區所適用之邏輯處理器所對應 ^ 之上下文,映射至前記客座0S對應之邏輯分割區位址空 間而加以保存。 再者,本發明之處理程序控制方法之一實施樣態中, 則自5控制0 S係執丫了 :把邏輯處理器視爲貫體處理器之分 配對象的活動狀態,和不把邏輯處理器視爲實體處理器之 分配對象的非活動狀態,之2狀態間的切換處理;且執行 - 9- (7) 1273495 以下處理:根據從客座〇s對控制os的系統呼叫,而將 該客座0 S對應之邏輯處理器設定成非活動狀態,而將該 邏輯處理器對應之上下文,映射至前記邏輯分割區位址空 間而加以保存。 再者,本發明之處理程序控制方法之一實施樣態中, 前記控制0S係更進一步執行以下處理:根據從客座0S 對控制0S的系統呼叫,將已被設定成非活動狀態之前記 φ 客座0S對應之邏輯處理器再次設定成活動狀態,以將該 邏輯處理器變回實體處理器之分配對象。 再者,本發明之第3側面係 一種電腦程式,該程式係屬於在將複數邏輯處理器藉 由分時(time sharing)而建立對應至實體處理器以執行 資料處理的構成中,執行處理程序(process)控制處理電 腦程式,其特徵爲,具有: 邏輯處理器排程步驟,把邏輯處理器從實體處理器之 • 分配對象中予以除外;和 上下文保存步驟,其係執行以下處理:將已從實體處 , 理器之分配對象中除外的實體處理器對應之上下文,映射 ^ 至作爲該邏輯處理器之適用主體的邏輯分割區所對應之邏 輯分割區位址空間而加以保存。 此外,本發明的電腦程式係爲,例如,對於能夠執行 各種程式碼的泛用電腦系統,可藉由電腦可讀取之形式來 加以提供之記憶媒體、通訊媒體,例如CD或FD、M0等 記憶媒體,或者網路等通訊媒體,來進行提供的電腦程式 -10- 1273495
。藉由將此種程式以電腦可讀取的形式來進行提供 在電腦系統上實現相應於程式之處理。 本發明的其他目的、特徵或優點,根據後述之 的實施例或添附圖面,進行更詳細的說明即可理解 ,本說明書中所謂的系統,係爲複數裝置的邏輯集 ,各構成裝置並非侷限於只在同一框體內。 w 〔發明效果〕 若根據本發明之構成,則在將複數之邏輯子處 由分時而建立對應至實體子處理器以執行資料處理 當中,由於是構成爲可執行將非爲實體子處理器之 象的邏輯子處理器的上下文,映射至作爲邏輯子處 適用主體的邏輯分割區所對應之邏輯分割區位址空 以保存的處理,因此在邏輯子處理器並未被分配至 處理器的狀況下,該邏輯子處理器的上下文之取得 Φ 能,且可令對邏輯子處理器的存取、程式載入等之 不必等待邏輯子處理器被分配至實體子處理器的時 加以執行,而可令資料處理效率飛躍性地提升。 再者,若根據本發明之構成,則由於在上下文 係除了暫存器的內容以外,還將先前之上下文表中 含的例如近端儲存區領域、I/O埠之內容等等予以 放的構成,因此客座〇 s,係可參照暫存器之內容 儲存區之內容、I/O埠之內容,以作爲被設定成被 實體子處理器未使用狀態之非活動狀態的邏輯子處 ,就可 本發明 。此外 合構成 理器藉 的構成 分配對 理器之 間而加 實體子 變爲可 處理, 序就能 表中, 所未包 一倂存 、近端 非處於 理器所 -11 - (9) 1273495 對應之各種狀態資訊,可依照這些資訊而執行資源存取所 致資料處理,提升資料處理效率。 【實施方式】 以下將參照圖面,說明本發明之資訊處理裝置、處理 程序控制方法、以及電腦程式之細節。 首先,參照圖3,說明本發明之資訊處理裝置的硬體·. # 構成例。處理器模組101,係爲複數的處理器( Processing Unit )所構成的模組,會聽從 R〇M ( Read Only Memory) 104、HDD123等中所記憶之程式,會執行 聽令於作業系統(〇 S : 0 p e 1· a t i n g S y s t e m ) 、Ο S對應之應 用程式等各種程式的資料處理。關於處理器模組1 〇 1的細 節,將在後段參照圖4來說明。
圖形引擎102,係遵照從處理器模組1〇1所輸入的指 示,執行爲了向構成輸出部1 22之顯示元件進行晝面輸出 # 所需之資料生成、例如3 D圖形描繪處理。主記憶體( DRAM) 103中,存放著處理器模組101中所執行的程式 _ 或其執行上會適宜變化的參數等。這些元件係藉由 CPU 匯流排等所構成之主機匯流排1U而彼此連接。 主機匯流排π 1,係透過橋接器1 05,而連接至PCI (Peripheral Component Interconnect/Interface )匯流排等 之外部匯流排1 1 2。橋接器1 〇 5係執行在主機匯流排1 1 1 、外部匯流排2間,以及控制器1 06、記憶卡1 07、其 他元件之間的資料輸出入控制。 -12- (10) 1273495 輸入部1 2 1,係將來自鍵盤、指標器裝置等被使用者 操作之輸入裝置的輸入資訊進行輸入。輸出部122,係由 液晶顯示裝置或CRT ( Cathode Ray Tube )等之影像輸出 部和揚聲器等聲音輸出部所構成。 HDD ( Hard Disk Drive ) 123,係內藏硬碟,驅動硬 碟,以使藉由處理器模組1 〇 1所執行之程式或資訊進行記 錄或再生。 • 驅動器1 24,係將所被裝塡的磁碟、光碟、光磁碟、 或半導體記憶體等之可卸除式記錄媒體1 27中所記錄的資 料或程式予以讀出,將該資料或程式,供給至透過介面 113、外部掘流排112、橋接器105、及主機匯流排ln而 連接的主記憶體:(DRAM) 103。 連接埠 125,係連接外部連接機器128的埠,具有 USB、IEEE 1 3 94等之連接部。連接埠125,係透過介面13 、外部匯流排1 1 2、橋接器1 0 5及主機匯流排1 1 1,而連 # 接至處理器模組101等。通訊部126,係連接至網路,會 執行來自處理器模組101或HDD 123等所提供之資料的送 訊、來自外部之資料收訊。 其次,參照圖4,說明處理器模組的構成例。如圖4 所示,處理器模組200,係由:由複數主處理器所成之主 處理器群201、由複數子處理器所成之複數子處理器群 2 0 2〜2 0 η所構成。其個別都設有記憶體控制器、二次快取 。各子處理器群202〜20η之每一個例如係具有8個處理 益早兀’錯由縱t頁式架構(c r 〇 s s b a r a r c h i t e c t U r e ) ν或 -13- (11) 1273495 分封交換式網路等而連接。在主處理器群201的主處理器 的指示下,複數子處理器群202〜20η的1個以上之子處 理器會被選擇,執行所定的程式。 此外’本發明之裝置係具有複數的實體子處理器,其 軟體會將實體子處理器以分時(time sharing)方式而加 以多重化,而將邏輯處理器提供給OS。控制子處理器的 控制OS係在主處理器上動作。此外,本發明的方式係也 # 可應用在不具有主-子處理器這種主從關係的裝置上,也 可適用在不具有主-子處理器這種主從關係的多處理器機 器上。 各處理器群中所設置之記憶體流向控制器,係執行和 圖3所示的主記憶體]03之間的資料輸輸出入控制;二次 快取,係當作各處理器群中的處理用資料之記憶領域而被 利用。 其次,參照圖5,說明本發明之資訊處理裝置中的作 # 業系統(0 S )構成。本發明之資訊處理裝置係具有複數作 業系統(〇 s )共存的多重〇 S構成。具有如圖5所示的, . 帶有邏輯性之階層構成的複數作業系統(0 S )。 如圖5所示,在下位層中具有控制0 S 3 0 1、在上位層 中則設定有複數的客座OS3 02、3 03及系統控制OS3 04。 控制OS30 1,係除了實現系統控制OS3 04,同時還在參照 圖3、圖4說明過的處理器模組中實現了作爲用來執行各 處理程序之1個執行單位的邏輯分割區,並執行將系統內 的硬體資源(作爲計算機資源的主處理器、子處理器、記 - 14- (12) 1273495 憶體、裝置等)分配給各邏輯分割區之處理。 客座OS302、303,例如係爲遊戲OS或Windows (註 冊商標)、:Linux (註冊商標)等各種 OS ;是在控制 Ο S 3 0 1的控制之下運作的0 S。此外,圖5中,雖然只圖 示了客座OS302、303這2個客座OS,但客座OS係可設 定成任意數目。 客座 OS3 02、3 03,係在被控制 OS301及系統控制 φ OS3 04所設定而成之邏輯分割區內動作,會將分配給該邏 輯分割區的主處理器、子處理器、記憶體、裝置等硬體資 源予以適用而執行各種資料處理。 例如,客座 OS ( a ) 302,會將分配給被控制 OS301 及系統控制OS 3 04所設定而成之邏輯分割區2 0勺主處理器 、子處理器、記憶體、裝置等硬體資源加以適用,而執行 客座OS(a) 302對應之應用程式305。又,客座〇S(b )3 0 3 ’係將分配給邏輯分割區n的主處理器、子處理器 Φ 、記憶體、裝置等硬體資源加以適用,而執行客座0 S ( b )3 0 3對應之應用程式3 0 6。控制Ο S 3 0 1,係提供客座〇 s , 程式化介面以作爲客座〇 S執行上所必須之介面。 • 系統控制〇 s 3 0 4,係生成含有邏輯分割區管理資·訊的 系統控制程式3 0 7 ’將以系統控制程式3 0 7爲基礎的系統 之動作控制’連同控制Ο S 3 0 1 —倂加以執行。.系統控制程 式3 0 7,係爲使用系統控制程式·程式化介面,而控制系 統原則(policy )的程式。系統控制程式·程式化介面, 係從控制0 S 3 0 1提供給系統控制〇 s 3 0 4。例如資源分配的 -15- (13) 1273495 上限値的設定等等,提供以程式所致之有彈性自訂化所需 的手段,就是系統控制程式3 07所擔任的角色。 系統控制程式3 07係可使用系統控制程式·程式化介 面’而控制系統的行爲。例如,可作成新的邏輯分割區, 並在該邏輯分割區上啓動新的客座OS。在有複數客座〇S 動作的系統中,這些客座〇 S係按照系統控制程式中所預 先程式化的順序而被啓動。又,從客座Ο S所提出的資源 # 分配要求在由控制〇 S 3 0 1受理前會進行檢查,可依照系統 原則而加以修正,或將該要求直接拒絕。藉此,可以避免 特定的客座OS來獨佔資源。如此,將系統原則以程式方 式加以實現者,就是系統控制程式。 控制OS301係爲了系統控制OS3 04所需而分配.了特 別的邏輯分割區(在圖中係爲邏輯分割區1 )。控制 OS301,係在超管理器(hypervisor )模式下動作。客座 0S係在監督器(supervisor )模式下動作。系統控制0S # 、應用程式則是在疑難(problem )模式(使用者模式) 下動作。 产 邏輯分割區係爲接受系統內之資源分配的主體。例如 主記憶體1 03 (圖3參照)係被分割至數個領域,各個領 域的使用權是對邏輯分割區而給予。被分配給邏輯分割區 的資源種別係有以下: a )實體處理器單元使用時間 b) 虛擬位址空間 c) 在邏輯分割區內動作的程式所能存取的記憶體 -16- (14) 1273495 d )控制0 S用來管理邏輯分割區所需之記憶體 e )事件埠 f )裝置的使用權 g)快取分割區 h )匯流排使用權 如前述,客座OS係在邏輯分割區之中動作。客座os 係獨佔被分配給邏輯分割區的資源而執行各種資料處理。 # 許多情況下,在系統上動作的每個客座OS都有被作成1 個邏輯分割區。各邏輯分割區是被賦予了唯一的識別子。 系統控制OS 3 04,係將識別子建立對應至作爲邏輯分割區 管理資訊而生成之系統控制程式而加以管理。 邏輯分割區,係藉由控制OS301及系統控制OS304 而生成。爾生成的邏輯分割區不帶有任何資源,也沒有設 定使用資源的限制。邏輯分割區中具有活動狀態和結束狀 態這兩種狀態。剛生成的邏輯分割區係爲活動狀態。根據 Φ 在邏輯分割區內動作的客座〇 S之要求,邏輯分割區會遷 移至結束狀態,被分配給邏輯分割區的所有邏輯處理器皆 • 會停止。 . 此外,邏輯處理器,係被分配給邏輯分割區的邏輯上 的處理器,是對應於任一實體處理器,亦即,圖4所示之 處理器群內的處理器。只不過,邏輯處理器與實體處理器 並非限於一對一的關係,有時1個邏輯處理器是被建立對 應至複數個實體處理器’也有時複數個邏輯處理器是被建 立對應至1個實體處理器。邏輯處理器與實體處理器的對 -17- (15) 1273495 應建立,係由控制OS301來決定。 控制0S3 0 1,係具備限制各邏輯分割區所使用之資源 量的機能。客座0S 3 02、3 0 3是可不必和系統控制〇S3 04 進行通訊,就能針對要進行分配/釋放之資源限制其使用 量。 各邏輯分割區係具備控制訊號埠。邏輯分割區間的資 料交換/共享所必須之各種控制訊號會送到該璋。控制訊 籲 號的例子舉例如下。 a )邏輯分割區間事件埠的連接委託 b )邏輯分割區間訊息通道的連接委託 c )對共用記憶體區域的連接委託 來到各邏輯分割區的控制訊號係在控制訊,號埠中被排 成佇列。佇列的深度,只要是記憶體資源所能容許的範圍 內,則無限制。佇列排列上所必須之記憶體資源係從發送 了控制訊號的邏輯分割區中加以確保。爲了從該埠中取出 # 控制訊號,會呼叫客座0 S程式化界面。當控制訊號到達 空的控制訊號埠時,可將事件送訊至任意的事件璋。事件 . 埠之指定係可藉由呼叫客座OS程式化界面而進行。 _ 控制OS係對邏輯分割區,將實體子處理器予以抽象 化而成的邏輯子處理器,當作計算機資源(resource )而 給予。如前所述,由於實體子處理器和邏輯子處理器並非 ~對一的對應關係,因此數目上不需要相同。爲了實現這 點,控制〇 S必須要能因應所需而將一個實體子處理器建 立對應至複數個邏輯子處理器。 -18- (16) 1273495 若邏輯子處理器的數目是多餘實體子處理器的數目, 則控制0S係將實體子處理器予以分時(time sharing )而 進行處理。爲此,邏輯子處理器係有可能隨著時間經過而 重複動作停止和動作繼續。客座0S則可觀測這些狀態的 變化。 參照圖6,說明實體處理器與邏輯處理器的對應。圖 6中係圖示了主處理器401、實體子處理器411〜414之實 # 體處理器構成。 圖6的例子中,實體子處理器(2 )係藉由: 時間taO〜tal :邏輯子處理器(甲) 時間tal〜ta2 :邏輯子處理器(乙) 時間ta2〜ta3 :邏輯子處理器(丙) 時間ta3〜 :邏輯子處理器(甲) 的分時來分配各邏輯子處理器,在各個分配時間內, 各邏輯子處理器係執行適用了實體子處理器(2 )之處理 •。 又,實體子處理器(〇係藉由: . 時間tbo〜tbl :邏輯子處理器(乙) _ 時間tbl〜tb2 :邏輯子處理器(丙) 時間t b 2〜t b 3 :邏輯子處理器(甲) 時間t b 3〜 :邏輯子處理器(乙) 的分時來分配各邏輯子處理器,在各個分配時間內, 各邏輯子處理器係執行適用了實體子處理器(4 )之處理 -19- (17) 1273495 各邏輯子處理器是藉由分時而執行利用了實體子處理 器之處理,並且在下個分配期間中,爲了繼續適用了實體 子處理器之資料處理,因此必須要保持著資料處理中斷時 的硬體狀態等的狀態資訊。此狀態資訊中’係含有圖中所 示的各實體子處理器所對應之近端儲存區之內容、1/0埠 之內容、暫存器之內容。 邏輯子處理器被分配給實體子處理器的期間,係在該 φ 邏輯子處理器所對應之邏輯分割區位址空間內的領域上’ 是被映射有反映著邏輯子處理器狀態的實體子處理器的 I /〇璋的領域之一部份與近端儲存區領域,因此透過其他 處理器的存取是可行的。例如,邏輯子處理器所被建立對 應到之邏輯分割區所被設定之客座0s ’是可透過其他處 理器來進行存取。 可是,邏輯子處理器被分配給實體子處理器的期間, 係在該邏輯子處理器所對應之邏輯分割區位址空間內的領 Φ 域上,是被映射有反映著邏輯子處理器狀態的實體子處理 器的I/O埠的領域與近端儲存區領域,因此如參照圖2所 . 說明過的,一般而言往邏輯子處理器的存取會變成無法進 行。可是,本發明中是構成爲,在邏輯處理器不是正在利 用實體處理器的期間內,爲了實現往邏輯處理器的存取, 將含有I/O埠之領域與近端儲存區領域資訊的上下文表, 保持在可從其他處理器參照的狀態 以下,說明該上下文保存構成的細節。以下的說明中 ,將利用邏輯子處理器的資料處理加以執行的,是在參照 •20- (18) 1273495 圖5所說明過的被分配給客座〇s的邏輯分割區。對於邏 輯分割區所對應之邏輯子處理器,分時所致之實體處理器 的分配係藉由控制0 S而執行。 邏輯子處理器上,係有受到客座0 S所控制的活動狀 態/非活動狀態,和受控制0S所控制的執行狀態/可執 行狀態。藉由這些組合,邏輯子處理器上係存在以下三種 狀態。 p ( a )活動狀態&可執行狀態 (b )活動狀態&執行狀態 (e)非活動狀態 活動狀態和非活動狀態的差異,係邏輯子處理器是否 成爲控制0S所致之分時對象,亦即是否成爲實體子處理 器之分配對象的差異。活動狀態,係邏輯子處理器是成爲 分時對象的狀態,亦即是成爲實體處理器之分配對象的狀 態。當邏輯子處理器爲活動狀態的時候,則控制0S係將 φ 已分時之實體子處理器,適宜地分配給該邏輯子處理器。 非活動狀態係邏輯子處理器不是成爲分時對象的狀態 。當邏輯子處理器處於該非活動狀態的時候,則控制〇s 係不會將已分時之實體子處理器分配給該邏輯子處理器。 可是,在此情況下,邏輯子處理器的上下文係被保持在上 下文表(context table)中。藉由控制0S將該上下文映射 至邏輯分割區位址空間,使得來自其他處理器的對非活動 狀態之邏輯處理器的存取變爲可能。此外,客座0 s係可 控制邏輯子處理器的活動狀態/非活動狀態。 ••21 - (19) 1273495 執行狀態與可執行狀態的差異,係活動狀態之邏輯子 處理器是否在實體子處理器上被實際執行之差異。當邏輯 子處理器是多於實體子處理器的時候,如先前參照圖2所 說明過的,邏輯子處理器係藉由已被分時之實體子處理器 來實現,因此邏輯子處理器並非總是會在實體子處理器上 被執行。執行狀態,係指邏輯子處理器是在實體子處理器 被貫際執行的瞬間狀態。 # 另一方面,可執行狀態,係邏輯子處理器是正處於成 爲實體處理器之分配對象(活動狀態),但實際上並未在 實體子處理器上被執行之瞬間狀態。 這些狀態間的遷移,亦即,執行狀態與可執行狀態之 間的遷移,係藉由控制0S所引起之邏輯子處理器的上下 文開關而引發。此外,客座0S係可獲知邏輯子處理器的 執行狀態/可執行狀態。 若邏輯子處理器是活動狀態且爲執行狀態,則邏輯分 # 割區位址空間內的領域上,會被映射有反映著邏輯子處理 器狀態的實體子處理器的I/O埠之領域與近端儲存區領域 . 。因此,對邏輯子處理器的存取是處於可能的狀態。 再者,在本發明之資訊處理裝置中,當邏輯子處理器 是遷移至非活動狀態之際,控制os會將作爲邏輯子處理 器之狀態資訊的邏輯子處理器之上下文(context )加以保 存,並將上下文表,映射至邏輯子處理器所對應之客座 0S之邏輯分割區位址空間內的領域。藉由該處理,客座 0 S係可根據自己的邏輯分割區位址空間來參照處於非活 -22- (20) 1273495 動狀態之邏輯子處理器的上下文表的資源資訊,而可進行 資源資訊之讀取、寫入、更新等處理。 甚至,在上下文表中,除了暫存器之內容以外,還可 將先前之上下文表中所未含有的,例如近端儲存區之內容 或I/O埠之內容等,一倂加以存放而構成。其結果爲,客 座OS係可執行資源存取所致之資料處理,該資源存取係 聽從於被設定成並非處於實體處理器使用狀態之非活動狀 Φ 態的邏輯處理器所對應之這些各種狀態資訊,而提升資料 處理效率。 參照圖7,說明客座Ο S所致之邏輯子處理器對應的 資源存取樣態。客座OS係被邏輯分割區所設定,邏輯分 割區上是被建立對應有邏輯子處理器。資源係被區分爲, 客座OS不可存取的資源50 1,和客座OS可以存取的資源 502。 當客座OS對應之邏輯分割區上所被建立對應到的邏 Φ 輯子處理器是處於活動狀態且爲執行狀態的時候,係爲實 體子處理器5 1 0所致之資料處理執行狀態,該狀態下,適 / 用了 :客座OS不可存取的資源501中所包含之泛用暫存 器52 1、I/O埠之一部份522、還有客座OS可以存取的資 源5 02中所包含之I/O埠的一部份5 2 3、近端儲存區524 、主記憶體5 2 5的資料處理會被執行。 當處於實體子處理器所致之資料處理執行狀態的時候 ,客座OS的邏輯分割區位址空間上,係被映射了 I/O埠 的一部份52 3領域和近端儲存區5 24領域等,客座OS係 -23- (21) 1273495 可對這些資源進行存取。 然後,一旦邏輯子處理器遷移至非活動狀態、亦即從 實體子處理器之分配對象中被排除後的狀態,則在位於邏 輯子處理器的主記憶體5 2 5中的上下文表5 3 1中會保存該 當上下文。 被保存在主記憶體5 2 5中的邏輯子處理器之上下文表 531,由於是被映射至邏輯子處理器所對應之客座0S的邏 • 輯分割區位址空間內之領域,因此是可藉由客座0S來存 取。 參照圖8,說明邏輯子處理器所對應之客座〇 s的邏 輯分割區位址空間,和實體位址空間的對應。 圖8中圖示了,對應於邏輯子處理器的客座0S的邏 輯分割區位址空間5 60,和實體位址空間5 70。實體位址 空間5 7 0係爲相當於主記憶體的實體空間。客座Ο S,係、 只能夠存取已被映射至客座OS之邏輯分割區位址空間領 •域的實體位址空間。 當客座〇 S的邏輯分割區對應之邏輯子處理器,是處 . 於活動狀態且爲執行狀態的時候,亦即是處於賓體子處理 器所致之資料處理執行狀態的時候,客座〇 S的邏輯分割 區位址空間560上,係被映射有I/O埠之部份領域和近端 儲存區領域561,客座OS係可對這些資源進行存取。 再者,當客座OS的邏輯分割區對應之邏輯子處理器 是處於非活動狀態的時候,亦即是處於從實體子處理器分 配對象中被除外後之狀態的時候,客座〇 S的邏輯分割區 -24 - (22) 1273495 位址空間5 60上,除了被映射有前記I/O埠之部份領域和 近端儲存區領域,還映射有加上了前記I/O埠中所未包含 之關聯I/O埠的領域和暫存器而成的上下文表5 62,客座 OS是可對這些資源進行存取。 參照圖9,說明上下文保存處理之細節。圖9中係圖 示了,執行上下文保存處理的控制〇 S 6 1 0、和執行保存對 象之上下文對應之邏輯處理器所致之資料處理的邏輯分割 φ 區所設定之客座OS620。 如先前參照圖8所說明過的,上下文被保存成可從客 座OS參照之狀態,係當邏輯子處理器是被設定成非活動 狀態的時候。亦即邏輯子處理器是被排除在實體子處理器 分配對象以外的時候。 圖9中,客座OS620,係對控制OS610的系統呼叫處 理部611,輸出一要求將上下文保存至可從客座os參照 之位置的保存處理之系統呼叫。控制0 S 6 1 0的系統呼叫處 9 理部6 1 1 ’係一旦收到來自客座0 S 6 2 0的系統呼叫,便對 邏輯處理器排程處理部6 1 2,輸出一邏輯子處理器之棑程 • 變更要求,然後向上下文管理部請託對應於邏輯處理器的 上下文之保存。 系統呼叫處理部6 1 1,係響應要求,而令邏輯子處理 器從活動狀態遷移至非活動狀態。亦即進行了,將客座 Ο S 6 2 0中所被設定之邏輯分割區所對應之邏輯子處理器, 從實體子處理器分配對象中加以除外的處理。藉由該處理 ’邏輯子處理器係被設定成非活動狀態。 -25- (23) 1273495 然後,邏輯處理器排程處理部6 1 2,係向上下文管理 部6 1 3,請託已遷移成非活動狀態之邏輯子處理器所對應 之上下文的保存處理。上下文管理部6 1 3,係一旦受到邏 輯處理器排程處理部6 1 2請託了邏輯子處理器之上下文的 保存/復原,便會執行上下文的保存/復原。又,一旦確 認到該邏輯子處理器是已經被設定成非活動狀態的事實, 則向主記憶體管理部6 1 4發出請託,使其將已保存上下文 φ 的上下文表映射至邏輯分割區位址空間。保存的上下文中 ,係含有邏輯處理器的近端儲存區之內容、I/O埠之內容 、暫存器之內容。 主記憶體管理部6 1 4,係將作爲實體位址空間的主記 憶體中所保存之上下文,映射至客座0S 620的邏輯分割區 位址空間領域,設定成可從客座OS620參照的狀態。.記億 體管理部614,係對客座OS62 0,通知一位於客座OS620 之邏輯分割區位址空間中的上下文存取用位址。 # 客座OS,係可按照所被通知的位址來參照上下文, 取得基於上下文的資源、亦即先前說明之可從主處理器直 . 接存取的I/O璋領域和近端儲存區領域,還有暫存器內容 雪 、無法從主處理器直接存取的I/O埠內容,而可進行這些 資源資訊的讀取、寫入處理。 參照圖1 〇,說明上下文的保存處理、以及利用被保存 之上下文的資源存取處理。 圖1 0所示的處理,係客座〇 s根據將自己的邏輯分割 區之處於活動狀態的邏輯處理器,設定成非活動狀態而映 -26 - (24) 1273495 射至邏輯分割區位址空間領域而成的上下文,執行資源存 取’然後,將邏輯子處理器變回活動狀態的處理序列。針 對各步驟加以說明。 步驟S110,係客座0S所致之邏輯子處理器之資源存 取的開始處理。此外,該客座0 S中,係設定有邏輯分割 區’並且向所設定之邏輯分割區所對應之邏輯子處理器的 資源進行存取。 步驟 S 1 1 0的處理,係由圖1 〇的右側所示之步驟 S111〜S113之處理所構成。首先,在步驟sill中,客座 0S係對控制0S執行系統呼叫。該系統呼叫,係將邏輯子 處理器加以特定,係爲要求將該邏輯子處理器對應之上下 文保存至可從客座0 S參照之位置的處理的系統呼叫。 控制0 S,係響應於來自客座0 S之系統呼叫的收取, 而執行步驟s 1 1 2、S 1 1 3的處理。此外,圖1 0中,粗線框 所示的步驟s 1 1 2、S 1 1 3、S 1 3 2係相當於控制0 S的處理
控制〇 S,係在步驟S 1 1 2中,將有來自客座0 S之要 求的邏輯子處理器,排除在分時對象以外。亦即排除在實 體子處理器的分配對象以外,設定成非活動狀態。然後, 在步驟S 1 1 3中,會執行邏輯子處理器對應之上下文的保 存。被保存的上下文,係被映射至客座〇 S之邏輯分割區 位址空間領域,設定成可從客座參照之狀態。此外, 保存的上下文中,係含有I/O埠之內容、近端儲存區之內 容、暫存器之內容。 -27- (25) 1273495 步驟S 1 2 0中,客座0 S,係從自己的邏輯分割區位址 空間領域往上下文進行存取,執行上下文資訊的取得、覆 寫處理等資源存取處理。 一旦客座OS所致之資源存取結束,則客座OS係在 下個步驟S 1 3 0中,執行邏輯子處理器之資源存取結束處 理。 步驟 S 1 3 0的處理,係由圖1 〇的右側所示之步驟 • S13 1〜S132之處理所構成。首先,在步驟S131中,客座 OS係對控制OS執行系統呼叫。該系統呼叫,係將邏輯處 理器予以特定,將該邏輯處理器設定成分時候補的要求處 理’亦即要求從非活動狀態遷移至活動狀態之狀態遷移的 系統呼叫。 控制OS,係響應於來自客座〇S的系統呼叫收訊,而 在步驟S132中,執行一將有來自客座〇S之要求的邏輯子 處理器變回分時對象之處理。亦即再度設定成實體子處理 Φ 器的分配對象而設定成活動狀態。 藉由這些處理,邏輯子處理器係再度被設定成活動狀 . 態而成爲實體處理器之分配對象,響應於分時所對應之排 . 程’而可執行利用了實體子處理器的資料處理。 如此’本發明中,關於並未執行適用了實體子處理器 2資料處理的邏輯子處理器,是構成爲可參照該上下文, H Jit可使邏輯子處理器對應之資源存取能有效率地執行, 資源存取不需要待機等到實體子處理器的分配,可實現高 效率的資料處理。 -28- (26) 1273495 參照圖 η、圖12,說明適用了本發明時的利用了處 於非活動狀態之邏輯子處理器對應之上下文的處理例子° 當適用了邏輯子處理器的複數處理被平行處理的時候 ,實體子處理器,係被複數的邏輯子處理器予以排程而被 使用。亦即,複數之邏輯子處理器,係以分時(time sharing)方式進行實體子處理器的使用。. 圖U係圖示了,對於2個實體子處理器(1 )、實體 • 子處理器(2),分配了複數之邏輯子處理器(甲)〜( 丁),正在執行分時所致之處理的處理例。此處,對某客 座〇 S對應之邏輯子處理器(甲)的存取.在執行的時候, 邏輯處理器(甲)是藉由分時而被分配至任一實體子處理 器(1 )或實體子處理器(2 );當資料處理被執行時,如 前述,由於I/O埠領域之一部彳分或近端儲存區領域,是被 映射至客座〇 S對應之邏輯分割區位址空間的狀態,因此 邏輯子處理器(甲)及對該資源的存取是可能的。可是, 當邏fe處理益(甲)並未藉由分時而被分配至任^一實體子 處理器(1 )或實體子處理器(2 ),而非正在執行資料處 . 理的時候,則爲I/O璋領域之一部份或近端儲存區領域, 並未被映射至客座〇 S對應之邏輯分割區位址空間的狀態 〇 此處,在本發明的構成中係構成爲,藉由從客座0 S 對控制0S的系統呼叫,將邏輯子處理器(甲)設成非活 動狀態、亦即排除在分時對象以外,並保存上下文,將上 下文表映射至客座〇 s對應之邏輯分割區位址空間。亦即 - 29 - (27) 1273495 ,圖1 1所示之邏輯子處理器(甲)701係爲保持著客座 os可以參照之上下文的狀態。 圖1 1中係圖示了,在時刻11〜圖2之間,將邏輯子 處理器(甲)設定成非活動狀態,且邏輯子處理器(甲) 之上下文是被映射至客座OS對應之邏輯分割區位址空間 ,而被設定成可從客座OS參照之狀態。在時刻tl上,除 了輸出從客座0 S對控制Ο S的系統呼叫而將邏輯子處理 • 器(甲)從活動狀態設定成非活動狀態,同時還將上下文 映射至客座0 S對應之邏輯分割區位址空間。又,在時刻 t2上,輸出從客座〇 S對控制Ο S的系統呼叫,而將邏輯 子處理器(甲)從活動狀態設定成非活動狀態。 先前,當邏輯子處理器並未被分配到實體子處理器的 期間,邏輯子處理器的上下文是無法參照,因此,從O.S· 對邏輯子處理器的存取會變成錯誤。亦即,邏輯子處理器 (甲)必須要待機直到被分配至實體子處理器(1 )或(2 9 )的下個時序爲止。本發明的構成中,不需要待機:至邏輯 子處理器之實體子處理器的分配時序,就可對邏輯子處理 . 器進行存取。 . 圖1 2係圖示了,將邏輯子處理器設定成非活動狀態 ’在上下文可參照的期間,對邏輯子處理器給予程式之:傳 送及程式啓動指示,而在下次實體子處理器的分配時,可 以立即執行適用了實體子處理器之程式執行的構成例。: 在時刻11上,藉由從客座OS對控制OS的系統呼叫 ’將邏輯子處理器(甲)設成非活動狀態、亦即排除在分 -30- (28) 1273495 時對象以外,並保存上下文,將上下文表映射至客座〇 s 對應之邏輯分割區位址空間。圖1 2所示的時刻11〜t2中 ,客座〇 S,係從客座Ο S對應之邏輯分割區位址空間中參 照上下文,亦即可以存取邏輯子處理器(甲)701。 客座〇 S,係在時刻11〜12之間,執行對邏輯子處理 器(甲)的資料處理程式之傳送處理,然後輸出啓動指示 。具體而言,對於被記錄在上下文表中的邏輯子處理器( φ 甲)的近端儲存區領域,執行程式資料的載入處理等等。 這些處理結束後的時刻t2上,客座0S係對控制0S,輸 出系統呼叫,邏輯子處理器(甲)便從非活動狀態被設定 成活動狀態。邏輯子處理器(甲)係在下個分時所致之實 體子處理器的使用時,可以立即執行被載入至邏輯子處理 器(甲):之近端儲存區領域內的程式。 先前,當試圖執行這種處理的時候,在邏輯子處理器 並未被分配到實體子處理器的期間,邏輯子處理器的上下 • 文是無法參照,因此,對邏輯子處理器之近端儲存區領域 的存取會引發:錯誤。亦即,一直等到邏輯子處理器(甲) . 是被分配至實體子處理器(1 )或實體子處理器(2 )的下 個時序以前,程式載入處理等是無法執行的,導致程式執 行時序延遲,而有資料處理的效率性降低等缺點,但藉由 適用本發明的構成,就可提升資料處理效率。 以上參照了特定的實施例,詳述本發明。可是在此同 時,在不脫離本發明之要旨的範圍內,當業者當然:可完成 該實施例的修正或代用。亦即,例示的型態僅爲揭.露本發 -31 - (29) 1273495 明所用者,並不可作爲限定解釋。在判斷本發明之要旨時 ,應參酌申請專利範圍欄中的記載。 此外,本說明書中所說明過的一連串之處理係可藉由 硬體或軟體,或是兩者的複合構成來執行。在以軟體來執 行處理的時候,是可將記錄著處理序列的程式,安裝至組 裝有專用硬體的電腦內的記憶體中而執行,或者,將程式 安裝至可執行各種處理的泛用電腦來執行之。 ί 例如,程式係可預先記錄在作爲記錄媒體的硬碟或 ROM (Read Only Memory)內。或者,程式係可事先暫時 或永久性地,存放(記錄)在軟碟、CD-ROM ( Compact Disc Read Only Memory) ,MO ( Magneto optical )碟片 ,DVD ( Digital Versatile Disc )、磁碟、半導體記憶體 等可移除式記錄媒體中。此類可移除式記錄媒體,係可以 所謂的套裝軟體的方式來提供。 此外,程式係除了如上述般的可移除式記錄媒體安裝 ® 至電腦以外’也可從下載網站,以無線傳送至電腦,或透 過LAN ( Local Area Network )、網際網路這類網路而以 有線傳送至電腦;並在電腦上,接收這些傳送過來的程式 ,安裝至內建的硬碟等記錄媒體中。 此外’說明書所記載的各種處理,係不只能按照所記 載之時間系列而被執行,亦可因應執行處理之裝置的處理 能力或需要,而平行地或個別的執行。又,本說明書中所 謂的系統,係爲複數裝置的邏輯集合構成,各構成裝置並 非侷限於只在同一框體內。 -32> (30) 1273495 〔產業上利用之可能性〕 如以上所說明,若根據本發明之構 邏輯子處理器藉由分時而建立對應至實 資料處理的構成當中,由於是構成爲可 子處理器非適用狀態的邏輯子處理器對 至作爲邏輯子處理器之適用主體的邏輯 φ 輯分割區位址空間而加以保存的處理, 器並未被分配至實體子處理器的狀況下 的上下文之取得變爲可能,且可令對邏 、程式載入等之處理,不必等待邏輯子 體子處理器的時序就能加以執行,而可 躍性地提升。 再者,若根據本發明之構成,則由 係除了暫存器的內容以外,還將先前之 # 含的例如近端儲存區領域的內容或I/O 一倂存放的構成,因此客座〇s,係可 . 、近端儲存區之內容、I/O埠之內容, ^ 非處於實體子處理器未使用狀態之非活 理器所對應之各種狀態資訊,可依照這 存取所致資料處理,提升資料處理效率 【圖式簡單說明】 〔圖1〕分時所致之邏輯處理器與 成,則在將複數之 體子處理器以執行 執行:將處於實體 應之上下文,映射 分割區所對應之邏 因此在邏輯子處理 ,該邏輯子處理器 輯子處理器的存取 處理器被分配至實 令資料處理效率飛 於在上下文表中, 上下文表中所未包 埠之內容等等予以 參照暫存器之內容 以作爲被設定成被 動狀態的邏輯子處 些資訊而執行資源 實體處理器之對應 -33- (31) 1273495 建立處理的說明圖。 〔圖2〕分時所致之邏輯處理器與實體處理器之對應 建立處理的說明圖。 〔圖3〕本發明之資訊處理裝置之構成例的圖示。 〔圖4〕本發明之處理器模組之構成例的圖示。 〔圖5〕本發明之資訊處理裝置的作業系統構成之說 明圖。 Φ 〔圖6〕邏輯處理器和實體處理器之對應建立處理的 說明圖。 〔圖7〕可被客座0S參照的領域,以及本發明中的 上下文表的設定例的說明圖。 〔圖8〕客座0S對應之邏輯分割區位址空間,和可 被客座0S參照之資訊的說明圖。 〔圖9〕本發明中的客座0S與控制0S中所執行之處 理的說明圖。 # 〔圖1 〇〕本發明中的客座〇 S與控制0 S中所執行之 處理序列的說明流程圖。 . 〔圖1 1〕適用了本發明之分時所致之邏輯處理器與實 β 體處理器之對應建立及上下文設定處理的說明圖。 〔圖1 2〕適用了本發明之分時所致之邏輯處理器與實 體處理器之對應建立及上下文設定處理、程式載入處理的 說明圖。 【主要元件符號說明】 -34- (32) 1273495 1 Ο 1 :處理器模組 102 :圖形引擎
103 :主記憶體(DRAM ) 10 4: ROM 1 〇 5 :橋接器 106 :控制器 107 :記憶卡
1 1 1 :主機匯流排 1 1 2 :外部匯流排 1 1 3 :介面 1 2 1 ·輸入部 1 2 2 :輸出部 123 : HDD 1 2 4 :驅動器
125 :連接埠(USB等等) 1 2 6 :通訊部 1 2 7 :可移除式記錄媒體 128 :外部連接機器 200 :處理器模組 201〜20η :主處理器群 301 :控制Ο S 3 02 :客座 OS ( a ) 3 0 3 :客座 Ο S ( b )
3 0 4 :系統控制0 S (33)1273495
3 0 5 :客座 OS ( 3 〇 6 :客座 O S ( 3 0 7 :系統控制 4 0 1 :主處理器 411 :實體子處 412 :實體子處 413 :實體子處 4 1 4 :實體子處 501 :客座 OS : 5 0 2 :客座 Ο S Ί 5 1 0 :實體子處 5 2 1 :泛用暫存 5 2 2 : I / Ο 埠之-5 2 3 : I / Ο 埠的-524 :近端儲存 5 2 5 :主記憶體 53 1:邏輯子處 5 60 :邏輯分割 5 6 1 :近端儲存 5 62 :上下文表 5 7 0 :實體位址 6 10:控制Ο S 6 1 1 :系統呼叫 6 1 2 :邏輯處理 :a )應用程式 :b )應用程式 程式 理器1 理器2 理器3 理器4 F可直接存取的資源 叮以直接存取的資源 理器 器 -部份 -部份 區 理器的上下文表 區位址空間 區領域 空間 處理部 器排程處理部 -36- (34)1273495 613 614 620 70 1 :Η ··邏 下文管理部 憶體管理部 座OS 輯子處理器·甲
-37-

Claims (1)

  1. (1) 1273495 十、申請專利範圍 ]· 一種資訊處理裝置,係屬於將複數邏輯處理器藉 由分時(time sharing)而建立對應至實體處理器以執行 資料處理的資訊處理裝置,其特徵爲, 具有上下文管理部,其係將實體處理器是處於未被分 配之狀態的邏輯處理器對應之上下文(context ),映射至 作爲該邏輯處理器之適用主體的邏輯分割區所對應的邏輯 Φ 分割區位址空間而加以保存。 2 ·如申請專利範圍第1項所記載之資訊處理裝置, 其中, 前記資訊處理裝置係構成爲具有: . 控制 〇S,執行將複數邏輯處理器藉由分時(time sharing )而建立對應至實體處理器之處理;和 客座OS ( Guest 0S ),其係被建立對應了作爲邏輯 處理器之適用主體的邏輯分割區; φ 前記控制〇 S係執行以下處理: 根據從客座〇 S對控制0 S的系統呼叫,而將該客座 • 〇 S對應之邏輯分割區所適用之邏輯處理器所對應之上下 文,映射至前記客座0 S對應之邏輯分割區位址空間而加 以保存。 3 ·如申請專利範圍第2項所記載之資訊處理裝置, 其中, 前記控制0S係構成爲執行以下處理: 根據從客座〇 s對控制〇 S的系統呼叫,將前記客座 -38- (2) 1273495 〇 s對應之邏輯分割區所適用之邏輯處理器,從作爲往 體處理器之對應建立處理的分時處理對象中予以餘外, 將前記邏輯處理器對應之上下文,映射至前記邏輯分割 位址空間而加以保存。 4.如申請專利範圍第2項所記載之資訊處理裝置 其中, 前記控制0S係構成爲執行: • 把邏輯處理器視爲實體處理器之分配對象的活動狀 ,和 不把邏輯處理器視爲實體處理器之分配對象的非活 狀態, 之2狀態間的切換處理; 且構成爲執行以下處理:根據從客座0S對控制 的系統呼叫,而將該客座0S對應之邏輯處理器設定成 活動狀態,而將該邏輯處理器對應之上下文,映射至前 ϋ 邏輯分割區位址空間而加以保存。 5 ·如申請專利範圍第4項所記載之資訊處理裝置 其中, 前記控制0 S係構成爲執行以下處理: 根據從客座0S對控制0S的系統呼叫,將已被設 成非活動狀態之前記客座0S對應之邏輯處理器再次設 成活動狀態,以將該邏輯處理器變回實體處理器之分配 象。 6 ·如申請專利範圍第1項所記載之資訊處理裝置 實 並 區 態 動 0S 非 記 定 定 對 -39- (3) 1273495 其中, 前記上下文管理部係構成爲: 作爲邏輯處理器對應之上下文,而執行包含邏輯處理 器之暫存器、I/O埠、近端儲存區之上下文的保存處理。 7. 一種處理程序控制方法,係屬於將複數邏輯處理 器藉由分時(time sharing )而建立對應至實體處理器以 執行資料處理的資訊處理裝置中的處理程序控制方法,其 _ 特徵爲,具有: 邏輯處理器排程步驟,把邏輯處理器從實體處理器之 分配對象中予以除外;和 上下文保存步驟,其係執行以下處理:將已從實體處 理器之分配對象中除外的實體處理器對應之上下文,映射 至作爲該邏輯處理器之適用主體的邏輯分割區所對應之邏 輯分割區位址空間而加以保存。 8. 如申請專利範圍第7項所記載之處理程序控制方 _法,其中, 前記處理程序控制方法,更具有: . 系統呼叫輸出步驟,將來自客座0S對控制0S的系 統呼叫予以輸出; 前記邏輯處理器排程步驟係執行以下處理: 根據前記系統呼叫,把邏輯處理器從實體處理器之分 配對象中加以除外; 前記上下文保存步驟係執行以下處理: 根據前記系統呼叫,而將客座〇 s對應之邏輯分割區 -40 - (4) 1273495 所適用之邏輯處理器所對應之上下文,映射至前記客座 0S對應之邏輯分割區位址空間而加以保存。 9.如申請專利範圍第8項所記載之處理程序控制方 法,其中, 前記控制0 S係執行: 把邏輯處理器視爲實體處理器之分配對象的活動狀態 ,和 # 不把邏輯處理器視爲實體處理器之分配對象的非活動 狀態, 之2狀態間的切換處理; 且執行以下處理:根據從客座0S對控制0S的系統 呼叫,而將該客座0 S.對應之邏輯處理器設定成非活動狀: 態,而將該邏輯處理器對應之上下文,映射至前記邏輯分· 割區位址空間而加以保存。 1 0.如申請專利範圍第9項所記載之處理程序控制方: 鲁法,其中, 前記控制〇 S係更進一步執行以下處理: . 根據從客座OS對控制OS的系統呼叫,將已被設定 , 成非活動狀態之前記客座os對應之邏輯處理器再次設定 成活動狀態,以將該邏輯處理器變回實體處理器之分配對 象。 11. 一種記錄有電腦程式之電腦可讀取之媒體,該程 式係屬於在將複數邏輯處理器藉由分時(time sharing) 而建立對應至實體處理器以執行資料處理的構成中,執行 -41 - (5) 1273495 處理程序(process )控制處理電腦程式,其特徵爲,具有 邏輯處理器排程步驟,把邏輯處理器從實體處理器之 分配對象中予以除外;和 上下文保存步驟,其係執行以下處理:將已從實體處 理器之分配對象中除外的實體處理器對應之上下文,映射 至作爲該邏輯處理器之適用主體的邏輯分割區所對應之邏 φ 輯分割區位址空間而加以保存。
    -42-
TW094129104A 2004-09-29 2005-08-25 Information processing device, process control method, and computer program TWI273495B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004283530A JP2006099332A (ja) 2004-09-29 2004-09-29 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
TW200611198A TW200611198A (en) 2006-04-01
TWI273495B true TWI273495B (en) 2007-02-11

Family

ID=36118874

Family Applications (1)

Application Number Title Priority Date Filing Date
TW094129104A TWI273495B (en) 2004-09-29 2005-08-25 Information processing device, process control method, and computer program

Country Status (7)

Country Link
US (1) US20080209168A1 (zh)
EP (1) EP1691287A4 (zh)
JP (1) JP2006099332A (zh)
KR (1) KR20070057692A (zh)
CN (1) CN1906584A (zh)
TW (1) TWI273495B (zh)
WO (1) WO2006035729A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10083407B2 (en) 2008-11-19 2018-09-25 International Business Machines Corporation Ad hoc task creation and process modification

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104586A1 (en) * 2006-10-27 2008-05-01 Microsoft Corporation Allowing Virtual Machine to Discover Virtual Status Thereof
JP4864817B2 (ja) * 2007-06-22 2012-02-01 株式会社日立製作所 仮想化プログラム及び仮想計算機システム
US8010763B2 (en) 2007-08-02 2011-08-30 International Business Machines Corporation Hypervisor-enforced isolation of entities within a single logical partition's virtual address space
US8645974B2 (en) * 2007-08-02 2014-02-04 International Business Machines Corporation Multiple partition adjunct instances interfacing multiple logical partitions to a self-virtualizing input/output device
US8176487B2 (en) 2007-08-02 2012-05-08 International Business Machines Corporation Client partition scheduling and prioritization of service partition work
JP5433837B2 (ja) * 2007-12-05 2014-03-05 株式会社日立製作所 仮想計算機システム、仮想計算機の制御方法及びプログラム
JP5379122B2 (ja) * 2008-06-19 2013-12-25 パナソニック株式会社 マルチプロセッサ
US9201673B2 (en) * 2008-07-30 2015-12-01 Microsoft Technology Licensing, Llc Efficient detection and response to spin waits in multi-processor virtual machines
JP5405799B2 (ja) * 2008-10-30 2014-02-05 株式会社日立製作所 仮想計算機の制御方法、仮想化プログラム及び仮想計算機システム
JP2010160600A (ja) * 2009-01-07 2010-07-22 Yamatake Corp 情報処理装置、スケジューラ、及びスケジューリング方法
JP5336423B2 (ja) * 2010-05-14 2013-11-06 パナソニック株式会社 計算機システム
US9164951B2 (en) * 2010-05-26 2015-10-20 Nec Corporation Multiprocessor system, execution control method and execution control program
JP5369356B2 (ja) * 2011-11-09 2013-12-18 株式会社日立製作所 仮想化プログラム
JP5608797B2 (ja) * 2013-07-31 2014-10-15 株式会社日立製作所 仮想化プログラム、仮想計算機システム及び計算機システム制御方法
JP5584811B2 (ja) * 2013-10-30 2014-09-03 株式会社日立製作所 仮想計算機の制御方法、仮想化プログラム及び仮想計算機システム
US11409566B2 (en) * 2018-02-28 2022-08-09 Mitsubishi Electric Corporation Resource control device, resource control method, and computer readable medium
US11775301B2 (en) 2021-09-24 2023-10-03 Apple Inc. Coprocessor register renaming using registers associated with an inactive context to store results from an active context

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843541A (en) * 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
US5692193A (en) * 1994-03-31 1997-11-25 Nec Research Institute, Inc. Software architecture for control of highly parallel computer systems
US6751737B1 (en) * 1999-10-07 2004-06-15 Advanced Micro Devices Multiple protected mode execution environments using multiple register sets and meta-protected instructions
US6957435B2 (en) * 2001-04-19 2005-10-18 International Business Machines Corporation Method and apparatus for allocating processor resources in a logically partitioned computer system
JP3863117B2 (ja) * 2003-02-27 2006-12-27 株式会社エヌ・ティ・ティ・データ マルチオペレーティングシステム制御方法、およびその方法をコンピュータに実行させるプログラム、ならびにマルチオペレーティングシステム制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10083407B2 (en) 2008-11-19 2018-09-25 International Business Machines Corporation Ad hoc task creation and process modification

Also Published As

Publication number Publication date
EP1691287A1 (en) 2006-08-16
JP2006099332A (ja) 2006-04-13
US20080209168A1 (en) 2008-08-28
EP1691287A4 (en) 2008-12-10
TW200611198A (en) 2006-04-01
WO2006035729A1 (ja) 2006-04-06
CN1906584A (zh) 2007-01-31
KR20070057692A (ko) 2007-06-07

Similar Documents

Publication Publication Date Title
TWI273495B (en) Information processing device, process control method, and computer program
TWI287717B (en) Information processing device, process control method, and recording medium recorded with computer readable program
US8151275B2 (en) Accessing copy information of MMIO register by guest OS in both active and inactive state of a designated logical processor corresponding to the guest OS
JP3659062B2 (ja) 計算機システム
US9043493B2 (en) Workload migration between virtualization softwares
WO2018119952A1 (zh) 一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品
CN100568182C (zh) 在逻辑地分区的数据处理系统内分布工作的方法和系统
JP4056471B2 (ja) プロセッサに譲渡するためのシステム
US9588787B2 (en) Runtime virtual process creation for load sharing
JP5607732B2 (ja) 仮想化環境におけるリソース割り当て
WO2018119951A1 (zh) Gpu虚拟化方法、装置、系统及电子设备、计算机程序产品
US20050198633A1 (en) Method, apparatus and system for seamlessly sharing devices amongst virtual machines
WO2006035728A1 (ja) 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム
KR20070100367A (ko) 하나의 가상 머신에서 다른 가상 머신으로 메모리를동적으로 재할당하기 위한 방법, 장치 및 시스템
JP2010237737A (ja) パススルーi/oデバイスを伴うlparの動的マイグレーション装置、その方法及びそのプログラム
CN107077376B (zh) 帧缓存实现方法、装置、电子设备和计算机程序产品
JP7196439B2 (ja) 仮想化環境におけるデバイスへのアクセス方法
US9569241B2 (en) Sharing devices assigned to virtual machines using runtime exclusion
JP2009296195A (ja) 複数のcpuコアを備えたfpgaを用いた暗号装置
US9088569B2 (en) Managing access to a shared resource using client access credentials
JP2004310615A (ja) プログラム処理システム及びプログラム処理方法、並びにコンピュータ・プログラム
JPWO2012144012A1 (ja) スレッド処理方法、およびスレッド処理システム
WO2007088582A1 (ja) 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体
CN116069451B (zh) 一种虚拟化方法、装置、设备、介质、加速器及系统
US20240028361A1 (en) Virtualized cache allocation in a virtualized computing system

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees