JP2022552150A - データ構造、メモリ手段、および装置 - Google Patents
データ構造、メモリ手段、および装置 Download PDFInfo
- Publication number
- JP2022552150A JP2022552150A JP2022520392A JP2022520392A JP2022552150A JP 2022552150 A JP2022552150 A JP 2022552150A JP 2022520392 A JP2022520392 A JP 2022520392A JP 2022520392 A JP2022520392 A JP 2022520392A JP 2022552150 A JP2022552150 A JP 2022552150A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data structure
- memory means
- memory cell
- data
- 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
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000004891 communication Methods 0.000 claims abstract description 21
- 238000010586 diagram Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 230000002028 premature Effects 0.000 description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
Description
大きなデータ量が処理されるシステムでは、データのコピーが、システムリソースの高い割合を独占する可能性があり、これにより費用のかかる事柄になり得る。
これを踏まえて本発明は、アプリケーションシステム内のメモリ手段のためのデータ構造をもたらし、このメモリ手段はメモリセルを有する。
ユーザプロセスの異常な終了が認識された場合、本発明のデータ構造の管理構造を介し、そこで占有されたメモリセルに保持されているメモリ手段に基づき、メモリセルが認識および解放され得る。
アプリケーションシステムとは、ここでは、部分的に共有ハードウェアを活用する多数のアプリケーションプログラム、つまり自動化されたフローからなるシステムと理解され得る。この共有ハードウェアの一部が、共有して利用されるメモリ手段であり得る。このアプリケーションシステムは、車両を少なくとも部分的に自動化して、好ましくは高度自動化して動作させるために適応されていてもよい。
共有して利用されるメモリ手段(英語:Shared Memory)とは、ここでは、アプリケーションシステムの複数のプロセスによって利用される物理メモリの一部と理解され得る。
共有して利用されるメモリ手段を使って、複数のプロセス間の高性能データ通信が簡単に実行される。
ポインタオブジェクトの撤去とは、ここでは、ポインタオブジェクトのためのメモリスペースを解放することと理解され得る。
ユーザプロセスの異常な終了とは、ここでは、ユーザプロセスのエラーを伴うまたは早すぎる終了と理解され得る。一方では、プロセスの早すぎる中断に関するプロセス内部の理由が存在する場合に、異常な終了になり得る。その理由は、メモリオーバーフロー、失敗したメモリアロケーションなどであり得る。または他方では、プロセスの早すぎる中断に関するプロセス外部の理由が存在する。この場合も多様な理由が存在し得る。
この実施形態は、それぞれのユーザプロセスによって占有されたメモリセルの整理が簡単に実行され得るという利点を有し、なぜなら、このユーザプロセスによって占有されたすべてのメモリセルを解放するためには、単に当該ユーザプロセスのそれぞれの管理構造を介して反復すればよいからである。
この実施形態は、ユーザプロセス(生産者、消費者)および場合によってはアプリケーションシステムの中央管理プロセスが、別々のプロセスであることができ、かつそれに応じて様々なプロセスコンテキストを実行できるという利点を有する。それにもかかわらず、共有して利用されるメモリ手段内にこの管理構造またはそれぞれの管理構造の格納により、すべてのプロセスが、必要の際には管理構造にアクセスできる。
このメモリ手段は、共有して利用されるメモリ手段であり得る。
この装置は、例えば機械のための制御機器であり得る。この機械が車両であることが考えられる。さらに、この車両が少なくとも部分的に自動化されて動作する車両であることが考えられる。
- 地上を走る乗り物
- 水上を走る乗り物
- 空を飛ぶ乗り物
のことである。
ステップ111において、生産者10がメモリセル215(図2を参照)を要求する。要求111は、アプリケーションシステムの通信ミドルウェアを介して行われ得る。
ステップ113において、生産者10が、メモリセル215を一人または複数の消費者11に送信する。送信は、アプリケーションシステムの通信ミドルウェアを介して行われ得る。この送信は、生産者10の要求に基づいて行われる。その際、メモリセル215の所有権が再びミドルウェアに移される。
ステップ123において、消費者11が、要求されたメモリセル215を解放し、つまり典型的には、メモリセル215の消費者11のポインタオブジェクト20が撤去される。この解放は、消費者11の要求に基づいて行われる。その際、メモリセル215の所有権が再びミドルウェアに移される。これによりメモリセル215は、さらなる消費者に対して、および場合によっては再び生産者10またはさらなる生産者に対しても、利用可能になる。このメモリセル215は、ミドルウェアを介して整理されてもまたはほかで使用されてもよい。
データ構造200は、ポインタオブジェクト20をメモリセル215に保持するように適応されている管理構造203を有する。
この場合、ユーザプロセス201ごとに(つまり生産者10/送信者または消費者11/受信者ごとに)それぞれ1つの管理構造203がミドルウェアによって割り当てられることが考えられ、なぜならこれにより暗示的に、その中にリストされているすべてのメモリセルが、それぞれのユーザプロセス201に振り分けられ得るからである。
このブロック図はさらに、データ構造200を管理するためのセントラルサービス202を示す。このセントラルサービス202は異なるタスクを担い得る。セントラルサービスは一つには、ユーザプロセス201に対してハートビート方法を実行するために適応されていてもよい。このような方法により、セントラルサービス202は、ユーザプロセス201が異常に終了されたかどうか、およびいつ異常に終了されたかを、認識し得る。
図3は、本発明に基づくデータ構造200に関連した方法300のフロー図を示すフロー図を示す。
これに関し、要求のステップ310は複数回繰り返され得る。
このために、図示した実施形態によれば、ステップ331において生産者10により、利用したメモリセル20のポインタオブジェクト20が管理構造203から削除される。続いてステップ332において、メモリセルの送信が通信ミドルウェアを使って行われる。
Claims (8)
- アプリケーションシステム内の、とりわけプロセス間通信のための、メモリ手段(210)、とりわけ共有して利用されるメモリ手段(210)のためのデータ構造(200)であって、前記メモリ手段(210)がメモリセル(215)を有する、データ構造(200)であって、
前記データ構造(200)が管理構造(203)を有し、前記管理構造(203)が、ポインタオブジェクト(20)を前記メモリセル(215)に保持するように適応されていることを特徴とする、データ構造(200)。 - 前記アプリケーションシステムのユーザプロセス(10、11、201)によって前記メモリセル(215)が要求されると前記ポインタオブジェクト(20)を構築するように適応されている、請求項1に記載のデータ構造(200)。
- 前記ユーザプロセス(10、11、201)によって前記メモリセル(215)が解放されると前記ポインタオブジェクト(20)を撤去するように適応されている、請求項1または2に記載のデータ構造(200)。
- 前記ユーザプロセス(10、11、201)が異常に終了された場合に前記メモリセル(215)が解放されるように適応されている、請求項1から3のいずれか一項に記載のデータ構造(200)。
- 各ユーザプロセス(10、11、201)のためにそれぞれの管理構造(203)を有する、請求項1から4のいずれか一項に記載のデータ構造(200)。
- 前記管理構造(203)が、前記共有して利用されるメモリ手段内に格納(210)されている、請求項1から5のいずれか一項に記載のデータ構造(200)。
- 請求項1から6のいずれか一項に記載のデータ構造(200)を有するメモリ手段(210)、とりわけ共有して利用されるメモリ手段(210)。
- 請求項7に記載のメモリ手段(210)を有する装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019215292.9A DE102019215292A1 (de) | 2019-10-04 | 2019-10-04 | Datenstruktur, Speichermittel und Vorrichtung |
DE102019215292.9 | 2019-10-04 | ||
PCT/EP2020/077204 WO2021063933A1 (de) | 2019-10-04 | 2020-09-29 | Datenstruktur, speichermittel und vorrichtung |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022552150A true JP2022552150A (ja) | 2022-12-15 |
Family
ID=72670739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022520392A Pending JP2022552150A (ja) | 2019-10-04 | 2020-09-29 | データ構造、メモリ手段、および装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US11972293B2 (ja) |
EP (1) | EP4038502A1 (ja) |
JP (1) | JP2022552150A (ja) |
KR (1) | KR20220069113A (ja) |
CN (1) | CN114830089A (ja) |
DE (1) | DE102019215292A1 (ja) |
WO (1) | WO2021063933A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021111809A1 (de) | 2021-05-06 | 2022-11-10 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren und system zum übertragen von daten |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1145187A (ja) * | 1996-10-11 | 1999-02-16 | Sun Microsyst Inc | 分散ガーベッジコレクションのためのリソースの管理方法、装置、コンピュータプログラム生産物、コンピュータシステム並びにプラットフォーム間に分散したリソースの割当及び割当解除方法 |
US20110161602A1 (en) * | 2009-12-31 | 2011-06-30 | Keith Adams | Lock-free concurrent object dictionary |
US20200327052A1 (en) * | 2019-04-15 | 2020-10-15 | International Business Machines Corporation | Compiling application with multiple function implementations for garbage collection |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6151658A (en) * | 1998-01-16 | 2000-11-21 | Advanced Micro Devices, Inc. | Write-buffer FIFO architecture with random access snooping capability |
US7761666B2 (en) * | 2006-10-26 | 2010-07-20 | Intel Corporation | Temporally relevant data placement |
US8966203B2 (en) * | 2013-01-04 | 2015-02-24 | Microsoft Corporation | Shared and managed memory unified access |
US9229848B2 (en) * | 2013-01-21 | 2016-01-05 | Micron Technology, Inc. | Determining soft data for fractional digit memory cells |
CN105094751B (zh) * | 2015-07-20 | 2018-01-09 | 中国科学院计算技术研究所 | 一种用于流式数据并行处理的内存管理方法 |
US10509722B2 (en) * | 2017-08-31 | 2019-12-17 | Micron Technology, Inc. | Memory device with dynamic cache management |
KR20190123990A (ko) * | 2018-04-25 | 2019-11-04 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
-
2019
- 2019-10-04 DE DE102019215292.9A patent/DE102019215292A1/de active Pending
-
2020
- 2020-09-29 US US17/765,058 patent/US11972293B2/en active Active
- 2020-09-29 JP JP2022520392A patent/JP2022552150A/ja active Pending
- 2020-09-29 EP EP20781517.6A patent/EP4038502A1/de active Pending
- 2020-09-29 CN CN202080084951.5A patent/CN114830089A/zh active Pending
- 2020-09-29 KR KR1020227014974A patent/KR20220069113A/ko unknown
- 2020-09-29 WO PCT/EP2020/077204 patent/WO2021063933A1/de unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1145187A (ja) * | 1996-10-11 | 1999-02-16 | Sun Microsyst Inc | 分散ガーベッジコレクションのためのリソースの管理方法、装置、コンピュータプログラム生産物、コンピュータシステム並びにプラットフォーム間に分散したリソースの割当及び割当解除方法 |
US20110161602A1 (en) * | 2009-12-31 | 2011-06-30 | Keith Adams | Lock-free concurrent object dictionary |
US20200327052A1 (en) * | 2019-04-15 | 2020-10-15 | International Business Machines Corporation | Compiling application with multiple function implementations for garbage collection |
Also Published As
Publication number | Publication date |
---|---|
WO2021063933A1 (de) | 2021-04-08 |
DE102019215292A1 (de) | 2021-04-08 |
CN114830089A (zh) | 2022-07-29 |
KR20220069113A (ko) | 2022-05-26 |
US11972293B2 (en) | 2024-04-30 |
US20220350661A1 (en) | 2022-11-03 |
EP4038502A1 (de) | 2022-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5459864A (en) | Load balancing, error recovery, and reconfiguration control in a data movement subsystem with cooperating plural queue processors | |
US20200285458A1 (en) | Program update system, control system, mobile body, program update method, recording medium | |
US9298765B2 (en) | Apparatus and method for handling partially inconsistent states among members of a cluster in an erratic storage network | |
US9275243B2 (en) | Communication between key manager and storage subsystem kernel via management console | |
JP2022552150A (ja) | データ構造、メモリ手段、および装置 | |
CN111435286B (zh) | 一种数据存储方法、装置和系统 | |
CA2176996A1 (en) | Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment | |
CN111831504A (zh) | 监控方法、监控装置、计算机设备和介质 | |
US5630133A (en) | Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment | |
CN104461705A (zh) | 一种业务访问的方法及存储控制器、集群存储系统 | |
US7359959B2 (en) | Method and apparatus for using a USB cable as a cluster quorum device | |
US8595728B2 (en) | System for judging an execution status of batch processing, and based on judgement result to send post-update data to terminal device | |
CN105450679A (zh) | 进行数据云存储的方法及系统 | |
CN110445580B (zh) | 数据发送方法及装置、存储介质、电子装置 | |
EP2548118A1 (en) | Dual mode reader writer lock | |
US11698735B2 (en) | Common storage management device and common storage management method | |
CN102043741A (zh) | 用于管道仲裁的电路和方法 | |
CN115269453A (zh) | 数据收发方法、处理器、电子设备和计算机系统 | |
US11341065B2 (en) | Method, computer program, electronic memory medium, device for providing a datum | |
CN114064317A (zh) | 分布式系统中的节点调用方法及相关装置 | |
CN112231290A (zh) | 一种本地日志的处理方法、装置、设备及存储介质 | |
CN116820430B (zh) | 异步读写方法、装置、计算机设备及存储介质 | |
CN116501253A (zh) | 数据存储方法、装置、系统、可读存储介质及电子设备 | |
CN116431540A (zh) | 通信方法、装置、系统及存储介质 | |
CN114461408A (zh) | 多核系统的核间交互方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220530 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230614 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230913 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240313 |