JP2015506027A - バッファリソース管理方法および通信機器 - Google Patents
バッファリソース管理方法および通信機器 Download PDFInfo
- Publication number
- JP2015506027A JP2015506027A JP2014546268A JP2014546268A JP2015506027A JP 2015506027 A JP2015506027 A JP 2015506027A JP 2014546268 A JP2014546268 A JP 2014546268A JP 2014546268 A JP2014546268 A JP 2014546268A JP 2015506027 A JP2015506027 A JP 2015506027A
- Authority
- JP
- Japan
- Prior art keywords
- list
- deallocation
- pointer
- buffer
- buffer object
- 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.)
- Pending
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 273
- 238000007726 management method Methods 0.000 title claims description 37
- 238000004891 communication Methods 0.000 title claims description 26
- 230000009471 action Effects 0.000 claims description 56
- 238000000034 method Methods 0.000 claims description 48
- 238000004140 cleaning Methods 0.000 claims 2
- 230000008569 process Effects 0.000 description 21
- 238000013461 design Methods 0.000 description 12
- 238000012790 confirmation Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
- H04W72/1221—Wireless traffic scheduling based on age of data to be sent
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9047—Buffering arrangements including multiple buffers, e.g. buffer pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/08—Access point devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/06—Indexing scheme relating to groups G06F5/06 - G06F5/16
- G06F2205/064—Linked list, i.e. structure using pointers, e.g. allowing non-contiguous address segments in one logical buffer or dynamic buffer space allocation
Abstract
Description
●2つの同時タスクのみ利用可能
2つを超えるタスクを有する一般事例とは対照的に、このプロデューサおよびコンシューマの事例は、ちょうど2つのタスクを有する。
●一方は読み出し、他方は書き込む
どのタスクも読み出しも書き込みもできる一般事例とは対照的に、このプロデューサはバッファプールに主に書き込み、一方コンシューマはバッファプールから主に読み出す。
1.クリティカルデータ構造を異なるタスクに分離する。
2.できるだけ少ない数の命令を用いて、それらのクリティカルデータ構造にアクセスする。
3.クリティカルデータ構造の1つへの同時アクセスが避けられないとき、異なるタスクからの操作が互いに矛盾しないようにしておく方がよい。
4.状態確認を使用する必要があるとき、いったん真と確認されたら、状態が変わらないようにする方がよい。
●alloc_head:
割り当てリストを指し示す(バッファ*)先頭ポインタ
○ポインタはNULLに初期化される。
●free_head:
割り当て解除リストを指し示す(バッファ*)先頭ポインタ
○ポインタはNULLに初期化される。
●free_tail:
割り当て解除リストの最後のバッファオブジェクトの次のポインタを指し示す(バッファ**)末尾ポインタ
○ポインタは初期化においてfree_headを指し示す。
●inFreeList:バッファオブジェクトがプールの中にあるか否かを示すブール代数(真(TRUE):空、偽(FALSE):使用)
このフィールドは、次のルールに従って設定される。
●コンテンツ[]:char型[]
例えば最大2,500バイトの着信パケットを保持する。
●長さ
実際のバッファコンテンツの長さ。
●オフセット
アレイ内のコンテンツの開始オフセットであり、前置されるプロトコルヘッダ(PDCP)を保持する。
●次
続くバッファオブジェクトを指し示す次のポインタ。
●魔法数(マジックナンバー)
バッファの所有者を示す任意の隠しフィールドである。
Nを1、2、3...から列挙すると、
S(1,M)=M=O(M)
S(2,M)=S(1,M)+S(1,M−1)+S(1,M−2)+...+S(1,1)
=M+M−1+M−2+...+1=(M+1)×M/2
=O(M2)
S(3,M)=S(2,M)+S(2,M−1)+S(2,M−2)+...+S(2,1)
=(M+1)×M/2+(M)×(M−1)/2+(M−1)×(M−2)/2+...+1
=O(M3)
S(N,M)=O(MN)
上式から、MおよびNが大きい値である場合、コード組み合わせセットの数は膨大な値に達して、全ての可能性を網羅することは極端に難しくなる。まさにこの理由から、クリティカルコードシーケンスは、少ない命令数に限定されている。
割り当て
スレッドが、多重定義された新しい演算子を通じて、プールからバッファを割り当てるように要求すると、スレッドの役割に応じて別々の処理が行われる。
−コンシューマ
通常のシナリオである。リンクが空でない場合、割り当てリストの先頭からバッファオブジェクトを切り離すように常に試みる。リンクが空である場合は、割り当て解除リストが空でない場合に、プロデューサのスレッドから割り当て解除リストを引き継ぐように試み、割り当て解除リストが空である場合に、バッファプールを作成するためにヒープの中から大容量メモリを割り当てるように、独自の新しい機能を呼び出す。
−プロデューサ
それ自体のプロデューサプールの中からバッファを割り当てる(後で詳述する)。
コンシューマタスク
if(割り当てリストが空である)
{
if(割り当て解除リストが空である)
{
//ヒープの中から取得
ヒープの中から1組のバッファを割り当て、それらを割り当てリストにリンクする
}
else
{
//引き継ぎ行動
alloc_head=free_head;
free_head=NULL;
free_tail=&free_head;
}
}
//バッファオブジェクトの割り当て
割り当てリストの先頭からバッファオブジェクトを切り離す
割り当て解除
割り当て手順と同様に、割り当て解除においても、次の2つのシナリオを区別する必要がある。
−プロデューサ
free_tailポインタによってのみ割り当て解除リストに作用する。2つのCPU命令で十分である。すなわち、バッファオブジェクトをfree_tailが指示する割り当て解除リストの最後にリンクさせる命令と、free_tailをこのバッファオブジェクトに移動させる命令とで十分である。割り当て解除シナリオが割り当てシナリオの引き継ぎ動作と同時に行われることがあるので、その後、データの完全性を保証するために特別な事後調整が依然として必要である(後で詳述する)。
−コンシューマ
プロデューサとの衝突を避けるために、コンシューマタスクからの割り当て解除手順は、割り当てリストの最初にバッファを挿入することで、割り当てリストに作用するだけである。
プロデューサタスク
if{(free_tail==&free_head)
{
//引き継ぎとのコンフリクトを解決する
//free_tailをフリーリストの最後に移動させる
while(*free_tail !=NULL)
{
free_tail=&(*free_tail)−>next
}
}
//バッファオブジェクトをフリーリストの最後にリンクする
*free_tail=pNodeDel;
free_tail=&(pNodeDel−>next);
//事後調整
if(free_headが空である場合)
{
free_tail=&free_head;
}
これらに対応するものとして、図4は、一例であるコンシューマタスクのフロー図を示し、図5は、一例であるプロデューサタスクのフロー図を示す。
●割り当てリストにバッファがなく、割り当て解除リストに1つだけバッファが残されている。
●割り当て解除において、割り当て解除リストの最後のオブジェクト(唯一のバッファオブジェクト)をfree_tailによって指示してもらい、その次のポインタへリンクしようと試みるまさにその前に、タスク切り替えが起こり、割り当て解除リストから唯一のバッファオブジェクトを引き継いでコンシューマタスクに割り当て、次いでalloc_headは再びNULLに設定される。
●プロデューサタスクは、何事も起こらなかったかのように、その実行を再開して続行する。この場合、プロデューサタスクは、依然として前のバッファオブジェクト(割り当てられている)を使用して、解放されるバッファをリンクする。解放されたバッファは、もはやどの既知のポインタからも参照されないので漏れる。
●NewfromHeap:
割り当てリストがヒープの中から割り当てられた新しいバッファオブジェクトを有するか、それとも割り当て解除リストから引き継がれた再利用のバッファオブジェクトを有するかを示す(ブール代数)。
●free_head==NULL
バッファ紛失の前提条件である引き継ぎが本当に起こっていることを意味している。
●inFreeList==TRUE(真)
バッファが割り当てられていないことを意味しており、紛失する可能性がある。
●(alloc_head==NULL)||(NewfromHeap)
割り当て解除リストから引き継がれた唯一のバッファオブジェクトが割り当てられており、バッファ紛失が生じていることを意味する。
プロデューサタスク
for(int i=0; i<2;i++)
{
if(free_tail==&free_head)
{
//引き継ぎとのコンフリクトを解決する
//free_tailをフリーリストの最後に移動させる
while(*free_tail !=NULL)
{
free_tail=&(*free_tail)−>next
}
}
//バッファオブジェクトをフリーリストの最後にリンクする
*free_tail=pNodeDel;
free_tail=&(pNodeDel−>next);
//事後調整
if(free_headが空である)
{
free_tail=&free_head;
//バッファ紛失検出
if((pNodeDel−>inFreeList==TRUE)&&
(alloc_head==NULL||NewfromHeap))
{
continue;
}
}
break;
}
図6は、一例であるバッファ紛失検出を有するプロデューサタスクのフロー図を示す。
<略語集>
BS 基地局(Base Station)
eNB 進化型ノードB(evolved Node B)
LTE ロングタームエボリューション(Long Term Evolution)
MAC 媒体アクセス制御(Media Access Control)
OS オペレーティングシステム(Operating System)
PDCP パケットデータ収束プロトコル(Packet Data Convergence Protocol)
PDU パケットデータユニット(Packet Data Unit)
RLC 無線リンク制御(Radio Link Control)
TTI 送信時間間隔(Transmission Time Interval)
UP ユーザプレーン(User Plane)
Claims (21)
- バッファリソースの管理方法であって、割り当てリストと割り当て解除リストとを有するようにバッファプールが構成されており、
前記割り当てリストは、前のバッファオブジェクトにおいてネクストポインタによって次のバッファオブジェクトへとリンクされる1つ以上のバッファオブジェクトと、前記割り当てリストにおける先頭のバッファオブジェクトの次のバッファオブジェクトを指し示しているヘッドポインタとを有し、
前記割り当て解除リストは、前のバッファオブジェクトにおいてネクストポインタによって次のバッファオブジェクトへとリンクされる1つ以上のバッファオブジェクトと、前記割り当てリストにおける先頭のバッファオブジェクトの次のバッファオブジェクトを指し示しているヘッドポインタと、前記割り当てリストの最後に位置するバッファオブジェクトのネクストポインタを指し示しているテールポインタとを有し、前記テールポインタはポインタのポインタであり、
初期化の際に、前記割り当て解除リストの前記ヘッドポインタが空にされ、前記割り当て解除リストの前記テールポインタが前記割り当て解除リストの前記ヘッドポインタを指し示すようにされ、
前記バッファリソースの管理方法は、引き継ぎアクションとして、
前記割り当て解除リストの前記ヘッドポインタを前記割り当てリストの前記ヘッドポインタに割り当てるステップと、
前記割り当て解除リストの前記ヘッドポインタをクリーニングして空にするステップと、
前記割り当て解除リストの前記テールポインタを当該割り当て解除リストの前記ヘッドポインタを指し示すようにするステップと
を有することを特徴とするバッファリソースの管理方法。 - 前記割り当てリストが空かどうかを判定するステップと、
前記割り当てリストが空である場合、前記割り当て解除リストが空であるかどうかを判定するステップと、
前記割り当て解除リストが空でない場合、前記引き継ぎアクションを実行するステップと
をさらに有することを特徴とする請求項1に記載のバッファリソースの管理方法。 - 前記割り当てリストが空でない場合、前記割り当てリストにおける前記先頭のバッファオブジェクトをリンク解除するステップをさらに有することを特徴とする請求項2に記載のバッファリソースの管理方法。
- 前記割り当て解除リストが空である場合、ヒープから複数のバッファオブジェクトを割り当て、当該複数のバッファオブジェクトを前記割り当てリストにリンクするステップをさらに有することを特徴とする請求項2に記載のバッファリソースの管理方法。
- リクラメーションアクションとして、
前記割り当て解除リストにおける前記最後に位置する前記バッファオブジェクトの前記ネクストポインタを、新しく解放されたバッファオブジェクトを指し示すようにするステップであって、前記割り当て解除リストの最後の前記ネクストポインタは前記割り当て解除リストの前記テールポインタによってアドレス指定されている、前記ステップと、
前記割り当て解除リストの前記テールポインタを前記新しく解放されたバッファオブジェクトのネクストポインタに移動させるステップと
をさらに有することを特徴とする請求項1ないし4のいずれか1項に記載のバッファリソースの管理方法。 - 事後調整アクションとして、
前記新しく解放されたバッファオブジェクトが前記割り当て解除リスト内にリンクされた後で、前記割り当て解除リストの前記ヘッドポインタが空かどうかを判定するステップと、
前記割り当て解除リストの前記ヘッドポインタが空である場合、前記割り当て解除リストの前記テールポインタを前記割り当て解除リストの前記ヘッドポインタを指し示すようにするステップと
をさらに有することを特徴とする請求項5に記載のバッファリソースの管理方法。 - 再リクラメーションアクションとして、
前記事後調整アクションの後で、前記割り当てリストの前記ヘッドポインタが空で、かつ、前記新しく解放されたバッファオブジェクトがまだ解放状態であるかどうかを判定するステップと、
前記割り当てリストの前記ヘッドポインタが空で、かつ、前記新しく解放されたバッファオブジェクトがまだ解放状態である場合、前記リクラメーションアクションを再度実行するステップと
をさらに有することを特徴とする請求項6に記載のバッファリソースの管理方法。 - 前記引き継ぎアクションと前記リクラメーションアクションとはどの位置においても交互に配置可能であることを特徴とする請求項5ないし7のいずれか1項に記載のバッファリソースの管理方法。
- バッファリソースの管理方法であって、バッファプールが割り当てリストと割り当て解除リストとを有すように構成されており、
前記割り当てリストは、前のバッファオブジェクトにおいてネクストポインタによって次のバッファオブジェクトへとリンクされる1つ以上のバッファオブジェクトと、前記割り当てリストにおける先頭のバッファオブジェクトの次のバッファオブジェクトを指し示しているヘッドポインタとを有し、
前記割り当て解除リストは、前のバッファオブジェクトにおいてネクストポインタによって次のバッファオブジェクトへとリンクされる1つ以上のバッファオブジェクトと、前記割り当てリストにおける先頭のバッファオブジェクトの次のバッファオブジェクトを指し示しているヘッドポインタと、前記割り当てリストの最後に位置するバッファオブジェクトのネクストポインタを指し示しているテールポインタとを有し、前記テールポインタはポインタのポインタであり、
初期化の際に、前記割り当て解除リストの前記ヘッドポインタが空にされ、前記割り当て解除リストの前記テールポインタが前記割り当て解除リストの前記ヘッドポインタを指し示すようにされ、
前記バッファリソースの管理方法は、リクラメーションアクションとして、
前記割り当て解除リストにおける前記最後に位置する前記バッファオブジェクトの前記ネクストポインタを、新しく解放されたバッファオブジェクトを指し示すようにするステップであって、前記割り当て解除リストの最後の前記ネクストポインタは前記割り当て解除リストの前記テールポインタによってアドレス指定されている、前記ステップと、
前記割り当て解除リストの前記テールポインタを前記新しく解放されたバッファオブジェクトのネクストポインタに移動させるステップと
を有することを特徴とするバッファリソースの管理方法。 - 事後調整アクションとして、
前記新しく解放されたバッファオブジェクトが前記割り当て解除リスト内にリンクされた後で、前記割り当て解除リストの前記ヘッドポインタが空かどうかを判定するステップと、
前記割り当て解除リストの前記ヘッドポインタが空である場合、前記割り当て解除リストのテールポインタを前記割り当て解除リストのヘッドポインタを指し示すようにするステップと
をさらに有する
ことを特徴とする請求項9に記載のバッファリソースの管理方法。 - 再リクラメーションアクションとして、
前記事後調整アクションの後で、前記割り当てリストの前記ヘッドポインタが空で、かつ、前記新しく解放されたバッファオブジェクトがまだ解放状態であるかどうかを判定するステップと、
前記割り当てリストの前記ヘッドポインタが空で、かつ、前記新しく解放されたバッファオブジェクトがまだ解放状態である場合、前記リクラメーションアクションを再度実行するステップと
ことを特徴とする請求項10に記載のバッファリソースの管理方法。 - 通信機器においてバッファリソース管理を実行させるコンピュータ可読命令であって、コンピューティングデバイスによって実行可能であり、請求項1ないし11のいずれか1項に記載された前記バッファリソースの管理方法を実行させるコンピュータ可読命令を備えたコンピュータ可読記憶媒体。
- 割り当て解除リストを有するように構成されたバッファプールを備えた通信機器であって、
前記割り当て解除リストは、
前のバッファオブジェクト内のネクストポインタによって次のバッファオブジェクトへとリンクされた1つ以上のバッファオブジェクトと、
前記割り当て解除リストの先頭に位置するバッファオブジェクトを指し示すヘッドポインタと、
ポインタのポインタであるテールポインタであって、前記割り当て解除リストの最後に位置するバッファオブジェクトのネクストポインタを指し示すテールポインタと
を有することを特徴とする通信機器。 - 初期化の際に、前記割り当て解除リストの前記ヘッドポインタが空にされ、前記割り当て解除リストの前記テールポインタが前記割り当て解除リストの前記ヘッドポインタを指し示すようにされることを特徴とする請求項13に記載の通信機器。
- 前記バッファプールはさらに割り当てリストを有するように構成されており、
前記割り当てリストは、
前のバッファオブジェクト内のネクストポインタによって次のバッファオブジェクトへとリンクされた1つ以上のバッファオブジェクトと、
前記割り当てリストの先頭に位置するバッファオブジェクトを指し示すヘッドポインタと
を有することを特徴とする請求項13または14に記載の通信機器。 - 引き継ぎアクションとして、
前記割り当て解除リストの前記ヘッドポインタを前記割り当てリストの前記ヘッドポインタに割り当てるステップと、
前記割り当て解除リストの前記ヘッドポインタをクリーニングして空にするステップと、
前記割り当て解除リストの前記テールポインタを当該割り当て解除リストの前記ヘッドポインタを指し示すようにするステップと
を実行するように構成されたプロセッサをさらに有することを特徴とする請求項13ないし15のいずれか1項に記載の通信機器。 - 前記プロセッサは、さらに、
前記割り当てリストが空かどうかを判定するステップと、
前記割り当てリストが空である場合、前記割り当て解除リストが空であるかどうかを判定するステップと、
前記割り当て解除リストが空でない場合、前記引き継ぎアクションを実行するステップとを実行するように構成されていることを特徴とする請求項16に記載の通信機器。 - 前記プロセッサは、さらに、前記割り当てリストが空でない場合、前記割り当てリストにおける前記先頭のバッファオブジェクトをリンク解除するステップを実行するように構成されていることを特徴とする請求項17に記載の通信機器。
- 前記プロセッサは、さらに、前記割り当て解除リストが空である場合、ヒープから複数のバッファオブジェクトを割り当て、当該複数のバッファオブジェクトを前記割り当てリストにリンクするステップを実行するように構成されていることを特徴とする請求項17に記載の通信機器。
- リクラメーションアクションとして、
前記割り当て解除リストの前記最後に位置する前記バッファオブジェクトの前記ネクストポインタを、新しく解放されたバッファオブジェクトを指し示すようにするステップであって、前記割り当て解除リストの最後の前記ネクストポインタは前記割り当て解除リストの前記テールポインタによってアドレス指定されている、前記ステップと、
前記割り当て解除リストの前記テールポインタを前記新しく解放されたバッファオブジェクトのネクストポインタに移動させるステップと
を実行するように構成されたプロセッサをさらに有することを特徴とする請求項13ないし15のいずれか1項に記載の通信機器。 - 前記プロセッサは、さらに、
事後調整アクションとして、
前記新しく解放されたバッファオブジェクトが前記割り当て解除リスト内にリンクされた後で、前記割り当て解除リストの前記ヘッドポインタが空かどうかを判定するステップと、
前記割り当て解除リストの前記ヘッドポインタが空である場合、前記割り当て解除リストの前記テールポインタを前記割り当て解除リストの前記ヘッドポインタを指し示すようにするステップとを実行するように構成されていることを特徴とする請求項20に記載の通信機器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2011/083973 WO2013086702A1 (en) | 2011-12-14 | 2011-12-14 | Buffer resource management method and telecommunication equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015506027A true JP2015506027A (ja) | 2015-02-26 |
Family
ID=48611813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014546268A Pending JP2015506027A (ja) | 2011-12-14 | 2011-12-14 | バッファリソース管理方法および通信機器 |
Country Status (10)
Country | Link |
---|---|
US (1) | US20140348101A1 (ja) |
EP (1) | EP2792109A1 (ja) |
JP (1) | JP2015506027A (ja) |
KR (1) | KR20140106576A (ja) |
CN (1) | CN104025515A (ja) |
BR (1) | BR112014014414A2 (ja) |
CA (1) | CA2859091A1 (ja) |
IN (1) | IN2014KN01447A (ja) |
RU (1) | RU2014128549A (ja) |
WO (1) | WO2013086702A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424123B (zh) * | 2013-09-10 | 2018-03-06 | 中国石油化工股份有限公司 | 一种无锁数据缓冲区及其使用方法 |
US9398117B2 (en) * | 2013-09-26 | 2016-07-19 | Netapp, Inc. | Protocol data unit interface |
CN107797938B (zh) * | 2016-09-05 | 2022-07-22 | 北京忆恒创源科技股份有限公司 | 加快去分配命令处理的方法与存储设备 |
CN109086219B (zh) * | 2017-06-14 | 2022-08-05 | 北京忆恒创源科技股份有限公司 | 去分配命令处理方法及其存储设备 |
US11593483B2 (en) * | 2018-12-19 | 2023-02-28 | The Board Of Regents Of The University Of Texas System | Guarder: an efficient heap allocator with strongest and tunable security |
US11907206B2 (en) * | 2021-07-19 | 2024-02-20 | Charles Schwab & Co., Inc. | Memory pooling in high-performance network messaging architecture |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6482725A (en) * | 1987-09-24 | 1989-03-28 | Nec Corp | Queuing system for data connection |
JPH03236654A (ja) * | 1990-02-14 | 1991-10-22 | Sumitomo Electric Ind Ltd | データ通信装置 |
US20040034743A1 (en) * | 2002-08-13 | 2004-02-19 | Gilbert Wolrich | Free list and ring data structure management |
JP2008123516A (ja) * | 2006-11-13 | 2008-05-29 | Internatl Business Mach Corp <Ibm> | ロックフリー同時fifoキュー、キューを実装する方法、装置およびコンピュータ・プログラム |
US7447875B1 (en) * | 2003-11-26 | 2008-11-04 | Novell, Inc. | Method and system for management of global queues utilizing a locked state |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3034873B2 (ja) * | 1988-07-01 | 2000-04-17 | 株式会社日立製作所 | 情報処理装置 |
US5586291A (en) * | 1994-12-23 | 1996-12-17 | Emc Corporation | Disk controller with volatile and non-volatile cache memories |
US6298386B1 (en) * | 1996-08-14 | 2001-10-02 | Emc Corporation | Network file server having a message collector queue for connection and connectionless oriented protocols |
US5889779A (en) * | 1996-12-02 | 1999-03-30 | Rockwell Science Center | Scheduler utilizing dynamic schedule table |
US5893162A (en) * | 1997-02-05 | 1999-04-06 | Transwitch Corp. | Method and apparatus for allocation and management of shared memory with data in memory stored as multiple linked lists |
US6487202B1 (en) * | 1997-06-30 | 2002-11-26 | Cisco Technology, Inc. | Method and apparatus for maximizing memory throughput |
US6128641A (en) * | 1997-09-12 | 2000-10-03 | Siemens Aktiengesellschaft | Data processing unit with hardware assisted context switching capability |
US6430666B1 (en) * | 1998-08-24 | 2002-08-06 | Motorola, Inc. | Linked list memory and method therefor |
US6668291B1 (en) * | 1998-09-09 | 2003-12-23 | Microsoft Corporation | Non-blocking concurrent queues with direct node access by threads |
US6988177B2 (en) * | 2000-10-03 | 2006-01-17 | Broadcom Corporation | Switch memory management using a linked list structure |
US7860120B1 (en) * | 2001-07-27 | 2010-12-28 | Hewlett-Packard Company | Network interface supporting of virtual paths for quality of service with dynamic buffer allocation |
TW580619B (en) * | 2002-04-03 | 2004-03-21 | Via Tech Inc | Buffer control device and the management method |
CN100403739C (zh) * | 2006-02-14 | 2008-07-16 | 华为技术有限公司 | 基于链表的进程间消息传递方法 |
US7669015B2 (en) * | 2006-02-22 | 2010-02-23 | Sun Microsystems Inc. | Methods and apparatus to implement parallel transactions |
US9043363B2 (en) * | 2011-06-03 | 2015-05-26 | Oracle International Corporation | System and method for performing memory management using hardware transactions |
-
2011
- 2011-12-14 KR KR1020147016603A patent/KR20140106576A/ko not_active Application Discontinuation
- 2011-12-14 US US14/365,470 patent/US20140348101A1/en not_active Abandoned
- 2011-12-14 CN CN201180075492.5A patent/CN104025515A/zh active Pending
- 2011-12-14 RU RU2014128549A patent/RU2014128549A/ru not_active Application Discontinuation
- 2011-12-14 WO PCT/CN2011/083973 patent/WO2013086702A1/en active Application Filing
- 2011-12-14 EP EP11877494.2A patent/EP2792109A1/en not_active Withdrawn
- 2011-12-14 CA CA2859091A patent/CA2859091A1/en not_active Abandoned
- 2011-12-14 JP JP2014546268A patent/JP2015506027A/ja active Pending
- 2011-12-14 BR BR112014014414A patent/BR112014014414A2/pt not_active IP Right Cessation
-
2014
- 2014-07-10 IN IN1447KON2014 patent/IN2014KN01447A/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6482725A (en) * | 1987-09-24 | 1989-03-28 | Nec Corp | Queuing system for data connection |
JPH03236654A (ja) * | 1990-02-14 | 1991-10-22 | Sumitomo Electric Ind Ltd | データ通信装置 |
US20040034743A1 (en) * | 2002-08-13 | 2004-02-19 | Gilbert Wolrich | Free list and ring data structure management |
US7447875B1 (en) * | 2003-11-26 | 2008-11-04 | Novell, Inc. | Method and system for management of global queues utilizing a locked state |
JP2008123516A (ja) * | 2006-11-13 | 2008-05-29 | Internatl Business Mach Corp <Ibm> | ロックフリー同時fifoキュー、キューを実装する方法、装置およびコンピュータ・プログラム |
Also Published As
Publication number | Publication date |
---|---|
KR20140106576A (ko) | 2014-09-03 |
RU2014128549A (ru) | 2016-02-10 |
US20140348101A1 (en) | 2014-11-27 |
WO2013086702A1 (en) | 2013-06-20 |
CN104025515A (zh) | 2014-09-03 |
CA2859091A1 (en) | 2013-06-20 |
BR112014014414A2 (pt) | 2017-06-13 |
IN2014KN01447A (ja) | 2015-10-23 |
EP2792109A1 (en) | 2014-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015506027A (ja) | バッファリソース管理方法および通信機器 | |
US8392925B2 (en) | Synchronization mechanisms based on counters | |
JP2017208145A (ja) | ミドルウェアマシン環境においてマルチノードアプリケーションのためのメッセージキューを提供および管理するためのシステムおよび方法 | |
KR102206577B1 (ko) | 트랜잭셔널 미들웨어 머신 환경에서 분산 트랜잭션 락을 제공하는 시스템 및 방법 | |
ES2719489T3 (es) | Aparato y método para procesar eventos en una red de telecomunicaciones | |
EP3462324B1 (en) | Pointers in a memory managed system | |
US10331500B2 (en) | Managing fairness for lock and unlock operations using operation prioritization | |
US10896001B1 (en) | Notifications in integrated circuits | |
CN107797848B (zh) | 进程调度方法、装置和主机设备 | |
US20060031658A1 (en) | Method, apparatus, and computer program product for dynamically tuning a data processing system by identifying and boosting holders of contentious locks | |
US10387053B1 (en) | Memory synchronization in a distributed computing system | |
US11042409B2 (en) | Leader election with lifetime term | |
WO2004066148A1 (en) | Method and apparatus for managing resource contention in a multisystem cluster | |
Burns | The application of the original priority ceiling protocol to mixed criticality systems | |
US10102037B2 (en) | Averting lock contention associated with core-based hardware threading in a split core environment | |
Huang et al. | Los: A high performance and compatible user-level network operating system | |
US10445096B2 (en) | Managing lock and unlock operations using traffic prioritization | |
US9940128B2 (en) | Conditional access with timeout | |
US20120210074A1 (en) | Dual mode reader writer lock | |
US10108453B2 (en) | Averting lock contention associated with core-based hardware threading in a split core environment | |
US20080127213A1 (en) | Contention resolution with counter rollover | |
US11126474B1 (en) | Reducing resource lock time for a virtual processing unit | |
US9509780B2 (en) | Information processing system and control method of information processing system | |
US20150134841A1 (en) | Network system, network node and communication method | |
US8566829B1 (en) | Cooperative multi-level scheduler for virtual engines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141209 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141209 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160129 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160902 |