TWI813283B - 用於使用緩衝概要群組之系統間處理之電腦程式產品、電腦系統及電腦實施方法 - Google Patents
用於使用緩衝概要群組之系統間處理之電腦程式產品、電腦系統及電腦實施方法 Download PDFInfo
- Publication number
- TWI813283B TWI813283B TW111117744A TW111117744A TWI813283B TW I813283 B TWI813283 B TW I813283B TW 111117744 A TW111117744 A TW 111117744A TW 111117744 A TW111117744 A TW 111117744A TW I813283 B TWI813283 B TW I813283B
- Authority
- TW
- Taiwan
- Prior art keywords
- buffer
- buffers
- message
- group
- channel
- Prior art date
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 680
- 238000012545 processing Methods 0.000 title claims description 88
- 238000000034 method Methods 0.000 title claims description 28
- 238000004590 computer program Methods 0.000 title claims description 17
- 230000009471 action Effects 0.000 claims abstract description 42
- 230000004044 response Effects 0.000 claims description 113
- 230000000694 effects Effects 0.000 claims description 73
- 238000004891 communication Methods 0.000 claims description 14
- 239000013598 vector Substances 0.000 description 130
- 230000006870 function Effects 0.000 description 125
- 238000010168 coupling process Methods 0.000 description 113
- 238000005859 coupling reaction Methods 0.000 description 113
- 230000008878 coupling Effects 0.000 description 111
- 238000012360 testing method Methods 0.000 description 38
- 230000011664 signaling Effects 0.000 description 30
- 238000005192 partition Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 11
- 239000003999 initiator Substances 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 238000007726 management method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000006073 displacement reaction Methods 0.000 description 6
- 230000005856 abnormality Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002779 inactivation Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000011282 treatment Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241001536374 Indicator indicator Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000011095 buffer preparation Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
存取複數個緩衝概要群組中之一緩衝概要群組。該緩衝概要群組包括指派至該緩衝概要群組之一或多個緩衝器的一或多個概要指示符。檢查該緩衝概要群組之該一或多個概要指示符中之一概要指示符,以判定針對指派至該緩衝概要群組之該一或多個緩衝器中之至少一個緩衝器是否已發生一事件。基於指示該事件已發生之該檢查,執行一或多個動作。
Description
一或多個態樣大體上係關於計算環境內之處理,且特定而言,係關於改良此處理。
不同計算環境提供不同級別之可靠性、可存取性及服務。另外,計算環境可在單個處理器至多個處理器之範圍內,自支援虛擬化及/或分割之計算環境至具有簡單設計之計算環境。具有多個處理器及/或支援分割之一些計算環境可能希望在處理器之間共用資料及/或其他設施。
需要共用資料及/或其他設施之計算環境可使用耦合設施以促進共用。耦合設施為例如包括多個儲存結構(諸如,快取記憶體、清單及/或鎖結構)之共用儲存裝置。其為具有由耦合設施控制碼提供之儲存及處理能力的可共用設施,該耦合設施控制碼可在其自身邏輯分割區中執行,該邏輯分割區可由希望共用資料之其他邏輯分割區及/或處理器存取,而不必擔心資料將受到損壞。作為實例,其他邏輯分割區及/或處理器依賴於耦合設施以提供安全性、高速快取及/或鎖定設施。
由於耦合設施在此類計算環境中執行重要角色,因此促進耦合設施之處理及/或改良處理器與耦合設施之間的通信及處理速度係有
益的。在改良通信中,改良與用於通信之緩衝器相關聯之處理係有益的。
經由提供一種用於促進計算環境內之處理的電腦程式產品來克服先前技術之缺點且提供額外優點。該電腦程式產品包括一或多個電腦可讀儲存媒體及共同地儲存於該一或多個電腦可讀儲存媒體上以執行一方法之程式指令。該方法包括存取複數個緩衝概要群組中之一緩衝概要群組。該緩衝概要群組包括指派至該緩衝概要群組之一或多個緩衝器的一或多個概要指示符。檢查該緩衝概要群組之該一或多個概要指示符中之一概要指示符,以判定針對指派至該緩衝概要群組之該一或多個緩衝器中之至少一個緩衝器是否已發生一事件。基於指示該事件已發生之該檢查,執行一或多個動作。
在使用緩衝概要群組中之概要指示符來檢查工作或事件時,檢查特定針對於特定緩衝器,從而減少系統資源之使用,改良處理速度且促進包括耦合設施之處理的系統處理。此外,檢查指示符比執行用以檢查緩衝器是否有工作要執行之指令更快且更容易。
在一個實施例中,將該一或多個緩衝器指派至該緩衝概要群組。該將該一或多個緩衝器指派至該緩衝概要群組包括使用一準備通道緩衝器指令來將該一或多個緩衝器指派至該緩衝概要群組且準備該一或多個緩衝器以用於一或多個訊息之接收。
在一個實施例中,該一或多個緩衝器基於一發送訊息指令之執行而指派至該緩衝概要群組。該發送訊息指令使用該一或多個緩衝器中之一緩衝器來發送一訊息。
作為實例,一事件包括該一或多個緩衝器中之一緩衝器中
之一訊息的接收,且該執行該一或多個動作包括執行與包括於該緩衝器中之該訊息有關的處理。
在一個實例中,一事件包括與該訊息相關聯之資料的處理完成之一指示,且該執行該一或多個動作包括發送指示該資料已經處理之一回應。
在一個實施例中,該檢查經由一指令替換一輪詢操作,以在該計算環境之緩衝器中尋找工作。移除該輪詢操作增加處理速度且減少系統資源之使用。
在一個實施例中,動態地重新指派該一或多個緩衝器中之一選擇緩衝器之一指派,其中該選擇緩衝器自該複數個緩衝概要群組中之一個緩衝概要群組重新指派至該複數個緩衝概要群組中之另一緩衝概要群組。將緩衝器重新指派至緩衝概要群組提供靈活性,且使得能夠將使用緩衝器之選擇處理器分組在一起,從而提供增強型快取設施。
作為實例,該一或多個概要指示符包括一命令活動概要指示符、一次要到達概要指示符、一回應活動概要指示符、一最終資料活動概要指示符及一主要完成概要指示符。
在一個實施例中,在一選擇位置中界定一緩衝概要回應區域,其中該緩衝概要回應區域包括該複數個緩衝概要群組。
本文中亦描述且主張與一或多個態樣有關之電腦實施方法及系統。此外,本文中亦描述及可能主張與一或多個態樣有關之服務。
經由本文中所描述之技術實現額外特徵及優點。本文中詳細描述其他實施例及態樣且將其視為所主張態樣之一部分。
36:計算環境
37:原生中央處理單元
38:記憶體
39:輸入/輸出裝置/介面
40:匯流排
41:原生暫存器
42:仿真器程式碼
43:客體指令
44:指令提取常式
45:指令轉譯常式
46:原生指令
47:仿真控制常式
50:雲端計算環境
52:雲端計算節點
54A:蜂巢式電話
54B:桌上型電腦
54C:膝上型電腦
54N:汽車電腦系統
60:硬體及軟體層
61:大型電腦
62:伺服器
63:伺服器
64:刀鋒伺服器
65:儲存裝置
66:網路及網路連接組件
67:網路應用程式伺服器軟體
68:資料庫軟體
70:虛擬化層
71:虛擬伺服器
72:虛擬儲存器
73:虛擬網路
74:虛擬應用程式及作業系統
75:虛擬用戶端
80:管理層
81:資源佈建
82:計量及定價
83:使用者入口網站
84:服務等級管理
85:服務等級協議規劃及實現
90:工作負載層
91:地圖繪製及導航
92:軟體開發及生命週期管理
93:虛擬教室教育遞送
94:資料分析處理
95:異動處理
96:緩衝概要群組處理
100:計算環境
101:中央處理器複合體
102:記憶體/主儲存器
104:通用處理器/實體處理器資源
108:輸入/輸出子系統
110:輸入/輸出控制單元
112:輸入/輸出裝置
114:資料儲存裝置
116:程式
118:電腦可讀程式指令
120a:邏輯分割區
120b:邏輯分割區
121:超管理器
122:處理器韌體
123:客體作業系統
124:控制碼
125:程式
126:虛擬機
127:超管理器
128:處理器韌體
129:程式
130:客體作業系統
200:通道子系統
210:耦合通道
220:發送訊息指令
222:操作碼欄位
224:基本欄位
226:位移欄位
232:訊息操作區塊
234:子通道
236:非同步操作
238:訊息命令區塊位址
240:訊息緩衝器位址清單位址
242:MBAL長度
244:V-緩衝概要群組有效指示符
246:緩衝概要群組
264:訊息命令區塊
266:訊息回應區塊
268:訊息緩衝器位址清單
270:訊息緩衝器位址字
272:訊息緩衝器
310:發起者緩衝器
320:接收者緩衝器
330:主要緩衝器
340:次要緩衝器
400:通道緩衝概要回應區域
402:緩衝概要群組
404:選定偏移
410:命令活動概要
412:次要到達概要
414:回應活動概要
416:最終資料活動/資料備妥概要
418:主要完成概要
500:準備通道緩衝器指令
502:操作碼欄位
504:基本欄位
506:位移欄位
510:發信通道緩衝器指令
512:操作碼欄位
514:暫存器欄位
520:定位通道緩衝器指令
522:操作碼欄位
530:移動通道緩衝器資料多重指令
532:操作碼欄位
534:第一暫存器欄位
536:第二暫存器欄位
540:測試通道緩衝器指令
542:操作碼欄位
544:基本欄位
546:位移欄位
600:界定向量指令
602:操作碼欄位
604:第一暫存器欄位
606:第二暫存器欄位
610:測試向量條目指令
612:操作碼
614:第一暫存器欄位
616:第二暫存器欄位
620:設定向量條目指令
622:操作碼欄位
624:第一暫存器欄位
626:第二暫存器欄位
700:循環
710:命令到達
712:儲存MCB
714:設定命令活動
720:執行移動通道緩衝器資料多重指令
722:移動通道緩衝器資料多重指令
724:命令到達
726:儲存資料
728:主要位址清單
730:最終資料活動
732:通道緩衝器指令
734:發送訊息回應區塊
736:輪詢循環
750:執行定位通道緩衝器指令
752:設定命令活動概要指示符
754:命令到達
756:儲存訊息命令區塊
758:設定命令活動指示符
760:執行移動控制區塊資料多重指令
762:資料到達
764:儲存資料
766:位址清單及重試由通道硬體操控
770:設定最終資料活動概要指示符
780:設定概要指示符
782:設定最終資料活動指示符
784:發信通道緩衝器指令
786:發送回應
800:操作
802:操作
804:操作
806:操作
808:操作
810:操作
812:操作
814:操作
816:操作
818:操作
820:操作
822:操作
824:操作
826:操作
828:操作
830:操作
832:操作
834:操作
在本說明書之結尾處之申請專利範圍中作為實例特別地指出且清楚地主張一或多個態樣。一或多個態樣之前述內容及目標、特徵及優點自結合隨附圖式進行的以下詳細描述顯而易見,在隨附圖式中:圖1A描繪併有及使用本發明之一或多個態樣的計算環境之一個實例;圖1B描繪根據本發明之一或多個態樣的圖1A之記憶體的其他細節之一個實例;圖1C描繪根據本發明之一或多個態樣的圖1A之記憶體的其他細節之另一實例;圖2A描繪根據本發明之一或多個態樣的處理器與耦合設施之間的耦合之一個實例;圖2B描繪根據本發明之一或多個態樣的使用發送訊息指令以在處理器與耦合設施之間通信之一個實例;圖3描繪根據本發明之一或多個態樣的所使用緩衝器之實例;圖4A描繪根據本發明之一或多個態樣的通道緩衝概要回應區域之一個實例;圖4B描繪根據本發明之一或多個態樣的圖4A之通道緩衝概要回應區域之緩衝概要群組之一個實例;圖5A描繪根據本發明之一或多個態樣的準備通道緩衝器指令之格式之一個實例;圖5B描繪根據本發明之一或多個態樣的發信通道緩衝器指令之格式之一個實例;圖5C描繪根據本發明之一或多個態樣的定位通道緩衝器指令之格式
之一個實例;圖5D描繪根據本發明之一或多個態樣的移動通道緩衝器資料多重指令之格式之一個實例;圖5E描繪根據本發明之一或多個態樣的測試通道緩衝器指令之格式之一個實例;圖6A描繪根據本發明之一或多個態樣的界定向量指令之格式之一個實例;圖6B描繪根據本發明之一或多個態樣的測試向量條目指令之格式之一個實例;圖6C描繪根據本發明之一或多個態樣的設定向量條目指令之格式之一個實例;圖7A描繪使用主要接收者緩衝器之命令處理之一個實例;圖7B描繪根據本發明之一或多個態樣的使用主要接收者緩衝器之命令處理之另一實例;圖8A至圖8B描繪根據本發明之一或多個態樣的促進計算環境內的處理之一個實例;圖9A描繪併有及使用本發明之一或多個態樣的計算環境之另一實例;圖9B描繪根據本發明之一或多個態樣的圖9A之記憶體之其他細節;圖10描繪根據本發明之一或多個態樣的雲端計算環境之一個實施例;及圖11描繪根據本發明之一或多個態樣的抽象模型層之一個實例。
根據本發明之一或多個態樣,提供一種促進計算環境內之處理的能力。作為實例,提供一種促進使用一或多個耦合設施之計算環境中之系統間處理的能力。該能力包括例如界定、使用及/或管理緩衝概要群組以促進處理。在一個態樣中,管理包括將緩衝器指派至緩衝概要群組,及/或動態地調整一或多個緩衝器之指派,使得一或多個緩衝器自一或多個緩衝概要群組重新指派至一或多個其他緩衝概要群組。
緩衝概要群組之緩衝器用於在處理器與耦合設施之間及/或在耦合設施之間通信。耦合設施(例如,耦合設施控制碼)經提供將緩衝器分段成可用於將操作聚焦至處理器之特定群組的群組中的能力,此係由於處理器經指派待使用之選擇緩衝器。此提供使先前快取之資訊可用於處理器的較大機率,且減少共用資訊之量。在一個實例中,共用緩衝概要群組之處理器共用快取記憶體。
在一或多個態樣中,作為實例,概要指示提供於緩衝概要群組內以指示可能需要耦合設施注意之事件的存在,諸如緩衝器狀態改變。緩衝概要群組例如提供於快取線邊界上,其允許例如耦合設施控制碼能夠將服務個別緩衝概要群組之處理器限制於緊密地共用硬體設施之處理器,從而最大化資料將保持於本端快取記憶體內之機會且改良效能。
在一或多個其他態樣中,提供針對所指定緩衝概要群組之已註冊向量狀態改變的概要指示。作為實例,此促進耦合設施之間的處理。
參考圖1A描述併有及使用本發明之一或多個態樣的計算環境之一個實施例。作為實例,計算環境係基於由紐約阿蒙克市之國際商業機器公司(International Business Machines Corporation)提供之
z/Architecture®指令集架構。z/Architecture指令集架構之一個實施例描述於標題為「z/Architecture Principles of Operation」之公開案(IBM公開案第SA22-7832-12號,第十三版,2019年9月)中,該公開案特此以全文引用之方式併入本文中。然而,z/Architecture指令集架構僅為一個實例架構;國際商業機器公司及/或其他實體之其他架構及/或其他類型之計算環境可包括及/或使用本發明之一或多個態樣。z/Architecture及IBM為國際商業機器公司在至少一個管轄區域中之商標或註冊商標。
參考圖1A,在一個實例中,計算環境100包括中央處理器複合體(CPC)101。中央處理器複合體101包括複數個組件,諸如記憶體102(亦稱為系統記憶體、主記憶體、主儲存器、中央儲存器、儲存器),其耦合至一或多個處理器,諸如一或多個通用處理器104(亦稱為中央處理單元(CPU)),且耦合至輸入/輸出(I/O)子系統108。
I/O子系統108可為中央處理器複合體之一部分或與其分離。其導引主儲存器102與耦合至中央處理器複合體之輸入/輸出控制單元110及輸入/輸出(I/O)裝置112之間的資訊流。
可使用許多類型之I/O裝置。一種特定類型為資料儲存裝置114。資料儲存裝置114可儲存一或多個程式116、一或多個電腦可讀程式指令118及/或資料等。電腦可讀程式指令可經組態以進行本發明之態樣之實施例的功能。
中央處理器複合體101可包括及/或耦合至可移除式/不可移除式、揮發性/非揮發性電腦系統儲存媒體。舉例而言,其可包括及/或耦合至不可移除式非揮發性磁性媒體(通常稱為「硬碟機」)、用於自可移除式非揮發性磁碟(例如「軟碟」)讀取及寫入至該可移除式非揮發性磁碟之
磁碟驅動機,及/或用於自諸如CD-ROM、DVD-ROM或其他光學媒體之可移除式非揮發性光碟讀取或寫入至該可移除式非揮發性光碟之光碟驅動機。應理解,可結合中央處理器複合體101使用其他硬體及/或軟體組件。實例包括但不限於:微碼或毫碼、裝置驅動器、冗餘處理單元、外部磁碟機陣列、RAID系統、磁帶機及資料存檔儲存系統等。
此外,中央處理器複合體101可與大量其他通用或專用計算系統環境或組態一起操作。可適合於與中央處理器複合體101一起使用之熟知計算系統、環境及/或組態之實例包括但不限於:個人電腦(PC)系統、伺服器電腦系統、薄用戶端、厚用戶端、手持型或膝上型電腦裝置、多處理器系統、基於微處理器之系統、機上盒、可程式化消費型電子器件、網路PC、小型電腦系統、大型電腦系統及包括上述系統或裝置中之任一者的分散式雲端計算環境以及類似者。
在一或多個實施例中,中央處理器複合體101提供邏輯分割及/或虛擬化支援。在一個實施例中,如圖1B中所展示,記憶體102包括例如一或多個邏輯分割區120a、120b,處理邏輯分割區之超管理器121,及處理器韌體122。超管理器121之一個實例為由紐約阿蒙克市國際商業機器公司提供之處理器資源/系統管理器(PR/SMTM)。PR/SM為國際商業機器公司在至少一個管轄區域中之商標或註冊商標。儘管PR/SM作為實例提供,但可根據本發明之一或多個態樣使用其他超管理器。
處理器韌體122包括例如處理器之微碼或毫碼。其包括例如用於實施較高級別機器碼之硬體級別指令及/或資料結構。在一個實施例中,其包括例如專屬碼,該專屬碼通常作為包括受信任軟體之微碼或毫碼、特定針對於基礎硬體之微碼或毫碼遞送,且控制作業系統對系統硬體
之存取。
每一邏輯分割區120a、120b能夠充當單獨系統。亦即,每一邏輯分割區可獨立地重設及/或運行客體作業系統123,諸如由紐約阿蒙克市之國際商業機器公司提供之z/OS®作業系統,或其他控制碼124,諸如亦由紐約阿蒙克市之國際商業機器公司提供之耦合設施控制碼(CFCC)。邏輯分割區120a可藉由不同程式125操作。在邏輯分割區中運行之作業系統或應用程式似乎存取整個完整系統,但實際上,僅該系統之一部分可用。儘管提供z/OS作業系統及耦合設施控制碼作為實例,但可根據本發明之一或多個態樣使用由國際商業機器公司及/或其他公司提供之其他作業系統及/或控制碼。z/OS為國際商業機器公司在至少一個管轄區域中之商標或註冊商標。
如本文中所使用,運行作業系統之邏輯分割區(例如,邏輯分割區120a)稱為邏輯分割區,且運行耦合設施控制碼之邏輯分割區(例如,邏輯分割區120b)稱為耦合設施。
記憶體102耦合至例如CPU 104(圖1A),其為可分配至邏輯分割區及耦合設施之實體處理器資源。舉例而言,邏輯分割區120a包括一或多個邏輯處理器,其中之每一者表示可動態地分配至邏輯分割區之實體處理器資源104中的全部或一部分。耦合設施120b可具有專用於其之一或多個實體處理器。
在又另一實施例中,中央處理器複合體提供虛擬機支援(具有或不具有邏輯分割支援)。如圖1C中所繪示,中央處理器複合體101之記憶體102包括例如一或多個虛擬機126、管理虛擬機之諸如超管理器127的虛擬機管理器,及處理器韌體128。超管理器127之一個實例為由紐約
阿蒙克市之國際商業機器公司提供之z/VM®超管理器。超管理器有時稱為主機。z/VM為國際商業機器公司在至少一個管轄區域中之商標或註冊商標。
中央處理器複合體之虛擬機支援提供操作大量虛擬機126之能力,該等虛擬機126各自能夠用不同程式129操作且運行客體作業系統130,諸如Linux®作業系統。每一虛擬機126能夠充當單獨系統。亦即,每一虛擬機可獨立地重設,運行客體作業系統,且藉由不同程式操作。在虛擬機中運行之作業系統或應用程式似乎存取整個完整系統,但實際上,僅該系統之一部分可用。儘管提供z/VM及Linux作為實例,但可根據本發明之一或多個態樣使用其他虛擬機管理器及/或作業系統。註冊商標Linux®係依照來自Linux基金會(Linux Foundation)之轉授權而使用,該基金會為該商標在全球範圍內的所有者Linus Torvalds之獨家被授權人。
在一或多個態樣中,邏輯分割區120a及耦合設施120b彼此耦合,且訊息在其之間傳輸。參考圖2A描述邏輯分割區120a與耦合設施120b之間的通信之其他細節。在一個實例中,每一邏輯分割區120a經由通道子系統200(其可為例如I/O子系統108之一部分)耦合至耦合設施120b。通道子系統200至少使用一或多個耦合通道(亦稱為通道、系統間通道或通信鏈路)210在邏輯分割區與耦合設施之間通信。
作為一個實例,邏輯分割區經由例如發送訊息(SMSG)協定通過耦合通道與耦合設施通信。參考圖2B描述此通信之實例。
參考圖2B,在一個實施例中,發送訊息指令220用於將訊息自邏輯分割區120a發送至耦合設施120b。發送訊息指令220包括例如指定發送操作之操作碼(作業碼)欄位222、基本欄位(B2)224及位移欄位(D2)
226。在一個實例中,由添加至D2欄位226中之值的B2欄位224指明的暫存器之內容指定指示待用於發送訊息之訊息操作區塊232之位置的位址。發送訊息指令220亦使用隱含暫存器來指明例如定位於通道子系統200中之子通道234。子通道專用於可由通道子系統存取的裝置,且提供例如儲存器以包括關於裝置之資訊。子通道用於在處理器與耦合設施之間及/或耦合設施之間通信。
下文描述用於發送訊息指令之訊息操作區塊232之一個實例。儘管描述各種欄位,但訊息操作區塊可具有額外、較少及/或其他欄位。此外,儘管欄位設定為特定值,但其可設定為另一值。另外,本文中所描述之欄位可為一個大小,但在其他實施例中,其可為其他大小。其他變化為可能的。
在一個實例中,訊息操作區塊232包括例如:非同步操作(A)236:此欄位在設定為一時指示發送訊息之異步執行;訊息命令區塊(MCB)位址238:此欄位指向訊息命令區塊(MCB)264/訊息回應區塊(MRB)266對。此等例如為位於例如主記憶體中之256位元組緩衝器。訊息命令區塊264包括發送至耦合設施之一或多個參數,且當回應返回時,其直接儲存至訊息回應區塊266;訊息緩衝器位址清單(MBAL)位址240:此欄位指向訊息緩衝器位址清單268。MBAL清單為自例如1至16之可變長度清單。其包括指明一或多個訊息緩衝器(本文中亦稱為緩衝器)272之一或多個訊息緩衝器位址字(MBAW)270。緩衝器可為用於至耦合設施120b之寫入操作的來源或自耦合設施之讀取操作的目標;
MBAL長度242:此欄位指示MBAL清單之長度。並非所有命令必須具有訊息緩衝器位址清單,且因此長度可為零;V-緩衝概要群組有效(V)指示符244:此欄位在設定(例如為一)時指示緩衝概要群組(BSG)值有效。在設定此指示符時,在一個實例中,訊息操作區塊之非同步操作指示將設定(例如為一);及緩衝概要群組246:此欄位表示無符號二進位整數值,其指示緩衝概要群組包括概要指示,該等概要指示將指示訊息回應區塊回應已到達此發送訊息操作。
在一個實施例中,在執行發送訊息時,來自訊息操作區塊之參數傳遞至CPU或通道子系統,從而請求藉由與通道子系統之指定子通道相關聯之耦合設施進行發送功能。發送功能與發送訊息同步地或非同步地執行。
藉由使用子通道中之資訊尋找至耦合設施之路徑而執行發送功能。使用該路徑,訊息操作經轉遞至耦合設施。舉例而言,訊息操作之執行藉由以下操作來實現:將命令資訊傳遞至耦合設施、解碼及執行命令、制定指示結果之回應資訊及將回應資訊儲存於訊息回應區塊中。
在一個實施例中,發送訊息指令為訊息設施之部分,該訊息設施為提供用以在系統(實體或邏輯)之間傳達資訊之機構的系統構造。訊息設施使用緩衝器(例如,通道緩衝器、訊息緩衝器)之構造在系統之間移動資訊。緩衝器提供含有將傳遞之資訊,以及關於用於傳遞系統之間的資訊之操作的狀態之資訊的設施。訊息設施提供多個緩衝器,其經指派至通信通道(例如,耦合通道)。
緩衝器具有能夠發起資訊之傳送或接收處理發起之資訊的
請求的預定義特性。舉例而言,如圖3中所展示,實例緩衝器包括發起者緩衝器310、接收者緩衝器320、主要緩衝器330及次要緩衝器340,其中之每一者在本文中描述。發起者緩衝器310發起操作且可提供命令及發送/接收資料。接收者緩衝器320接收資訊且允許處理命令、接收/發送資料且將回應資訊發送回至發起者緩衝器。發起者及接收者緩衝器在邏輯連接對中經指派1至1。主要緩衝器330及次要緩衝器340為在處理器與耦合設施之間的通信中及在例如耦合設施至耦合設施通信中使用之緩衝器。
作為實例,發起者緩衝器具有以下操作狀態:閒置-可用於接受將發送至接收者緩衝器之命令;忙碌-操作進行中;及所接收及辨識之命令回應。作為實例,接收者緩衝器具有以下操作狀態:閒置-沒有正在進行的命令操作;所接收及辨識之命令;資料傳送完成;及返回至發起者之回應資訊。
根據本發明之一或多個態樣,緩衝器可指派至特定緩衝概要群組。在一個實例中,組態(例如,計算環境、中央處理器複合體等)經組態以包括複數個緩衝概要群組,且緩衝概要群組中之一或多者具有指派至其之一或多個緩衝器。支援多少緩衝概要群組取決於模型,但在一個實例中,存在多達32個緩衝概要群組。在其他實施例中,可存在額外或更少緩衝概要群組。緩衝概要群組分配於選擇位置中,該選擇位置在一個實例中由耦合設施界定且由耦合設施使用。舉例而言,如圖4A中所展示,緩衝概要群組包括於記憶體之區域(在本文中稱為通道緩衝概要回應區域400)中,且每一緩衝概要群組402位於該區域中之選定偏移404處。在一個實例中,每一緩衝概要群組之大小為256位元組(例如,一個快取線);然而,在其他實施例中,其可為其他大小。
在一個實例中,通道緩衝概要回應區域400為其起始位址由例如準備通道緩衝器指令界定之儲存器區塊。區域包括例如編號為0至31之32個連續的256位元組區域集合。每一256位元組區域稱為緩衝概要群組。每一群組含有例如在本文中稱為指示符之複數個(例如五個)概要雙字。
每一指示符含有例如單個位元指示(例如,雙字之位元0),其指定是否已發生經指派以在彼特定緩衝概要群組中指示之一或多個相關聯事件。在一個實例中,指示符藉由硬體設定且藉由耦合設施重設。在其他實施例中,其可由其他實體設定及/或重設。
作為實例,如圖4B中所展示,緩衝概要群組402之指示符包括例如:
命令活動概要410:當MCB到達在準備通道緩衝器指令時間已註冊至特定概要群組之接收者主要緩衝器時,緩衝概要群組之此指示符(例如,字0之位元0)藉由系統(例如,中央處理器複合體之處理器架構)設定。
次要到達概要412:當MCB到達已暫訊至特定概要群組之接收者次要緩衝器及含有待設定向量位元之向量之特定位元組時,緩衝概要群組之此指示符(例如,字2之位元0)藉由系統設定。此註冊在例如測試向量條目指令時間發生。
回應活動概要414:當MRB到達在例如發信通道緩衝器指令時間已註冊至特定概要群組之發起者次要緩衝器或在該發起者次要緩衝器上偵測狀態條件時,緩衝概要群組之此指示符(例如,字4之位元0)藉由系統設定。
最終資料活動/資料備妥概要416:當作為實例在準備通道緩衝器指令時間已註冊至特定概要群組之主要接收者緩衝器處設定資料活動或設定資料備妥或偵測狀態條件時,緩衝概要群組之此指示符(例如,字6之位元0)藉由系統設定。
在一個實例中,對耦合設施之寫入命令使用資料活動指示之通道將同步地執行移動通道緩衝器資料多重指令,且因此僅在通道緩衝器操作區塊(CBOB)之緩衝器狀態區域中而不在通道緩衝概要回應區域中指示最終資料活動指示。
通道緩衝器操作區塊存在於例如主儲存器中,且藉由準備通道緩衝器指令創建。當準備通道緩衝器時,通道子系統在執行訊息處理器功能時儲存至通道緩衝器操作區塊之欄位中。程式藉由例如測試通道緩衝器指令重設通道緩衝器操作區塊內及追蹤條目外部之欄位。
在一個實例中,存在包括奇偶對通道緩衝器操作區塊之通道緩衝器操作區塊對,且當接收功能或發送次要功能針對通道緩衝器活動時,系統間通道硬體儲存至通道緩衝器操作對中且自該通道緩衝器操作對提取。
該對之每一通道緩衝器操作區塊包括例如訊息命令區塊、訊息回應區塊、命令活動或回應活動指示符、資料活動指示符、操作id、請求欄位、狀態欄位及追蹤條目。在其他實施例中,通道緩衝器操作區塊可包括額外、較少及/或其他資訊。
主要完成概要418:當MRB到達在發送訊息指令時間已註冊至特定概要群組之發起者主要緩衝器或在該發起者主要緩衝器上偵測狀態條件時,緩衝概要群組之此指示符(例如,字8之位元0)藉由系統設定。
額外、較少及/或其他指示符可包括於緩衝概要群組中。
如本文中所指示,各種系統指令用於促進界定、註冊及/或使用指派至其之緩衝概要群組及/或緩衝器。作為實例,準備通道緩衝器指令用於提供位址之組態級別定義以含有通道緩衝概要回應區域,且向個別通道緩衝器之準備提供通道緩衝概要回應區域內之特定緩衝概要群組;發送訊息(SMSG)指令用於提供使用緩衝概要群組之指示,且提供特定群組數目;發信通道緩衝器(SCB)指令用於提供使用緩衝概要群組之指示,且提供用於完成概要(發起者)之特定群組數目;定位通道緩衝器(LCB)指令用於辨識在緩衝器(例如,接收者緩衝器)中接收命令,以將「找到工作」或「未找到工作」之回應限制於特定群組,且指示所有群組(若選擇);移動通道緩衝器資料多重(MCBDM)指令用於指示在概要到達之後立即可用的資料或重新執行指令之需要;界定向量指令用於界定耦合清單通知向量;測試向量條目指令用於在特定向量位元變得活動時請求對概要之指示-暫存器至緩衝概要群組;且設定向量條目指令用於界定及提供用於系統上之狀態改變指示之向量,且請求緩衝概要群組註冊之重設(去註冊)。
指令中之一或多者(例如,準備通道緩衝器、發信通道緩衝器、定位通道緩衝器、移動通道緩衝器資料多重及測試通道緩衝器)使用選擇暫存器(諸如,通用暫存器1)之內容作為隱含運算元。在一個實例中,選擇位元(例如,位元0及位元27至31)用於指示與指令調用之動作相關聯的緩衝概要群組之使用。彼等位元(若存在)之使用將參考以下指令中之每一者描述。此外,在一個實例中,通用暫存器1之選擇位元(例如,位元32至63)包括通道緩衝器符記或控制程式符記。通道緩衝器符記經提供
至控制程式,且當準備通道緩衝器時由控制程式提供控制程式符記,且持續直至在尚未準備通道緩衝器或執行系統重設之後隨後準備通道緩衝器為止。
下文描述包括通道緩衝器符記之通用暫存器1之一個實例。作為實例,其包括例如:有效性(V):當此欄位(例如,通用暫存器1之位元0)針對不忽略之指令設定為一(例如,通用暫存器1之位元0至31)時,所指示緩衝概要群組有效。否則,忽略或保留位元1至31。
緩衝概要群組(BSG):此欄位(例如,通用暫存器1之位元27至31)表示指示待用於指令操作之緩衝概要群組數目的無符號二進位整數。若有效性指示符(V)為例如0,則忽略此欄位中之值。此欄位中之有效值為例如0至30;在一個實例中,保留位元31及因此相關聯緩衝概要群組。
本文中所描述之指令中之每一者可具有一或多個欄位,且每一欄位可具有特定大小及/或位置(例如,指令格式之某些位元)。然而,本文中所提供之欄位、大小及/或位置僅為實例;可使用額外、較少及/或其他欄位、大小及/或位置。另外,每一欄位可設定為特定值;然而,可使用額外、較少及/或其他值。此外,儘管描述各種條件及/或處理,但可應用額外、較少及/或其他條件及/或處理。許多變化為可能的。
在一個實例中,參考圖5A,準備通道緩衝器指令500包括用以指示準備通道緩衝器操作之操作碼欄位502、基本欄位(B2)504及位移欄位(D2)506。在一個實例中,由添加至D2欄位506中之值的B2欄位504指明的暫存器之內容指定如下文所描述使用之第二運算元位址。在一個實
例中,準備通道緩衝器指令由耦合設施執行。
在操作中,準備通道緩衝器指令基於所指明通道緩衝器操作區塊中之請求欄位執行以下操作中之一或多者:準備功能與指令之執行同步地執行。因此,對於通道緩衝器,程式影響與次要發送或接收功能有關之處理的某些態樣。
將通道緩衝器中之追蹤條目複製至通道追蹤區域。
將鏈路之多元程式規劃請求級別(MPRL)儲存於通道緩衝器操作區塊中。
第二運算元位址指明訊息操作區塊。不確定位址為真實還是絕對的。
當所得條件碼為例如零時,通道緩衝器符記以選擇暫存器(例如,通用暫存器1)之選擇位元(例如,32至63)返回。
在一個實例中,準備通道緩衝器指令之訊息操作區塊為例如64位元組長,且在一個實例中包括以下各者:界定緩衝概要區域(DBS):當此欄位(例如,字0之位元6)為例如一時,通道緩衝概要回應區域藉由使用下文所描述之通道緩衝概要回應區域位址而針對組態界定。此操作將在可執行產生條件碼0之任何準備通道緩衝器指令之前執行。
接收功能類型(R):當R位元(例如,字0之位元7)為一時,通道緩衝器經準備參與接收功能。當R位元為零時,通道緩衝器準備參與次要發送功能。
通道子系統影像識別符(CSSID):此欄位(例如,字1之位元8至15)包括通道子系統影像識別符。
通道路徑識別符(CHPID):此欄位(例如,字1之位元16至23)包括通道路徑識別符。
通道緩衝器數目(N):此欄位(例如,字1之位元24至31)包括通道緩衝器數目。
通道緩衝器操作區塊位址:此欄位(例如,字2至3之位元0至63)指明儲存器中通道緩衝器操作區塊對之位置。不確定位址為真實還是絕對的。
控制程式符記:作為實例,當R位元為一時,此欄位(例如,字6之位元0至3)包括控制程式符記,其可在定位通道緩衝器指令以條件碼0完成時返回。在一個實例中,零之控制程式符記無效。當R位元為零時,保留此欄位。
緩衝概要群組:當R位元為一時,此欄位(例如,字7之位元27至31)包括無符號二進位整數(例如,5個位元),其表示進入基本通道緩衝概要回應區域之群組偏移。當MCB到達此緩衝器時,所指示緩衝概要群組之命令活動概要位元將設定為例如一,且當緩衝器處之條件導致最終資料活動/資料備妥之設定時,所指示緩衝概要群組之相關聯位元將設定成一。當R位元為零時,保留此欄位。
通道緩衝概要回應區域位址(CBS@):在一個實例中,當DBS位元為例如一時,此欄位(例如,字8至9之位元0至63)包括用於組態之通道緩衝概要回應區域之基本位址。此位址將處於例如256位元組邊界上。在DBS位元設定為例如一之準備指令之第一執行之前,將不存在可用之通道緩衝概要回應區域。一旦成功地執行以建立通道緩衝概要回應區域位址,在執行系統重設之前,該值不會改變。當R位元為零或DBS位元為
零時,保留此欄位。
在操作中,若應用以下條件中之任一者,則設定條件碼(例如3)且不採取其他動作:通道緩衝器並不提供於通道子系統中。
通道緩衝器並不與耦合設施通道相關聯。
通道緩衝器不可用於選擇。
作為實例,當用於所指明通道緩衝器之控制參與其他系統活動時,設定條件碼2且不採取其他動作。
所指明通道緩衝器操作區塊中之請求欄位之位元0為追蹤請求位元。當追蹤請求位元為一時,辨識到追蹤請求,且通道緩衝器中之追蹤條目複製至通道追蹤區域。
所指明通道緩衝器操作區塊中之請求欄位之位元1為MPRL請求位元。當MPRL請求位元為一時,用於鏈路之高效訊息路徑請求級別置放於請求欄位之MPRL區域中(例如,請求欄位之位元48至63)。高效MPRL為鏈路之訊息設施及耦合設施末端上之緩衝器之數目中的較低者。當鏈路初始化尚未完成時,MPRL儲存為零。
當追蹤請求或MPRL請求位元中之任一者或兩者為一時,指令接著藉由設定條件碼(例如1)完成。
當追蹤請求及MPRL請求位元兩者為例如零時,執行準備功能,如下文所描述。
準備功能--若通道緩衝器數目為偶數且通道緩衝器閒置,則準備偶數通道緩衝器操作區塊(CBOB)。若通道緩衝器數目為奇數且通道緩衝器閒置,則準備奇數通道緩衝器操作區塊。在一個實例中,準備
CBOB之額外要求如下:在較舊模型上,若通道緩衝器數目為奇數,則對應偶數編號之CBOB將處於準備狀態。
在較新模型上,在一個實例中,應用以下各者:當通道緩衝器數目為偶數,且已準備對應奇數編號之通道緩衝器時,則訊息操作區塊中之CBOB位址將匹配在準備奇數編號之緩衝器時所使用的CBOB位址。
當通道緩衝器數目為奇數,且已準備對應偶數編號之通道緩衝器時,則訊息操作區塊中之CBOB位址將匹配在準備偶數編號之緩衝器時所使用的CBOB位址。
將進行界定緩衝概要區域操作以在任何通道緩衝器之準備功能之前界定通道緩衝概要回應區域位址。
在通道緩衝器準備功能完成時,由準備功能指派之緩衝器概要群組中之命令活動概要指示符將設定為一。此提供藉由耦合設施控制碼執行LCB指令之主動性,且確保辨識及清除任何未完成錯誤狀態未決條件。
當已準備通道緩衝器且執行改變緩衝概要群組操作時,由準備指令指派之緩衝概要群組中之命令活動概要指示符將設定為一。此提供藉由耦合設施控制碼執行LCB指令之主動性,且確保辨識及清除任何未完成錯誤狀態未決條件。
若已準備所指明通道緩衝器,且自針對此緩衝器之先前準備以來緩衝概要群組值尚未改變,則設定條件碼(例如1),且不採取其他動作。若已準備所指明通道緩衝器,且自針對此緩衝器之先前準備通道緩
衝器指令以來緩衝概要群組值已改變,則新緩衝概要群組值置放於通道緩衝器處,且設定條件碼(例如1)。否則,在一個實施例中,發生以下各者:當通道緩衝器操作區塊準備用於接收或次要發送功能時,將通道路徑及通道緩衝器指派至該通道緩衝器操作區塊。
將來自訊息操作區塊之值置放於通道緩衝器處。
通道緩衝器進入準備狀態。
通道緩衝器符記在例如通用暫存器1之位元32至63中返回。
指令藉由設定條件碼0而完成。
當通道緩衝器進入未準備狀態時,撤銷通道路徑及通道緩衝器至通道緩衝器操作區塊之任何指派。
在一或多個態樣中,當中央處理器複合體在基本模式中操作時,辨識到操作異常。當所保留欄位為非零或控制程式符記為零時,不確定是否辨識到運算元異常。
當發生以下各者中之任一者時,辨識到規範異常:界定緩衝概要區域位元設定為一,且:通道緩衝概要回應區域位址未在例如256位元組邊界上,或已針對組態執行操作,或通道緩衝概要回應區域位址(CBS@)值為零,或通道緩衝概要回應區域位址(CBS@)值加例如8191超出組態內之儲存。
在界定緩衝概要區域操作之前請求之通道緩衝器準備功能已界定用於組態之通道緩衝概要回應區域位址。
緩衝概要群組值無效。
第二運算元並不指明例如64位元組邊界,通道緩衝器操作區塊位址並不指明例如8192位元組邊界,或取決於模型,以下中之一者為真實的:通道緩衝器數目為奇數,且對應偶數編號之CBOB並不處於準備狀態。
以下中之任一者為真實的:當準備偶數編號之通道緩衝器時,已準備對應奇數編號之通道緩衝器,且訊息操作區塊中之CBOB位址並不匹配在準備奇數編號之緩衝器時所使用的CBOB位址。
當準備奇數編號之通道緩衝器時,已準備對應偶數編號之通道緩衝器,且訊息操作區塊中之CBOB位址並不匹配在準備偶數編號之緩衝器時所使用的CBOB位址。
實例所得條件碼包括:
0 準備通道緩衝器或建立通道緩衝概要回應區域位址
1 已準備通道緩衝器,處理追蹤請求,或處理MPRL請求,或重新指派緩衝概要群組
2 忙碌
3 不可用
在一或多個態樣中,準備通道緩衝器指令提供位址之組態
級別定義以含有通道緩衝概要回應區域。其使用界定緩衝概要區域操作來界定用於創建通道緩衝概要回應區域之通道緩衝概要回應區域位址。此外,準備通道緩衝器指令向個別通道緩衝器之準備提供通道緩衝概要回應區域內之特定緩衝概要群組。
根據本發明之一或多個態樣使用之另一指令為發信通道緩衝器指令,參考圖5B描述其實例。在一個實例中,發信通道緩衝器指令510包括用以指定發信通道緩衝器操作之操作碼欄位512及暫存器欄位(R1)514。在一個實例中,發信通道緩衝器由耦合設施執行。
在一個實例中,次要發送功能開始或接收功能與指令之執行同步地完成。
當所指明通道緩衝器準備參與次要發送功能時,在所指明訊息裝置處啟動次要發送功能,測試追蹤請求位元,且重設請求欄位及回應活動控制。
當所指明通道緩衝器準備參與接收功能時,在所指明訊息裝置處完成接收功能,測試追蹤請求位元,且重設請求欄位及命令活動控制。
對於次要發送功能,作為實例,通用暫存器1之選擇位元(例如,位元0及位元27至31)含有關於用於操作之緩衝概要群組之資訊。
對於接收功能完成,作為實例,忽略通用暫存器1之選擇位元(例如,位元0至31)。
在一個實例中,通用暫存器1之選擇位元(例如,位元32至63)含有通道緩衝器符記,其指明所使用之通道緩衝器。此外,通用暫存器R1含有訊息操作字。
在一個實例中,含於訊息操作字中之控制值置放於通道緩衝器處。
當請求欄位之位元0為B' 1'時,辨識到追蹤請求,且通道緩衝器中之追蹤條目複製至通道追蹤區域。
當已採取上文所概述之動作時,設定條件碼0。
在一個實例中,訊息操作字指定是否針對次要發送功能出現診斷超時,是否捨棄訊息回應區塊及區塊之長度。
作為實例,訊息操作字包括以下各者:逾時(T):當安裝發信通道緩衝器(SCB)-診斷逾時設施時,此欄位(例如,位元4)為逾時控制且如下操作:當此欄位為一,且所指明通道緩衝器準備參與次要發送功能時,藉由通道與發信通道緩衝器指令之執行非同步地辨識鏈路逾時條件,但例如緊接在藉由通道辨識次要發送功能之後。
當此欄位為零,或所指明通道緩衝器準備參與接收功能時,歸因於T控制而未辨識鏈路逾時。仍可歸因於訊息訊框協定而辨識逾時條件。
當並未安裝SCB-診斷逾時設施時,保留此欄位。
捨棄緩衝器(D):當此欄位(例如,位元5)為一且發送訊息命令區塊時,丟棄訊息回應區塊,但仍設定回應活動位元。
當所指明通道緩衝器準備參與接收功能時,忽略捨棄緩衝器位元。
長度(L):此欄位(例如,位元24至31)指定訊息命令或訊息回應區塊之字的長度。零值指示例如256字之長度。
若訊息命令區塊中之異動回應大小為零,則長度欄位將含有例如1與64之間的值。否則,可辨識到運算元異常。
接收功能:在接收功能之一個實例中,當在完成該功能時未辨識到狀態條件時,將通道緩衝器置於閒置狀態。否則,使得通道緩衝器狀態未決,且其保持於該狀態,直至藉由例如測試通道緩衝器或子系統重設清除狀態條件。
在一個實例中,對於接收功能,當執行準備通道緩衝器指令時,通道緩衝器經指派參與接收功能。當命令信號到達通道緩衝器且通道緩衝器並非狀態未決時,通道子系統啟動接收功能。作為實例,執行接收功能包括採取以下動作:將命令資訊及任何伴隨資料儲存於主儲存器中;當安裝且啟用耦合相關配接器中斷用於共用引擎設施時,辨識耦合相關配接器事件;暫停接收功能以准許程式進行命令處理;恢復接收功能且發送回應資訊及任何伴隨資料;及辨識狀態條件。
次要發送功能:在次要發送功能之一個實例中,當在執行該功能時未辨識到狀態條件時,將通道緩衝器置於閒置狀態。否則,使得通道緩衝器狀態未決,且其保持於該狀態,直至藉由例如測試通道緩衝器或子系統重設清除狀態條件。
當在通道緩衝器處設定回應活動時,若通用暫存器1之有效性位元(例如,位元0)設定為一,則在通道緩衝概要回應區域中用於通用暫存器1中所界定之緩衝概要群組數目的回應活動概要位元(例如,位元27至31)亦設定為一。
在一或多個態樣中,作為實例,應用以下條件:在發信通道緩衝器之執行期間進行針對特殊條件之測試。當辨識到任何特殊條件
時,通道緩衝器之內容不變,且不啟動與裝置之通信。
若通道緩衝器在執行發信通道緩衝器時狀態未決或在指令之執行期間變得狀態未決,則設定條件碼1且不採取其他動作。
當通道緩衝器既不處於命令活動、潛在重試未決,亦不處於狀態未決,且請求接收功能時或當用於所指明通道緩衝器之控制參與其他系統活動時,設定條件碼2且不採取其他動作。
當通道緩衝器不準備用於次要發送功能而請求次要發送功能,或不準備用於接收功能而請求接收功能時,設定條件碼3且不採取其他動作。
當辨識到任何程式異常條件時,抑制發信通道緩衝器之執行。
當中央處理器複合體在基本模式中操作時,辨識到操作異常。
若例如通用暫存器1之位元0設定為一,且緩衝概要群組值無效,則在次要發送功能上辨識到規範異常。
當在通用暫存器R1中錯誤指定值時,可辨識到運算元異常。即使亦存在與存取異常相關聯之條件,但亦可指示條件。
當所保留欄位為非零時,不確定是否辨識到運算元異常。
實例所得條件碼包括:
0 功能啟動
1 狀態未決
2 忙碌
3 未準備
在一或多個態樣中,對於發信通道緩衝器指令,當在通道緩衝器處設定回應活動時,若例如通用暫存器1中之有效性位元設定為例如一,則在通道緩衝概要回應區域中用於所指定緩衝概要群組數目之回應活動概要位元設定為例如一。
由例如耦合設施使用之另一指令為定位通道緩衝器指令。在一個實例中,參考圖5C,定位通道緩衝器指令520包括指示定位通道緩衝器操作之操作碼欄位522。
在一個實施例中,當例如準備用於接收功能之所有通道緩衝器的訊息路徑狀態並非錯誤狀態未決時,或當例如準備用於接收功能及命令活動之所有通道緩衝器的訊息路徑狀態並非錯誤狀態未決時,在選擇位置(例如,通用暫存器1之位元32至63)中返回控制程式符記。
當通用暫存器1之有效性位元(例如,位元0)設定為一時,指令之回應在返回條件碼0時僅應用於先前準備用於接收功能及由例如通用暫存器1之位元27至31中之值指示的所指定緩衝概要群組的通道緩衝器。當有效性位元設定為零時,回應應用於例如先前準備用於接收功能之所有通道緩衝器,而不管任何緩衝概要群組指派。
當準備用於接收功能之可應用通道緩衝器中無一者已接收尚未由例如定位通道緩衝器返回之命令時,返回之控制程式符記為零。
當準備用於接收功能之可應用通道緩衝器中之一或多者已接收尚未由例如定位通道緩衝器返回之命令時,且未安裝訊息時間定序設施,或安裝訊息時間定序設施,且訊息標頭中之訊息時間定序位元為零,或
訊息標頭中之訊息時間定序位元為一,且訊息標頭中之訊息時間戳記小於包含於例如處理器之當日時間(TOD)時鐘之位元32至55中的值,接著返回與此等通道緩衝器中之一者相關聯的控制程式符記。
當已採取上文所概述之動作時,設定條件碼0。
可應用一或多個特殊條件,如下文所描述:在一個實例中,在定位通道緩衝器之執行期間進行針對特殊條件之測試。當辨識到任何特殊條件時,通道緩衝器之內容不變。
若與準備用於接收功能之任何通道緩衝器相關聯的訊息路徑狀態處於錯誤狀態未決,或若與準備用於接收功能及命令活動之任何通道緩衝器相關聯的訊息路徑狀態處於錯誤狀態未決,則不管任何緩衝概要群組關聯,設定條件碼(例如1)且不採取其他動作。
當安裝訊息時間定序設施時,訊息標頭中之訊息時間定序位元為一,且訊息標頭中之訊息時間戳記大於包含於例如處理器TOD時鐘之位元32至55中的值超過例如一毫秒,則發送器及接收器TOD時鐘被認為充分不同步的,以排除藉由訊息時間定序設施進行之恢復。在此情況下:回應時間指示限定符(RTIQ)設定為零,且回應碼(例如254)以指示超出延遲時間之例如16的狀態條件返回至發送器。
當安裝訊息時間定序設施時,訊息標頭中之訊息時間定序位元為一,且訊息標頭中之訊息時間戳記大於或等於包含於例如處理器TOD時鐘之位元32至55中的值,但此等值之間的差小於例如一毫秒,則
通道緩衝器之訊息被認為對於LCB處理不合格。在此情況下,訊息在通道緩衝器中保持未決,且不返回其符記。另外,在此情況下,若無其他緩衝器藉由合格命令可用,則設定條件碼(例如2)且通用暫存器1保持不變。
實例所得條件碼包括:
0 控制程式符記返回
1 錯誤狀態未決
2 訊息時間定序延遲
3 --
待由耦合設施使用之另一指令為移動通道緩衝器資料多重指令。在一個實例中,參考圖5D,移動通道緩衝器資料多重指令530包括用以指定移動通道緩衝器資料多重操作之操作碼欄位532、第一暫存器欄位(R1)534及第二暫存器欄位(R2)536。
在一個實施例中,接收功能藉由所指明中央處理器複合體裝置繼續,且與指令之執行不同步。
在一個實例中,通用暫存器1之選擇位元(例如,位元0至31)經保留,且應在指令執行時間含有零。作為實例,通用暫存器1之位元2用於當設定條件碼(例如2)時在指令完成時間來自指令之回應資訊。
移動通道緩衝器資料多重指令使用在用於緩衝器之準備通道緩衝器指令時間設定的緩衝概要群組。
在一個實例中,通用暫存器1之選擇位元(例如,位元32至63)含有通道緩衝器符記,其指明所使用之通道緩衝器。
此外,在一個實例中,通用暫存器R1之選擇位元(例如,位元32至63)含有訊息操作字,下文描述其實例。此外,在右側用例如11
個零填補之通用暫存器R2之選擇位元(例如,位元0至52)構成訊息資料元件位址清單(MDEAL)之主儲存器位址。不確定主儲存器位址為真實還是絕對的。
在一個實例中,通用暫存器R1之內容、通用暫存器R2之選擇位元(例如,位元0至52)及例如所有所指明訊息資料元件之位址置放於通道緩衝器處,且測試追蹤請求位元。在通道緩衝器處重設資料活動及請求欄位。
當請求欄位之位元0為B' 1'時,辨識到追蹤請求,且通道緩衝器中之追蹤條目複製至通道追蹤區域。
當已發生上文所描述之動作時,設定條件碼0。
在操作開始之前執行串列化及檢查點同步功能。在操作完成之後,可或可不執行檢查點同步功能。
在一個實例中,訊息操作字包括關於訊息資料區塊之大小、待傳送之訊息資料區塊之數目、訊息資料元件之大小及訊息資料元件位址清單中之條目之數目的資訊。亦包括用以移動資料之方向。
作為特定實例,由指令使用之訊息操作字包括例如:發送資料(S):當此欄位(例如,位元0)為一時,資料自儲存器移動至通道緩衝器;當此欄位為零時,資料自通道緩衝器移動至儲存器。
訊息資料區塊大小(MBS):此欄位(例如,位元3至5)指定訊息資料區塊之大小。以位元組為單位之長度為例如256與2乘以MBS欄位中指定之整數的冪之乘積。
傳送計數(TC):此欄位(例如,位元11至15)中之值指定待
傳送之訊息資料區塊的數目。
訊息資料元件大小(ES):此欄位(例如,位元19至21)指定訊息資料元件之大小。以位元組為單位之長度為例如256與2乘以ES欄位中指定之整數的冪之乘積。
訊息資料元件位址清單大小(MDEALS):此欄位(例如,位元23至31)中之值指定訊息資料元件位址清單中之條目的數目。
在一個實例中,訊息資料元件位址清單條目包括:主儲存器位址(MSA):此欄位(例如,在右側用(64-N)個零填補之位元0至(N-1))指定訊息資料元件大小之邊界上的主儲存器位址。不確定位址為真實還是絕對的。
在一個實例中,若通道緩衝器處於命令活動而非狀態未決,則繼續接收功能。在通道緩衝器與MDEAL中位址序列中之所指定儲存器位置之間傳送資料。在訊息資料區塊之單元中之鏈路上傳送資料。TC欄位中之值指定待傳送之訊息資料區塊的總數目。
當已傳送所有資料時,通道緩衝器處之最終資料活動指示設定為一,且暫停接收功能。
當MDEALS欄位或TC欄位含有零時,通道緩衝器之內容及例如所有所指定儲存器位置不變,通道緩衝器處之最終資料活動指示設定為一,條件碼設定為零,且暫停接收功能。
在一個實例中,應用以下條件:在移動通道緩衝器資料多重之執行期間進行針對特殊條件之測試。當辨識到以下特殊條件中之任一者時,通道緩衝器之內容及例如所有所指定儲存器位置不變,且不繼續接收功能。
若通道緩衝器在執行移動通道緩衝器資料多重時狀態未決,則設定條件碼1且不採取其他動作。
當通道緩衝器為以下各者時,設定條件碼2且不採取其他動作:既不處於命令活動,亦不處於狀態未決
或當用於所指明通道緩衝器之控制參與其他系統活動時。
或無法完成MCBDM指令,直至資料在通道緩衝器處可用。
對於以上最後一種情況,在一個實例中,通用暫存器1之位元2亦設定為1作為指令之回應。
當通道緩衝器不準備用於接收功能時,設定條件碼3且不採取其他動作。
當中央處理器複合體在基本模式中操作時,或當不安裝MCBDM設施且抑制該操作時,辨識到操作異常。
當任何所保留位元為非零時,或當訊息操作字中之任何運算元無效時,視情況辨識到運算元異常。當辨識到異常時,抑制操作。
實例所得條件碼包括:
0 功能啟動
1 狀態未決
2 忙碌或非命令活動
3 未準備
在一或多個態樣中,移動通道緩衝器資料多重指令使用資料備妥控制來確認接收功能是否已完成接收資料。若其仍在通道緩衝器處
等待資料,則其將藉由作為實例設定為一之通用暫存器1的位元2而設定例如為2之條件碼。當資料可用時,在通道緩衝器操作區塊中指示資料備妥控制。MCBDM指令之重新執行藉由例如0之條件碼完成,且將可用資料移動至程式儲存器中,且最終資料活動指示符在通道緩衝器操作區塊中設定為例如一。若緩衝器在準備通道緩衝器指令執行時間藉由緩衝概要群組準備,則亦在所指定緩衝概要群組中設定概要指示位元。
待由耦合設施使用之另一指令為測試通道緩衝器指令。在一個實例中,參考圖5E,測試通道緩衝器指令540包括用以指定測試通道緩衝器操作之操作碼欄位542、基本欄位(B2)544及位移欄位(D2)546。在一個實例中,由添加至D2欄位546中之值的B2欄位544指明的暫存器之內容指定指示訊息操作區塊之位置的位址。
在一個實例中,儲存通道緩衝器資訊區塊,且當準備通道緩衝器時,測試追蹤請求位元,且通道緩衝器操作區塊中之活動控制、請求欄位及狀態欄位全部經重新設定。
作為實例,通用暫存器1之選擇位元(例如,位元32至63)含有通道緩衝器符記,其指明所使用之通道緩衝器。
第二運算元位址指明訊息操作區塊。不確定位址為真實還是絕對的。
當請求欄位之位元0為B'1'時,辨識到追蹤請求,且通道緩衝器中之追蹤條目複製至通道追蹤區域。
作為實例,測試通道緩衝器之訊息操作區塊為例如64位元組長,且包括例如:通道緩衝器資訊區塊位址:作為實例,字2及3指明通道緩
衝器資訊區塊之儲存器中之位置。不確定位址為真實還是絕對的。
在一個實例中,通道緩衝器資訊區塊包括例如:通道子系統影像識別符;通道路徑識別符;通道緩衝器數目;控制程式符記;通道緩衝器操作區塊對位址;接收功能類型,其指示通道緩衝器準備參與接收功能還是發送次要功能;未準備狀態,其指示通道緩衝器是否處於未準備狀態;命令活動控制,其在設定時指示接收功能已開始;回應活動控制,其在設定時指示次要發送功能繼續;資料活動控制,其在下文描述;請求欄位;及狀態欄位。可包括額外、較少及/或其他資訊。
資料活動控制包括例如:最終資料活動指示符在設定時指示暫停接收功能。當接收資料時,通道子系統在訊息資料區塊在主儲存器中有效且其為與命令相關聯之最後訊息資料區塊時在通道緩衝器處設定最終資料活動。當發送資料時,通道子系統在成功地發送最後訊息資料區塊時在通道緩衝器處設定最終資料活動。
資料備妥指示符在設定例如為一時指示對於需要其之通道,接收功能已完成接收資料且準備好使MCBDM經執行以將所接收資料移動至程式儲存器中。MCBDM將在此位元設定(例如,為一)時針對此等通道同步地執行。當接收資料時,通道子系統在與活動訊息相關聯之資料經完全接收且可用於移動以由MCBDM指令程式化儲存器時在通道緩衝器處設定資料備妥。需要此指示之通道將例如條件碼2呈現至MCBDM指令,其中若資料備妥位元設定為例如零,則例如暫存器1之位元2設定為一。當程式對此等通道執行MCBDM指令且資料備妥位元設定例如為一時,MCBDM指令將以例如條件碼0與程式儲存器中之資料可用性同步地
完成,且用於通道緩衝器之資料活動控制中之最終資料活動位元設定為例如一。
在一個實施例中,當用於所指明通道緩衝器之控制參與其他系統活動時,設定條件碼2且不採取其他動作。
當通道子系統中不提供通道緩衝器時,設定條件碼3且不採取其他動作。
當辨識到任何程式異常條件時,抑制測試通道緩衝器之執行。
當中央處理器複合體在基本模式中操作時,辨識到操作異常。
當在運算元中錯誤指定值時,可辨識到運算元異常。即使亦存在與存取異常相關聯之條件,但亦可指示條件。
當所保留欄位為非零時,不確定是否辨識到運算元異常。
當第二運算元或通道緩衝器資訊區塊位址並不指明例如64位元組邊界時,辨識到規範異常。
實例所得條件碼包括:
0 通道緩衝器資訊區塊儲存
1 --
2 忙碌
3 通道緩衝器未提供
除了經提供為使用訊息設施之指令以外,其他指令經提供為界定及提供用於系統上之狀態改變的向量。根據本發明之一或多個態樣,此等指令經界定為使用一或多個緩衝概要群組。舉例而言,用於耦合
設施至耦合設施通信信令之向量經註冊至一或多個緩衝概要群組,且緩衝概要群組內之指示符用於指示向量狀態改變。在一個實例中,接收者次要緩衝器用於向量狀態改變之緩衝概要群組信令。韌體在例如訊息命令之到達時提供向量改變處理。
用於藉由例如耦合設施進行之向量處理的指令之一個實例為界定向量指令。在一個實例中,參考圖6A,界定向量指令600包括指定界定向量操作之操作碼欄位602、第一暫存器欄位(R1)604及第二暫存器欄位(R2)606。
在一個實例中,對訊息向量執行功能,如藉由例如通用暫存器1之選擇位元(例如,位元32至63)中之值所指定:
十六進制值 執行功能
0000 0000 界定本端快取向量
0000 0001 界定清單通知向量
0000 0002 釋放向量
0000 0003 清除向量
0000 0004 修改向量
0000 0005 界定耦合設施信令向量
在一個實例中,忽略指令之位元16至23。
在一個實施例中,R1欄位指定奇偶對通常暫存器之偶數編號之暫存器。暫存器含有用於釋放、清除或修改功能之本端快取符記(LCT)或清單通知符記(LNT)。清單通知符記或本端快取符記藉由CPU載入至暫存器中用於界定功能。本端快取符記或清單通知符記之位元0至31載入於例如暫存器R1之位元32至63中,且在一個實例中,本端快取符記
或清單通知符記之位元32至63載入於例如暫存器R1+1之位元32至63中。
R2欄位指定用於界定或修改功能之通用暫存器。針對其他功能忽略該欄位。
對於界定或修改功能,R2在暫存器之選擇位元(例如,位元32至63)中含有例如32位無符號二進位整數,其指示程式所請求之向量條目的數目。暫存器中之值指示當例如條件碼0或1藉由指令設定時所指派之條目的數目(NBVE)。在一個實例中,NBVE為32之倍數。
在一個實例中,在操作開始之前且再次在其完成之後執行串列化。
下文描述與功能中之每一者有關的其他細節:界定本端快取向量:指派本端快取向量及其向量符記。在一個實例中,向量條目皆為零。
界定清單通知向量:指派清單通知向量及其向量符記。在一個實例中,向量條目及向量之本端概要指示符皆為零。
釋放向量:本端快取符記或清單通知符記變得未指派。
清除向量:訊息向量之條目重設為零。本端概要(若存在)不變。
修改向量:訊息向量自其最高編號之條目擴展或收縮以達至NBVE條目之長度。擴展前存在之條目不變;新條目為零。收縮後保留之條目不變。向量符記不變。
界定耦合設施信令向量:指派供耦合設施使用之清單通知向量及其向量符記。在一個實例中,向量條目及向量之本端概要指示符皆為零。
耦合設施信令向量提供將向量條目註冊及不註冊至特定緩衝概要群組之額外能力。界定耦合設施信令向量使得此等註冊之系統設施初始化為非活動狀態(無註冊)。
在一個實例中,在組態內界定單個耦合設施信令向量。可對表示耦合設施信令向量之清單通知符記(LNT)執行界定向量指令之釋放向量功能。界定通道緩衝概要回應區域位址之準備通道緩衝器指令將在界定耦合設施信令向量之前執行。
例如通用暫存器R2之位元32至63中之NBVE的最大值為耦合設施信令向量之模型相依值。
可應用一或多個特殊條件。
若條目之所請求數目未經指派,但減少至暫存器R2中所指示之數目,則設定條件碼1。設定條件碼1例如僅用於界定或修改功能。
若無空間可用於界定或擴增向量,或無新符記可用,則設定條件碼2且不採取其他動作。其經設定例如用於界定或修改功能。
若未指派指定用於釋放、清除或修改功能之符記,則設定條件碼3且不採取其他動作。在一個實例中,條件碼3優先於條件碼2。
當R1為奇數或零、R2為零時,或例如通用暫存器1之位元32至63中的值超過例如作業系統分割區之4十六進制或例如耦合設施分割區之5十六進制時,辨識到規範異常。
當例如暫存器R2之位元32至63中的值為以下各者時,辨識到規範異常:針對任何界定向量功能或修改功能為零,或針對界定耦合設施信令向量功能,大於模型相依最大值。
若提供表示耦合設施信令向量之LNT,則辨識到規範異常:且所請求之功能為清除向量或修改向量,或所請求之功能為界定耦合設施信令向量,且先前已界定耦合設施信令向量,或所請求之功能為界定耦合設施信令向量,且先前未執行界定通道緩衝概要回應區域位址之準備通道緩衝器指令。
所得條件碼包括例如:
0 執行功能
1 條目之數目少於請求的
2 向量空間或符記不可用
3 LCT/LNT未指派
在一或多個態樣中,界定向量指令界定耦合設施信令向量。作為實例,清單通知向量及其向量符記經指派以供耦合設施使用。在一個實例中,在界定耦合設施信令向量之前執行準備通道緩衝器指令。
待由耦合設施執行之另一向量指令為測試向量條目指令。在一個實例中,參考圖6B,測試向量條目指令610包括指示測試向量條目操作之操作碼612、第一暫存器欄位(R1)614及第二暫存器欄位(R2)616。
在一個實例中,對一或多個訊息向量條目執行測試,如由例如通用暫存器1之位元32至63中的值指定:
十六進制值 執行功能
0000 0000 測試條目
0000 0001 載入及測試條目
R1欄位指定奇偶對通用暫存器之偶數編號之暫存器。暫存器含有本端快取符記(LCT)或清單通知符記(LNT)。在一個實例中,本端快取符記或清單通知符記之位元0至31含於例如暫存器R1之位元32至63中,且本端快取符記或清單通知符記之選擇位元(例如,位元32至63)含於例如暫存器R1+1之位元32至63中。
R2欄位指定奇偶對通用暫存器之偶數編號之暫存器。暫存器R2含有本端快取條目數目(LCEN)或清單通知條目數目(LNEN)。在LCT或LNT之情況下,條目數目指明向量條目。
在一個實例中,忽略指令之位元16至23。
當LNT符記含於通用暫存器R1中,且R1+1指定耦合設施信令向量,且指定指令之測試條目功能時,通用暫存器1之位元0當設定為一時指示含有所指示向量條目之位元組將註冊用於緩衝概要群組。在一個實例中,通用暫存器1之位元27至31含有無符號二進位整數(例如,五個位元),其指示特定次要到達緩衝概要群組含有概要指示。當含於含有由暫存器R2指定之所指示向量條目之位元組中的任何向量條目由次要命令之到達及處理設定時,所指定次要到達概要群組中之概要位元將設定為一。當符記並不指定耦合設施信令向量時,忽略通用暫存器1之位元0至31。
下文描述關於功能之其他細節:測試條目:測試所指明條目。若條件碼0之值為例如一,則設定條件碼0。若條件碼1之值為例如零,則設定條件碼1。
載入及測試條目:訊息向量條目值載入至暫存器R2+1之低階一半中。所指明條目中之值置放於例如位元32中。在一個實例中,連續條目置放於連續位元中,直至達至暫存器位元63。
暫存器R2中之值將具有例如五個低階零點,其指明例如32條目邊界。
若例如載入至暫存器R2+1中之所有值為一,則設定條件碼0。若值中之任一者為零,則設定條件碼1。
可應用一或多個特殊條件。
若辨識到任何特殊條件,則通用暫存器R2+1不變。
若LCEN/LNEN並不指明向量中之條目,則設定條件碼2。
若未指派LCT/LNT,則設定條件碼3。
若R1或R2為零或奇數,R1等於R2,例如通用暫存器1之位元32至63中之值超過例如1十六進制,或載入及測試功能之LCEN/LNEN並不具有例如五個低階零點,則辨識到規範異常。
當含於通用暫存器R1及R1+1中之LNT符記指定耦合設施信令向量,且所請求之功能為載入及測試條目時,辨識到規範異常。
在一個實例中,當通用暫存器1之位元0設定為一,且通用暫存器1之選擇位元(例如,位元27至31)的值指示緩衝概要群組之無效值時,辨識到規範異常。
實例所得條件碼包括例如:
0 所有條目值為一
1 條目值為零
2 LCEN/LNEN過大
3 LCT/LNT未指派
在一或多個態樣中,測試向量條目指令用於註冊耦合設施信令向量。其提供將向量條目註冊至特定緩衝概要群組之能力。在一個實
例中,在返回向量之狀態之前出現測試向量條目指令上之緩衝概要群組的註冊。在一個實例中,在接收次要MCB以設定含於已註冊之向量位元組中的任何向量位元時,中央處理器複合體確保在設定概要指示之前設定向量條目。
耦合設施信令向量可經由下文所描述之設定向量條目指令取消註冊。其取消註冊一或多個特定緩衝概要群組之向量條目。
參考圖6C描述待由耦合設施使用以例如取消註冊耦合設施信令向量之設定向量條目指令的一個實例。在一個實例中,設定向量條目指令620包括指定設定向量操作之操作碼欄位622、第一暫存器欄位(R1)624及第二暫存器欄位(R2)626。
在一個實例中,根據例如通用暫存器1之位元32至63中的值設定所指明訊息向量條目:
十六進制值 執行功能
0000 0000 設定條目為一
0000 0001 重設條目為零
在一個實例中,忽略指令之位元16至23。
R1欄位指明奇偶對通用暫存器之偶數編號之暫存器。暫存器含有訊息向量之本端快取符記(LCT)或清單通知符記(LNT)。在一個實例中,本端快取符記或清單通知符記之位元0至31含於暫存器R1之選擇位元(例如,位元32至63)中,且本端快取符記或清單通知符記之選擇位元(例如,位元32至63)含於例如暫存器R1+1之位元32至63中。
R2欄位指明通用暫存器。暫存器含有本端快取條目數目(LCEN)或清單通知條目數目(LNEN)。
在一個實例中,當暫存器R1及R1+1之內容含有先前界定之耦合設施信令向量符記時,通用暫存器1之位元0當設定為一時指示由先前測試向量條目指令針對暫存器R2中所指示之向量條目界定的先前次要到達概要群組註冊(若存在)將移除(去註冊)。此將防止任何緩衝概要群組指示在任何MCB到達上呈現,其指明先前已註冊之位元組中之任何所指示向量條目。當符記並不指示有效耦合設施信令向量符記時,忽略通用暫存器1之位元0。
未改變清單通知向量本端或全局概要。
當辨識到任何特殊條件時,向量不變。
若LCEN/LNEN並不指明向量中之條目,則設定條件碼2。
若未指派LCT/LNT,則設定條件碼3。
在一個實例中,當R1為奇數或例如通用暫存器1之位元32至63中的值超過例如1十六進制時,辨識到規範異常。
作為實例,所得條件碼包括:
0 向量條目設定或重設
1 --
2 LCEN/LNEN過大
3 LCT/LNT未指派
上文所描述之指令中之一或多者用於例如處理器與耦合設施之間及/或耦合設施之間的處理。處理器與耦合設施之間的命令處理的一個實例為在耦合設施處用於由處理器發出之寫入命令的接收功能,下文進一步描述其實例。
在一個實例中,當執行準備通道緩衝器指令時,通道緩衝
器經指派參與接收功能。當命令信號到達通道緩衝器且通道緩衝器並非狀態未決時,通道子系統啟動接收功能。作為實例,執行接收功能包括採取以下動作:將命令資訊及任何伴隨資料儲存於主儲存器中;當安裝及啟用用於共用引擎設施之耦合相關配接器中斷時,辨識耦合相關配接器事件;暫停接收功能以准許由程式進行命令處理;恢復接收功能且發送回應資訊及任何伴隨資料;及辨識狀態條件。
參考圖7A描述接收功能處理之一個實施例。在一個實施例中,耦合設施在全系統基礎上輪詢尋找要執行之工作。輪詢由例如對諸如定位通道緩衝器指令之指令進行循環700而執行。當命令到達710耦合設施時,且更特定地,當在耦合設施處之接收者通道緩衝器處接收命令時,開始接收功能。命令資訊使用例如儲存訊息命令區塊指令或其他指令儲存712於訊息命令區塊中。訊息命令區塊區域藉由例如通道緩衝器操作區塊對位址及通道緩衝器處之通道緩衝器數目而定位。通道緩衝器數目之奇偶校驗判定使用偶數訊息命令區塊區域偏移還是奇數訊息命令區塊區域偏移。
在一個實例中,儲存用於接收功能之訊息命令區塊包括例如:訊息時間戳記:當訊息時間定序指示符為例如一時,此欄位(例如,字1之位元0至23)包括訊息時間戳記。
訊息設施域數目:此欄位(例如,字1之位元24至31)識別相關聯訊息設施處之邏輯分割區,訊息處理器操作代表該邏輯分割區執行。
命令計數:此欄位(例如,字2之位元23至31)指定儲存於
訊息命令區塊中之有意義的字之數目。
STP訊息命令:作為實例,此欄位(例如,字3之位元0)當為一時指示命令為伺服器時間協定(STP)訊息命令。當此欄位為例如零時,命令為耦合設施或訊息設施命令。
傳送計數:此欄位(例如,字3之位元11至15)指定傳送計數。舉例而言,其為例如0至16範圍內之無符號二進位整數。當寫入指示符為例如一時,傳送計數指定由通道緩衝器所預期之訊息資料區塊的數目;且當寫入指示符為例如零時,傳送計數指定可由程式發送之訊息資料區塊的最大數目。
寫入指示符:此欄位(例如,字3之位元16)指示當指示符設定例如為一時的寫入操作;且其指示當指示符設定例如為零時的讀取操作。
訊息時間定序:此欄位(例如,字3之位元17)當設定例如為一時指示訊息標頭包括訊息時間戳記;且在設定為例如零時,訊息標頭不含有訊息時間戳記。
異動訊息大小:此欄位(例如,字3之位元18)指定訊息命令區塊及訊息回應區塊之大小。例如零之值指示訊息命令區塊及訊息回應區塊皆具有選擇大小(例如,256位元組)。例如一之值指示訊息-1命令區塊及訊息回應區塊皆具有另一選擇大小(例如,1024位元組)。
傳送大小:此欄位(例如,字3之位元27至31)指定每一訊息資料區塊之在例如256位元組單元中之大小。傳送大小為例如0至16範圍內之無符號二進位整數。
命令資訊:此欄位(例如,字4至255)包括完成命令之規範
的值。
當在通道緩衝器中指示命令活動時,訊息命令區塊中之值有效;否則,不確定訊息命令區塊中之值。
除儲存MCB以外,通道子系統在通道緩衝器處設定命令活動714以指示訊息命令區塊之內容在主儲存器中有效。
在命令到達通道緩衝器之後,伴隨資料使用例如移動通道緩衝器資料多重指令720儲存。舉例而言,基於命令(及伴隨資料)到達724執行移動通道緩衝器資料多重指令722,且使用提供於移動通道緩衝器資料多重指令上之主要位址清單728儲存資料726。
當在移動通道緩衝器資料多重上請求之資料的量大於在通道緩衝器處接收之資料的量時,在一個實例中,用零之填補字擴展資料直至所請求之資料的量。
當資料經儲存時,其自提供於移動通道緩衝器資料多重指令上之主儲存器位址清單移動。通道子系統在通道緩衝器處設定最終資料活動730以指示成功地發送最後一個訊息資料區塊。
接收功能例如同步地在發送訊息回應區塊734之發信通道緩衝器(SCB)指令732上完成。在一個實例中,基於對測試通道緩衝器指令之輪詢循環736而執行設定最終資料活動指示符、完成接收功能及發送訊息回應區塊之處理。舉例而言,作為實例,執行測試通道緩衝器指令,其創建駐存於主儲存器中之通道緩衝器資訊區塊。通道緩衝器資訊區塊包括資料活動控制,其包括最終資料活動指示符。檢查此指示符,且若其設定為指示已發送與命令相關聯之最後一個訊息資料區塊,則執行發信通道緩衝器指令。否則,再次執行測試通道緩衝器指令以檢查最終資料活動指
示符。
在一個實例中,回應資訊自主儲存器中之訊息回應區塊區域移動至通道緩衝器。訊息回應區塊區域藉由通道緩衝器操作區塊對位址及通道緩衝器處之通道緩衝器數目而定位。通道緩衝器數目之奇偶校驗判定使用偶數訊息回應區塊區域偏移還是奇數訊息回應區塊區域偏移。
在一個實例中,主要接收者緩衝器之訊息回應區塊包括例如:回應計數:此欄位(例如,字0之位元21至31)指定儲存於訊息回應區塊中之有意義的位元組之數目。回應計數為無符號二進位整數。其為例如20至1024範圍內的例如四之倍數。字中之回應計數等於發信通道緩衝器訊息操作字中之長度。
所使用之最後路徑掩碼:此欄位(例如,字1之位元0至7)對接收功能沒有意義。
資料計數:此欄位(例如,字1之位元15至23)指定例如儲存於訊息資料區塊中之256位元組區塊的數目。資料計數為例如0至256範圍內之無符號二進位整數。資料計數將不大於訊息命令區塊中之傳送大小與傳送計數的乘積。當訊息命令區塊中之寫入指示符為例如一時,資料計數為例如零。
回應時間指示:此欄位(例如,字2之位元0至23)包括回應時間指示。當回應時間指示限定符為例如零時,此欄位設定為零。當回應時間指示限定符為例如一時,此欄位包括例如24位元無符號整數,其表示命令藉由訊息時間定序設施延遲之時間量。此欄位中之值對應於當日時間時鐘之選擇位元(例如,位元32至55),其中最低有效位元表示例如0.0625
微秒。當回應時間指示限定符為例如2時,此欄位包括當執行發信通道緩衝器時局部當日時間時鐘之選擇位元(例如,位元32至35)。當例如安裝訊息時間定序設施且請求訊息時間定序時,如由訊息標頭中之訊息時間定序指示符所指示,設定回應時間指示。
回應時間指示限定符:在一個實例中,此欄位(例如,字2之位元24至25)包括例如無符號整數,其指示回應時間指示欄位之內容,如下:
0 回應時間指示沒有意義
1 回應時間指示包括訊息藉由接收器通道延遲之時間量
2 回應時間指示包括當執行發信通道緩衝器以完成接收功能時當日時間時鐘之選擇位元(例如,位元32至35)。
3 保留
鏈路屬性:此欄位(例如,字2之位元26)包括其上接收回應之鏈路的指示。
雙工失活指示符:雙工失活指示符之值(例如,字2之位元28)描述雙工命令之單一條目或清單形式雙工過程的結果。
當前信號群組索引:當針對命令發出雙工信號時,與重試索引相關聯之信令向量條目中之當前信號群組索引物件的值儲存於此欄位(例如,字2之位元30至31)中。作為一個實例,若不針對命令產生雙工信號,則零儲存於此欄位中。
回應:此欄位(例如,字4之25)包括概述操作之結果的資訊。
可包括額外、較少及/或其他欄位及/或欄位之值。
在設定回應之後,通道緩衝器置放處於閒置狀態且可再使用。
不斷地在全系統(例如,組態)基礎上執行針對工作之輪詢(使用例如定位通道緩衝器指令,如上文所描述)。雖然與中斷驅動程式上下文切換相比,輪詢允許最小化等待時間及總命令處理時間,但其仍花費時間。因此,根據本發明之一或多個態樣,並非在全系統基礎上輪詢,對個別緩衝概要群組執行輪詢。舉例而言,緩衝器劃分成複數個緩衝概要群組(在一個實例中,多達32個群組,但在其他實施例中,可存在額外或更少群組)。在一個實例中,耦合設施控制將緩衝器(至少選擇緩衝器,諸如主要接收者緩衝器)指派至緩衝概要群組。耦合設施知道處理器選擇之組態拓樸及與群組之親和力。系統(例如,架構-諸如韌體)提供概述耦合設施狀態改變之能力以用於在每一群組內處理且與其他群組分離,從而改良輪詢效率。作為實例,指派基於例如處理器對緩衝器之使用。在一個實例中,物理上緊密接近之處理器將共用緩衝器,且彼等緩衝器將指派至相同緩衝概要群組。此有助於維持快取記憶體中之資料,減少刷新快取記憶體之等待時間。參考圖7B描述關於輪詢受限制之主要接收者緩衝器之處理的其他細節。
根據一或多個態樣,並非對定位通道緩衝器指令輪詢,僅在設定例如緩衝概要群組之命令活動概要指示符752之後執行定位通道緩衝器指令750。舉例而言,檢查命令活動概要位元(例如,直接在無需執行架構化指令之情況下),且若設定該命令活動概要位元,則針對與具有設定指示符之緩衝概要群組相關聯的緩衝器執行定位通道緩衝器指令。基於判定在緩衝概要群組之緩衝器中之一者中存在待執行之工作,亦即,命令
已到達754,儲存訊息命令區塊756且設定命令活動指示符758。此後,如上文所描述,移動已到達之資料。舉例而言,當資料到達762且儲存資料764時,執行移動控制區塊資料多重指令760。如前所述,位址清單及重試由例如通道硬體操控766。此後,根據本發明之一或多個態樣,在對應緩衝概要群組中設定最終資料活動概要指示符770。舉例而言,對於需要在移動通道緩衝器資料多重指令之前在通道緩衝器處接收之例如所有資料以條件碼0完成且同步地移動命令資料的通道,當用於命令之所有資料已到達通道緩衝器時,在準備通道緩衝器指令時間界定之緩衝概要群組數目的通道緩衝概要回應區域中之最終資料活動/資料備妥概要位元設定為一。
通道子系統在通道緩衝器處設定最終資料活動782,以指示訊息資料區塊之內容在主儲存器中有效且其為與命令相關聯之最後一個訊息資料區塊。對於並不需要在執行移動通道緩衝器資料多重指令之前在通道緩衝器處接收之例如所有資料的通道,當用於命令之所有資料在主儲存器中有效時,在準備通道緩衝器指令時間界定之緩衝概要群組數目之通道緩衝概要回應區域中的最終資料活動/資料備妥概要位元亦設定為一。
基於概要指示符經設定780,設定最終資料活動指示符782,執行發信通道緩衝器指令784且發送回應786。
因此,根據本發明之一或多個態樣,在特定執行中,定位通道緩衝器指令限於選定緩衝概要群組,且用檢查概要指示符(例如,命令活動概要指示符)替換LCB之輪詢以判定是否將針對工作檢查選定緩衝概要群組之緩衝器。基於確認之狀態改變執行定位通道緩衝器指令,從而節省等待時間且改良處理速度。在另一態樣中,當不存在工作已到達之指
示時,可針對組態之所有緩衝器執行定位通道緩衝器,如前所述以確保無訊息損失。
此外,在一或多個態樣中,促進向量之使用以判定是否已發生事件。耦合設施使用向量,其為例如指示某些事件及/或判定已發生某些事件之位元陣列。舉例而言,一個耦合設施可設定向量位元以指示其處於處理中之某一點,且例如正用於另一耦合設施之雙工(例如,維持資料之第二複本及/或耦合設施結構)之另一耦合設施可檢查向量位元以確保其處於相同點。亦存在可藉由使用向量指示的其他類型之事件。
在本發明之一或多個態樣中,藉由使用緩衝概要群組及概要指示符來促進向量之使用,以減少等待時間且改良處理速度。由於向量不可直接由耦合設施存取,但替代地可經由執行指令(諸如測試向量條目指令)存取,因此藉由基於指示已發生向量條目之改變的概要指示符而限制指令之執行來改良處理。不一定需要使用一或多個指令對向量進行輪詢,但必要時,在某些情形中可提供該輪詢。
本發明之一或多個態樣不可避免地與電腦技術相關且促進電腦內之處理,從而改良其效能。藉由提供緩衝概要群組及將某些緩衝器(及因此,某些處理器)指派至緩衝概要群組,可藉由檢查緩衝概要群組之概要指示符而非執行輪詢來偵測事件,此減少系統資源之等待時間及使用且改良處理速度。
參考圖8A至圖8B描述促進計算環境內之處理的一個實施例之其他細節,此係因為該計算環境與本發明之一或多個態樣有關。
參考圖8A,在一個實施例中,存取複數個緩衝概要群組中之緩衝概要群組800。緩衝概要群組包括指派至緩衝概要群組之一或多個
緩衝器的一或多個概要指示符802。檢查緩衝概要群組之一或多個概要指示符中之概要指示符,以判定針對指派至緩衝概要群組之一或多個緩衝器中之至少一個緩衝器是否已發生事件804。基於指示事件已發生之檢查,執行一或多個動作806。
在使用緩衝概要群組中之概要指示符來檢查工作或事件時,檢查特定針對於特定緩衝器,從而減少系統資源之使用,改良處理速度且促進包括耦合設施之處理的系統處理。此外,檢查指示符比執行用以檢查緩衝器是否有工作要執行之指令更快且更容易。
在一個實施例中,一或多個緩衝器經指派至緩衝概要群組808。將一或多個緩衝器指派至緩衝概要群組包括例如使用準備通道緩衝器指令來將一或多個緩衝器指派至緩衝概要群組且準備一或多個緩衝器以用於一或多個訊息之接收810。
在一個實施例中,一或多個緩衝器基於發送訊息指令之執行而指派至緩衝概要群組812。發送訊息指令使用一或多個緩衝器中之緩衝器來發送訊息814。
作為實例,事件包括一或多個緩衝器中之緩衝器中之訊息的接收816,且執行一或多個動作包括執行與包括於緩衝器中之訊息有關的處理818。
在一個實例中,參考圖8B,事件包括與訊息相關聯之資料的處理完成之指示820,且執行一或多個動作包括發送指示資料已經處理之回應822。
在一個實施例中,檢查經由指令替換輪詢操作,以在計算環境之緩衝器中尋找工作824。移除該輪詢操作增加處理速度且減少系統
資源之使用。
在一個實施例中,動態地重新指派一或多個緩衝器中之選擇緩衝器之指派826,其中選擇緩衝器自複數個緩衝概要群組中之一個緩衝概要群組重新指派至複數個緩衝概要群組中之另一緩衝概要群組828。將緩衝器重新指派至緩衝概要群組提供靈活性,且使得能夠將使用緩衝器之選擇處理器分組在一起,從而提供增強型快取設施。
作為實例,一或多個概要指示符包括命令活動概要指示符、次要到達概要指示符、回應活動概要指示符、最終資料活動概要指示符及主要完成概要指示符830。
在一個實施例中,在選擇位置中界定緩衝概要回應區域832,其中緩衝概要回應區域包括複數個緩衝概要群組834。
其他變化及實施例為可能的。
在一或多個態樣中,緩衝器操作及新狀態改變指示可分成多個緩衝概要群組,該等緩衝概要群組為組態寬設施之子集。作為實例,接受者緩衝器在例如準備通道緩衝器指令時間與特定緩衝概要群組相關聯,且發起者緩衝器在每一發送訊息指令時間或發信通道緩衝器指令時間與特定緩衝概要群組相關聯。所接收之命令(例如,定位通道緩衝器指令)之偵測可限於指派至指定緩衝概要群組之特定緩衝器。此允許發現工作且將其分配至選定處理器,從而保持指派至緩衝概要群組之處理器的子集。
在一或多個態樣中,針對在指派至特定緩衝概要群組之緩衝器上接收之命令提供概要指示,其允許移除對定位通道緩衝器指令之輪詢。此外,提供對指派至特定概要群組之緩衝器的狀態改變之概要指示,其限制對例如僅指派至緩衝概要群組之活動緩衝器的輪詢,其中保證至少
一個需要處理。程式輪詢例如限於單一指示及評估,且例如僅在發生改變時。在一個實例中,程式評估用於判定遇到狀態改變之特定緩衝器,假定可存在多於一個緩衝器。
在一或多個態樣中,提供針對所指定緩衝概要群組之已註冊向量狀態改變的概要指示。此限制對例如僅指派至緩衝概要群組之活動向量的輪詢,其中保證至少一個需要處理。
在一或多個態樣中,提供包括例如指派至處理器之緩衝概要群組及/或由處理器啟動之命令的數目之規範的效能量測。亦可提供額外、較少及/或其他效能量測資訊。
本發明之態樣可由許多類型之計算環境使用。參考圖9A描述併有及使用本發明之一或多個態樣的計算環境之另一實施例。在此實例中,計算環境36包括例如原生中央處理單元(CPU)37、記憶體38及一或多個輸入/輸出裝置及/或介面39,前述各者經由例如一或多個匯流排40及/或其他連接件而彼此耦合。作為實例,計算環境36可包括:由紐約阿蒙克市之國際商業機器公司供應的PowerPC®處理器;由加州帕洛阿爾托市(Palo Alto,California)之惠普公司(Hewlett Packard Co.)供應的具有Intel® Itanium® II處理器之HP Superdome;及/或基於由國際商業機器公司、惠普公司、英特爾公司、甲骨文公司(Oracle)及/或其他者供應之架構的其他機器。PowerPC為國際商業機器公司在至少一個管轄區域中之商標或註冊商標。Intel及Itanium為英特爾公司或其子公司在美國及其他國家中之商標或註冊商標。
原生中央處理單元37包括一或多個原生暫存器41,諸如在環境內之處理期間使用的一或多個通用暫存器及/或一或多個專用暫存
器。此等暫存器包括表示在任何特定時間點處之環境狀態之資訊。
此外,原生中央處理單元37執行儲存於記憶體38中之指令及程式碼。在一個特定實例中,中央處理單元執行儲存於記憶體38中之仿真器程式碼42。此程式碼使得在一個架構中組態之計算環境能夠仿真另一架構。舉例而言,仿真器程式碼42允許基於除z/Architecture指令集架構以外之架構的機器,諸如PowerPC處理器、HP Superdome伺服器或其他者,仿真z/Architecture指令集架構且執行基於z/Architecture指令集架構開發之軟體及指令。
參考圖9B描述與仿真器程式碼42相關之其他細節。儲存於記憶體38中之客體指令43包含經開發以在除原生CPU 37之架構以外的架構中執行之軟體指令(例如,與機器指令相關)。舉例而言,客體指令43可能已經設計以在基於z/Architecture指令集架構之處理器上執行,但替代地,在可為例如Intel Itanium II處理器之原生CPU 37上仿真。在一個實例中,仿真器程式碼42包括指令提取常式44以自記憶體38獲得一或多個客體指令43且視情況提供對所獲得指令之本端緩衝。該仿真器程式碼亦包括指令轉譯常式45以判定已獲得之客體指令之類型且將客體指令轉譯成一或多個對應原生指令46。此轉譯包括例如識別待藉由客體指令執行之功能及選擇原生指令以執行彼功能。
此外,仿真器程式碼42包括仿真控制常式47以使得執行原生指令。仿真控制常式47可使得原生CPU 37執行仿真一或多個先前所獲得之客體指令之原生指令的常式,且在此執行完結時將控制返回至指令提取常式以仿真獲得下一客體指令或一組客體指令。原生指令46之執行可包括將資料自記憶體38載入至暫存器中;將資料自暫存器儲存返回至記憶
體;或執行某一類型之算術或邏輯運算,如藉由轉譯常式判定。
每一常式係例如以軟體實施,該軟體儲存於記憶體中且由原生中央處理單元37執行。在其他實例中,常式或操作中之一或多者係以韌體、硬體、軟體或其某一組合實施。可使用原生CPU之暫存器41或藉由使用記憶體38中之部位來仿真所仿真處理器之暫存器。在實施例中,客體指令43、原生指令46及仿真器程式碼42可駐存於相同記憶體中或可分配於不同記憶體裝置當中。
根據本發明之一或多個態樣,可經仿真之指令包括本文中所描述之指令。此外,根據本發明之一或多個態樣,可仿真本發明之其他指令、命令、功能、操作及/或一或多個態樣。
上文所描述之計算環境僅為可使用之計算環境的實例。可使用其他環境,包括但不限於未經分割之環境、經分割之環境、雲端環境及/或仿真環境;實施例不限於任何一種環境。儘管本文中描述計算環境之各種實例,但本發明之一或多個態樣可與許多類型之環境一起使用。本文中所提供之計算環境僅為實例。
每一計算環境能夠經組態以包括本發明之一或多個態樣。
一或多個態樣可係關於雲端計算。
應理解,儘管本發明包括關於雲端計算之詳細描述,但本文中所敍述之教示的實施不限於雲端計算環境。實情為,本發明之實施例能夠結合現在已知或稍後開發之任何其他類型之計算環境來實施。
雲端計算為用於使得能夠對可組態計算資源(例如,網路、網路頻寬、伺服器、處理、記憶體、儲存器、應用程式、虛擬機及服務)之共用集區進行便利之隨選網路存取的服務遞送之模型,該等可組態計算
資源可藉由最少的管理工作或與服務提供者之互動而快速地佈建及釋放。此雲端模型可包括至少五個特性、至少三個服務模型及至少四個部署模型。
特性如下:隨選自助服務:雲端消費者可視需要自動地單向佈建計算能力(諸如,伺服器時間及網路儲存器),而無需與服務提供者之人為互動。
廣泛網路存取:可經由網路獲得能力及經由標準機制存取能力,該等標準機制藉由異質精簡型或複雜型用戶端平台(例如,行動電話、膝上型電腦及PDA)促進使用。
資源集用:提供者之計算資源經集用以使用多租戶模型為多個消費者服務,其中根據需要動態地指派及重新指派不同實體及虛擬資源。存在部位獨立性之意義,此係因為消費者通常不具有對所提供之資源之確切部位的控制或瞭解,但可能能夠按較高抽象層級(例如,國家、州或資料中心)指定部位。
快速彈性:可快速地且彈性地佈建能力,在一些情況下自動地佈建能力,以迅速地向外延展,且可快速地釋放能力以迅速地向內延展。在消費者看來,可用於佈建之能力通常呈現為無限的且可在任何時間以任何量來購買。
所量測服務:雲端系統藉由在適於服務類型(例如,儲存、處理、頻寬及活動使用者賬戶)之某一抽象層級下充分利用計量能力而自動控制及最佳化資源使用。可監視、控制及報告資源使用狀況,從而為所利用服務之提供者及消費者兩者提供透明度。
服務模型如下:軟體即服務(SaaS):提供至消費者之能力為使用在雲端基礎架構上運行的提供者之應用程式。可經由諸如網頁瀏覽器(例如,基於網頁之電子郵件)之精簡型用戶端介面自各種用戶端裝置存取應用程式。消費者並不管理或控制包括網路、伺服器、作業系統、儲存器或甚至個別應用程式能力之基礎雲端基礎架構,其中可能的異常為有限的使用者特定應用程式組態設定。
平台即服務(PaaS):提供至消費者之能力為將消費者創建之應用程式或使用提供者所支援的程式設計語言及工具創建之所獲取應用程式部署至雲端基礎架構上。消費者並不管理或控制包括網路、伺服器、作業系統或儲存器之基礎雲端基礎架構,但具有對所部署之應用程式及可能的代管環境組態之應用程式的控制。
基礎架構即服務(IaaS):提供至消費者之能力為佈建處理、儲存、網路及其他基礎計算資源,其中消費者能夠部署及運行可包括作業系統及應用程式之任意軟體。消費者並不管理或控制基礎雲端基礎架構,但控制作業系統、儲存器、所部署應用程式,及可能有限地控制選擇網路連接組件(例如,主機防火牆)。
部署模型如下:私用雲端:僅針對組織操作雲端基礎架構。其可由組織或第三方管理且可存在於內部或外部。
社群雲端:該雲端基礎架構由若干組織共用且支援具有共用關注事項(例如,任務、安全要求、策略及合規性考量)之特定社群。其可由組織或第三方管理且可存在於內部或外部。
公用雲端:使雲端基礎架構可用於公眾或大型工業集團且為出售雲端服務之組織所擁有。
混合雲端:雲端基礎架構為兩個或更多個雲端(私用、社群或公用)之組合物,該等雲端保持獨特實體但藉由實現資料及應用程式攜帶性(例如,用於在雲端之間實現負載平衡的雲端爆裂)之標準化或專屬技術繫結在一起。
藉由集中於無國界、低耦合、模組化及語義互操作性對雲端計算環境進行服務定向。雲端計算之關鍵為包括互連節點之網路的基礎架構。
現參考圖10,描繪說明性雲端計算環境50。如所展示,雲端計算環境50包括一或多個雲端計算節點52,雲端消費者所使用之諸如個人數位助理(PDA)或蜂巢式電話54A、桌上型電腦54B、膝上型電腦54C及/或汽車電腦系統54N的本端計算裝置可與該一或多個雲端計算節點通信。節點52可彼此通信。可在一或多個網路(諸如,如上文所描述之私用、社群、公用或混合雲端或其組合)中將該等節點實體地或虛擬地分組(未展示)。此允許雲端計算環境50提供基礎架構、平台及/或軟體作為服務,針對該等服務,雲端消費者不需要在本端計算裝置上維護資源。應理解,圖10中所展示之計算裝置54A至54N之類型意欲僅為說明性的,且計算節點52及雲端計算環境50可經由任何類型之網路及/或網路可定址連接(例如,使用網頁瀏覽器)與任何類型之電腦化裝置通信。
現參考圖11,展示由雲端計算環境50(圖10)所提供之功能抽象層之集合。預先應理解,圖11中所展示之組件、層及功能意欲僅為說明性的且本發明之實施例不限於此。如所描繪,提供以下層及對應功能:
硬體及軟體層60包括硬體及軟體組件。硬體組件之實例包括:大型電腦61;基於精簡指令集電腦(RISC)架構之伺服器62;伺服器63;刀鋒伺服器64;儲存裝置65;以及網路及網路連接組件66。在一些實施例中,軟體組件包括網路應用程式伺服器軟體67及資料庫軟體68。
虛擬化層70提供抽象層,可自該抽象層提供虛擬實體之以下實例:虛擬伺服器71;虛擬儲存器72;虛擬網路73,包括虛擬私用網路;虛擬應用程式及作業系統74;及虛擬用戶端75。
在一個實例中,管理層80可提供下文所描述之功能。資源佈建81提供計算資源及用於執行雲端計算環境內之任務之其他資源的動態採購。當在雲端計算環境內利用資源時,計量及定價82提供成本追蹤,以及對此等資源之消耗之帳務處理及發票開立。在一個實例中,此等資源可包括應用程式軟體授權。安全性提供針對雲端消費者及任務之身分識別驗證,以及對資料及其他資源之保護。使用者入口網站83為消費者及系統管理員提供對雲端計算環境之存取。服務等級管理84提供雲端計算資源分配及管理以使得滿足所需服務等級。服務等級協議(SLA)規劃及實現85提供雲端計算資源之預先配置及採購,針對雲端運算資源之未來要求係根據SLA來預期。
工作負載層90提供功能之實例,可針對該功能利用雲端計算環境。可自此層提供之工作負載及功能的實例包括:地圖繪製及導航91;軟體開發及生命週期管理92;虛擬教室教育遞送93;資料分析處理94;異動處理95;及緩衝概要群組處理96。
本發明之態樣可為在任何可能的技術細節整合層級下之系統、方法及/或電腦程式產品。電腦程式產品可包括一(或多個)電腦可讀儲
存媒體,其上具有電腦可讀程式指令以使處理器進行本發明之態樣。
電腦可讀儲存媒體可為有形裝置,其可保持及儲存指令以供指令執行裝置使用。電腦可讀儲存媒體可為例如但不限於電子儲存裝置、磁性儲存裝置、光學儲存裝置、電磁儲存裝置、半導體儲存裝置或前述之任何合適組合。電腦可讀儲存媒體之更具體實例之非窮盡性清單包括以下各者:攜帶型電腦磁片、硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可擦除可程式化唯讀記憶體(EPROM或快閃記憶體)、靜態隨機存取記憶體(SRAM)、攜帶型緊密光碟唯讀記憶體(CD-ROM)、數位化通用光碟(DVD)、記憶棒、軟性磁碟、機械編碼裝置(諸如其上記錄有指令之凹槽中之打孔卡片或凸起結構)及前述之任何合適組合。如本文中所使用,不應將電腦可讀儲存媒體本身解釋為暫時性信號,諸如無線電波或其他自由傳播之電磁波、經由波導或其他傳輸媒體傳播之電磁波(例如,經由光纖纜線傳遞之光脈衝),或經由電線傳輸之電信號。
本文中所描述之電腦可讀程式指令可自電腦可讀儲存媒體下載至各別計算/處理裝置或經由網路(例如,網際網路、區域網路、廣域網路及/或無線網路)下載至外部電腦或外部儲存裝置。網路可包含銅傳輸纜線、光傳輸光纖、無線傳輸、路由器、防火牆、交換器、閘道器電腦及/或邊緣伺服器。每一計算/處理裝置中之網路配接卡或網路介面自網路接收電腦可讀程式指令且轉遞電腦可讀程式指令以用於儲存於各別計算/處理裝置內之電腦可讀儲存媒體中。
用於進行本發明之操作的電腦可讀程式指令可為以一或多種程式設計語言之任何組合撰寫的組譯器指令、指令集架構(ISA)指令、機器指令、機器相關指令、微碼、韌體指令、狀態設定資料、用於積體電
路系統之組態資料,或原始碼或目標碼,該一或多種程式設計語言包括諸如Smalltalk、C++或類似者之物件導向式程式設計語言,及諸如「C」程式設計語言或類似程式設計語言之程序性程式設計語言。電腦可讀程式指令可完全在使用者之電腦上、部分在使用者之電腦上、作為獨立套裝軟體、部分在使用者之電腦上且部分在遠端電腦上或完全在遠端電腦或伺服器上執行。在後一情境中,遠端電腦可經由包括區域網路(LAN)或廣域網路(WAN)之任何類型之網路連接至使用者之電腦,或可連接至外部電腦(例如,經由使用網際網路服務提供者之網際網路)。在一些實施例中,包括例如可程式化邏輯電路系統、場可程式化閘陣列(FPGA)或可程式化邏輯陣列(PLA)之電子電路系統可藉由利用電腦可讀程式指令之狀態資訊來個人化電子電路系統而執行電腦可讀程式指令,以便執行本發明之態樣。
本文參考根據本發明之實施例之方法、設備(系統)及電腦程式產品之流程圖說明及/或方塊圖描述本發明之態樣。應理解,可藉由電腦可讀程式指令實施流程圖說明及/或方塊圖中之每一區塊,及流程圖說明及/或方塊圖中的區塊之組合。
可將此等電腦可讀程式指令提供至電腦或其他可程式化資料處理設備之處理器以產生一機器,使得經由該電腦或其他可程式化資料處理設備之處理器執行之指令創建用於實施一或多個流程圖及/或方塊圖區塊中所指定之功能/動作之構件。亦可將此等電腦可讀程式指令儲存於電腦可讀儲存媒體中,其可引導電腦、可程式化資料處理設備及/或其他裝置以特定方式起作用,使得其中儲存有指令之電腦可讀儲存媒體包含製品,該製品包括實施在該或該等流程圖及/或方塊圖區塊中所指定之功能/動作之態樣的指令。
亦可將電腦可讀程式指令載入至電腦、其他可程式化資料處理設備或其他裝置上,以使一系列操作步驟在電腦、其他可程式化設備或其他裝置上執行以產生電腦實施的程序,使得在電腦、其他可程式化設備或其他裝置上執行的指令實施該或該等流程圖及/或方塊圖區塊中所指定之功能/動作。
諸圖中之流程圖及方塊圖說明根據本發明之各種實施例之系統、方法及電腦程式產品之可能實施的架構、功能性及操作。就此而言,流程圖或方塊圖中之每一區塊可表示指令之模組、片段或部分,其包含用於實施一或多個所指定邏輯功能之一或多個可執行指令。在一些替代實施中,區塊中所指出之功能可不按圖式中所指出之次序發生。舉例而言,取決於所涉及之功能性,連續展示之兩個區塊實際上可實現為一個步驟,同時、實質上同時、以部分或完全在時間上重疊之方式執行,或該等區塊有時可以相反次序執行。亦應注意,可由執行所指定功能或動作或進行專用硬體及電腦指令之組合的基於專用硬體之系統實施方塊圖及/或流程圖說明之每一區塊及方塊圖及/或流程圖說明中之區塊的組合。
除上述以外,可藉由供應消費者環境之管理之服務提供者提供、供應、部署、管理、服務(等)一或多個態樣。舉例而言,服務提供者可創建、維持、支援(等)電腦程式碼及/或執行用於一或多個消費者之一或多個態樣的電腦基礎架構。作為回報,服務提供者可根據訂用及/或收費協議接收來自消費者之付款,作為實例。另外或替代地,服務提供者可接收來自向一或多個第三方出售廣告內容之付款。
在一個態樣中,可部署應用程式以用於執行一或多個實施例。作為一個實例,應用程式之部署包含提供可操作以執行一或多個實施
例之電腦基礎架構。
作為另一態樣,可部署計算基礎架構,包含將電腦可讀程式碼整合至計算系統中,其中程式碼結合計算系統能夠執行一或多個實施例。
作為又一態樣,可提供一種用於整合計算基礎架構之程序,包含將電腦可讀程式碼整合至電腦系統中。電腦系統包含電腦可讀媒體,其中電腦媒體包含一或多個實施例。程式碼結合電腦系統能夠執行一或多個實施例。
儘管上文描述各種實施例,但其僅為實例。舉例而言,其他架構之計算環境可用於併有及/或使用一或多個態樣。此外,可使用不同指令、功能及/或操作。另外,可使用不同類型之暫存器及/或不同暫存器。許多變化為可能的。
本文中描述各種態樣。另外,在不脫離本發明之態樣之精神的情況下,許多變化為可能的。應注意,除非不一致,否則本文中所描述之每一態樣或特徵及其變體可與任何其他態樣或特徵組合。
此外,其他類型之計算環境可為有益的且可加以使用。作為實例,可使用適合於儲存及/或執行程式碼之資料處理系統,其包括直接或經由系統匯流排間接地耦合至記憶體元件之至少兩個處理器。記憶體元件包括例如在實際執行程式碼期間使用之本端記憶體、大容量儲存器,及提供至少某一程式碼之臨時儲存以便減少在執行期間必須自大容量儲存器擷取程式碼之次數的快取記憶體。
輸入/輸出或I/O裝置(包括但不限於鍵盤、顯示器、指標裝置、DASD、磁帶、CD、DVD、隨身碟(Thumb Drive)及其他記憶體媒體
等)可直接地或經由介入I/O控制器耦合至系統。網路配接器亦可耦合至系統以使得資料處理系統能夠變成經由介入之私人網路或公用網路耦合至其他資料處理系統或遠端印表機或儲存裝置。數據機、纜線數據機及乙太網路卡僅為幾種可用類型之網路配接器。
本文中所使用之術語僅出於描述特定實施例之目的且並不意欲為限制性的。如本文中所使用,除非上下文另外清楚地指示,否則單數形式「一(a/an)」及「該」亦意欲包括複數形式。應進一步理解,術語「包含(comprises及/或comprising)」在用於本說明書中時指定所陳述特徵、整數、步驟、操作、元件及/或組件之存在,但不排除一或多個其他特徵、整數、步驟、操作、元件、組件及/或其群組之存在或添加。
以下申請專利範圍中之所有構件或步驟加功能元件之對應結構、材料、動作及等效物(若存在)意欲包括用於結合如特定主張之其他所主張元件來執行功能的任何結構、材料或動作。已出於說明及描述之目的呈現一或多個實施例之描述,但其不意欲為窮盡性的或限於所揭示之形式。許多修改及變化將對一般熟習此項技術者顯而易見。選擇及描述實施例以便最佳地解釋各種態樣及實際應用,且使得一般熟習此項技術者能夠理解具有適合於所涵蓋之特定用途的各種修改之各種實施例。
800:操作
802:操作
804:操作
806:操作
808:操作
810:操作
812:操作
814:操作
816:操作
818:操作
Claims (17)
- 一種用於促進一計算環境內之處理的電腦程式產品,該電腦程式產品包含:一或多個電腦可讀儲存媒體及共同地儲存於該一或多個電腦可讀儲存媒體上以執行一方法之程式指令,該方法包含:存取複數個緩衝概要群組中之一緩衝概要群組,該緩衝概要群組包括指派至該緩衝概要群組之一或多個緩衝器的一或多個概要指示符;檢查該緩衝概要群組之該一或多個概要指示符中之一概要指示符,以判定針對指派至該緩衝概要群組之該一或多個緩衝器中之至少一個緩衝器是否已發生一事件;及基於指示該事件已發生之該檢查而執行一或多個動作,其中該事件包括該一或多個緩衝器中之一緩衝器中之一訊息的接收,且該執行該一或多個動作包括執行與包括於該緩衝器中之該訊息有關的處理。
- 如請求項1之電腦程式產品,其中該方法進一步包含將該一或多個緩衝器指派至該緩衝概要群組。
- 如請求項2之電腦程式產品,其中該將該一或多個緩衝器指派至該緩衝概要群組包括使用一準備通道緩衝器指令來將該一或多個緩衝器指派至該緩衝概要群組且準備該一或多個緩衝器以用於一或多個訊息之接收。
- 如請求項1之電腦程式產品,其中該一或多個緩衝器基於一發送訊息指令之執行而指派至該緩衝概要群組,該發送訊息指令使用該一或多個緩衝器中之一緩衝器來發送一訊息。
- 如請求項1之電腦程式產品,其中該事件包括與該訊息相關聯之資料的處理完成之一指示,且該執行該一或多個動作包括發送指示該資料已經處理之一回應。
- 如請求項1之電腦程式產品,其中該檢查經由一指令替換一輪詢操作,以在該計算環境之緩衝器中尋找工作。
- 如請求項1之電腦程式產品,其中該方法進一步包含動態地更改該一或多個緩衝器中之一選擇緩衝器之一指派,其中該選擇緩衝器自該複數個緩衝概要群組中之一個緩衝概要群組重新指派至該複數個緩衝概要群組中之另一緩衝概要群組。
- 如請求項1之電腦程式產品,其中該一或多個概要指示符包括一命令活動概要指示符、一次要到達概要指示符、一回應活動概要指示符、一最終資料活動概要指示符及一主要完成概要指示符。
- 如請求項1之電腦程式產品,其中該方法進一步包含在一選擇位置中界定一緩衝概要回應區域,該緩衝概要回應區域包括該複數個緩衝概要群 組。
- 一種用於促進一計算環境內之處理的電腦系統,該電腦系統包含:一記憶體;及至少一個處理器,其與該記憶體通信,其中該電腦系統經組態以執行一方法,該方法包含:存取複數個緩衝概要群組中之一緩衝概要群組,該緩衝概要群組包括指派至該緩衝概要群組之一或多個緩衝器的一或多個概要指示符;檢查該緩衝概要群組之該一或多個概要指示符中之一概要指示符,以判定針對指派至該緩衝概要群組之該一或多個緩衝器中之至少一個緩衝器是否已發生一事件;及基於指示該事件已發生之該檢查而執行一或多個動作,其中該事件包括該一或多個緩衝器中之一緩衝器中之一訊息的接收,且該執行該一或多個動作包括執行與包括於該緩衝器中之該訊息有關的處理。
- 如請求項10之電腦系統,其中該方法進一步包含將該一或多個緩衝器指派至該緩衝概要群組。
- 如請求項10之電腦系統,其中該方法進一步包含動態地更改該一或多個緩衝器中之一選擇緩衝器之一指派,其中該選擇緩衝器自該複數個緩衝概要群組中之一個緩衝概要群組重新指派至該複數個緩衝概要群組中之 另一緩衝概要群組。
- 如請求項10之電腦系統,其中該方法進一步包含在一選擇位置中界定一緩衝概要回應區域,該緩衝概要回應區域包括該複數個緩衝概要群組。
- 一種促進一計算環境內之處理的電腦實施方法,該電腦實施方法包含:存取複數個緩衝概要群組中之一緩衝概要群組,該緩衝概要群組包括指派至該緩衝概要群組之一或多個緩衝器的一或多個概要指示符;檢查該緩衝概要群組之該一或多個概要指示符中之一概要指示符,以判定針對指派至該緩衝概要群組之該一或多個緩衝器中之至少一個緩衝器是否已發生一事件;及基於指示該事件已發生之該檢查而執行一或多個動作,其中該事件包括該一或多個緩衝器中之一緩衝器中之一訊息的接收,且該執行該一或多個動作包括執行與包括於該緩衝器中之該訊息有關的處理。
- 如請求項14之電腦實施方法,其進一步包含將該一或多個緩衝器指派至該緩衝概要群組。
- 如請求項14之電腦實施方法,其進一步包含動態地更改該一或多個緩衝器中之一選擇緩衝器之一指派,其中該選擇緩衝器自該複數個緩衝概 要群組中之一個緩衝概要群組重新指派至該複數個緩衝概要群組中之另一緩衝概要群組。
- 如請求項14之電腦實施方法,其進一步包含在一選擇位置中界定一緩衝概要回應區域,該緩衝概要回應區域包括該複數個緩衝概要群組。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/388,127 US20230030241A1 (en) | 2021-07-29 | 2021-07-29 | Intersystem processing employing buffer summary groups |
US17/388,127 | 2021-07-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202305593A TW202305593A (zh) | 2023-02-01 |
TWI813283B true TWI813283B (zh) | 2023-08-21 |
Family
ID=85039237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111117744A TWI813283B (zh) | 2021-07-29 | 2022-05-12 | 用於使用緩衝概要群組之系統間處理之電腦程式產品、電腦系統及電腦實施方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230030241A1 (zh) |
CN (1) | CN117693741A (zh) |
DE (1) | DE112022003144T5 (zh) |
GB (1) | GB2623280A (zh) |
TW (1) | TWI813283B (zh) |
WO (1) | WO2023007276A1 (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5479615A (en) * | 1991-12-09 | 1995-12-26 | Nec Corporation | Buffer asynchronous output apparatus capable of referring to or renewing a previously renewed buffer area by another renewal processing program |
US20030099305A1 (en) * | 2001-11-24 | 2003-05-29 | Lg Electronics Inc. | System and method for polling a protocol data unit of a transmission buffer |
TW200822638A (en) * | 2006-10-03 | 2008-05-16 | Ind Tech Res Inst | System and methods for determining granularity level of information about buffer status |
US20120317312A1 (en) * | 2011-06-10 | 2012-12-13 | International Business Machines Corporation | Managing operator message buffers in a coupling facility |
US20120331172A1 (en) * | 2011-06-22 | 2012-12-27 | International Business Machines Corporation | Method And System For Improved Performance Of Network Communications With Interface Specific Buffers |
US20210219169A1 (en) * | 2018-09-27 | 2021-07-15 | Vivo Mobile Communication Co., Ltd. | Buffer status report transmission method, terminal and scheduling device |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5706432A (en) * | 1993-11-04 | 1998-01-06 | International Business Machines Corporation | Mechanism for receiving messages at a coupling facility |
US5813042A (en) * | 1997-02-19 | 1998-09-22 | International Business Machines Corp. | Methods and systems for control of memory |
US6973552B2 (en) * | 2003-05-12 | 2005-12-06 | International Business Machines Corporation | System and method to handle page validation with out-of-order fetch |
US8095603B2 (en) * | 2007-02-21 | 2012-01-10 | Research In Motion Limited | Efficient transmission of presence update information to presence service clients |
JP2008252748A (ja) * | 2007-03-30 | 2008-10-16 | Toshiba Corp | 受信フレーム処理装置および受信フレーム処理システム |
US8576861B2 (en) * | 2007-05-21 | 2013-11-05 | International Business Machines Corporation | Method and apparatus for processing packets |
JP4977554B2 (ja) * | 2007-08-22 | 2012-07-18 | 株式会社日立製作所 | キャッシュメモリ上のデータをバックアップする機能を備えたストレージシステム |
CN102523199A (zh) * | 2011-11-29 | 2012-06-27 | 深圳市中联创新自控系统有限公司 | 具有防伪认证的安防系统及其防伪认证方法 |
CN102523299B (zh) * | 2011-12-22 | 2014-02-26 | 北京邮电大学 | 基于消息摘要进行内容标识的缓存方法 |
KR101684042B1 (ko) * | 2012-03-28 | 2016-12-07 | 인텔 코포레이션 | 네트워크 장치에서 프로세싱 요소를 위한 공유 버퍼 |
US9823852B2 (en) * | 2015-05-01 | 2017-11-21 | Toshiba Memory Corporation | Memory system with nonvolatile memory |
US10146473B2 (en) * | 2016-05-10 | 2018-12-04 | Ge Aviation Systems Llc | Systems and methods of subject state change notification |
US10285087B2 (en) * | 2016-11-10 | 2019-05-07 | Honeywell International Inc. | Efficient event-triggered reporting system |
US11204714B2 (en) * | 2018-10-23 | 2021-12-21 | Microsoft Technology Licensing, Llc | Hybrid use of non-volatile memory as storage device and cache |
CN111694848B (zh) * | 2019-03-15 | 2023-04-25 | 阿里巴巴集团控股有限公司 | 使用引用计数更新数据缓冲的方法及装置 |
US11751090B2 (en) * | 2019-09-06 | 2023-09-05 | Qualcomm Incorporated | Reporting mechanisms for wireless communications |
-
2021
- 2021-07-29 US US17/388,127 patent/US20230030241A1/en active Pending
-
2022
- 2022-05-12 TW TW111117744A patent/TWI813283B/zh active
- 2022-06-30 GB GB2401978.8A patent/GB2623280A/en active Pending
- 2022-06-30 DE DE112022003144.1T patent/DE112022003144T5/de active Pending
- 2022-06-30 CN CN202280051653.5A patent/CN117693741A/zh active Pending
- 2022-06-30 WO PCT/IB2022/056107 patent/WO2023007276A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5479615A (en) * | 1991-12-09 | 1995-12-26 | Nec Corporation | Buffer asynchronous output apparatus capable of referring to or renewing a previously renewed buffer area by another renewal processing program |
US20030099305A1 (en) * | 2001-11-24 | 2003-05-29 | Lg Electronics Inc. | System and method for polling a protocol data unit of a transmission buffer |
TW200822638A (en) * | 2006-10-03 | 2008-05-16 | Ind Tech Res Inst | System and methods for determining granularity level of information about buffer status |
US20120317312A1 (en) * | 2011-06-10 | 2012-12-13 | International Business Machines Corporation | Managing operator message buffers in a coupling facility |
US20120331172A1 (en) * | 2011-06-22 | 2012-12-27 | International Business Machines Corporation | Method And System For Improved Performance Of Network Communications With Interface Specific Buffers |
US20210219169A1 (en) * | 2018-09-27 | 2021-07-15 | Vivo Mobile Communication Co., Ltd. | Buffer status report transmission method, terminal and scheduling device |
Also Published As
Publication number | Publication date |
---|---|
TW202305593A (zh) | 2023-02-01 |
CN117693741A (zh) | 2024-03-12 |
GB2623280A (en) | 2024-04-10 |
DE112022003144T5 (de) | 2024-04-18 |
US20230030241A1 (en) | 2023-02-02 |
WO2023007276A1 (en) | 2023-02-02 |
GB202401978D0 (en) | 2024-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10027675B2 (en) | Determining virtual adapter access controls in a computing environment | |
US10061600B2 (en) | Ascertaining configuration of a virtual adapter in a computing environment | |
CN111201521B (zh) | 具有应用控制的早期写确认支持的存储器访问代理系统 | |
US9384086B1 (en) | I/O operation-level error checking | |
US11379390B1 (en) | In-line data packet transformations | |
US11347512B1 (en) | Substitution through protocol to protocol translation | |
JP7083446B2 (ja) | 複数のプロセッサによる共有キャッシュ・ラインの同時変更 | |
US9354967B1 (en) | I/O operation-level error-handling | |
WO2023024919A1 (en) | Transport control word architecture for physical port mirroring | |
TWI813283B (zh) | 用於使用緩衝概要群組之系統間處理之電腦程式產品、電腦系統及電腦實施方法 | |
TWI813284B (zh) | 用於使用緩衝概要群組之向量處理之電腦程式產品、電腦系統及電腦實施方法 | |
US12028276B2 (en) | Transport control word architecture for virtual port mirroring | |
US11853322B2 (en) | Tracking data availability using heartbeats | |
US20190332562A1 (en) | Detecting a type of storage adapter connected and miscabling of a microbay housing the storage adapter |