A device, computer-readable storage medium, and method with shared memory for exchanging data between containers.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- TOSHIBA TEC KK
- Filing Date
- 2025-10-27
- Publication Date
- 2026-06-25
Smart Images

Figure 2026104793000001_ABST
Abstract
Claims
1. A sensor configured to generate data streams related to the physical environment, One or more hardware processors, Shared memory and Platform Abstraction Layer (PAL), Equipped with, The aforementioned Platform Abstraction Layer (PAL) is: A plurality of containers, including a first container containing a first service written in a first programming language, and a second container containing a second service written in a second programming language different from the first programming language, Multiple buffers in the shared memory enable the multiple containers to exchange data chunks to form a pipeline for processing the data stream, Includes, The data chunk includes a unique ID so that the shared memory supports random access by the multiple containers. device.
2. The plurality of containers have zero-copy access to the plurality of buffers, The first container stores the processed data chunks in the first buffer of the plurality of buffers, The processed data chunk can be retrieved from the first buffer by the second container without copying the processed data chunk to a separate buffer. The device according to claim 1.
3. The first container is configured to store the processed data chunks in a first buffer and then send a set of unique IDs corresponding to the processed data chunks to the second container. The second container is The index array for shared memory is used to identify a pointer to the processed data chunk in the first buffer using the set of unique IDs. Using the pointer, retrieve the processed data chunk from the first buffer. It is configured in such a way. The device according to claim 2.
4. The aforementioned index array is a circular buffer. The device according to claim 3.
5. The device is a network-connected edge device configured to record information about the physical environment using the data stream. The device according to claim 1.
6. The aforementioned network-connected edge device is a camera. The sensor is configured to capture an image of the physical environment, The aforementioned data stream is a stream of video frames. The device according to claim 5.
7. The first service performs at least one of the encoding or decoding processes on the stream of video frames. The second service performs an inference process on the stream of video frames, corresponding to an artificial intelligence (AI) or machine learning (ML) model. The device according to claim 6.
8. The one or more hardware processors include a first hardware processor and an AI accelerator. The first hardware processor is configured to perform the first service, The AI accelerator is configured to perform the second service. The device according to claim 7.
9. Each of the data chunks includes a pointer counter in the shared memory that indicates the number of the plurality of containers having pointers to each data chunk. The device according to claim 1.
10. The shared memory further includes an allocator configured to mark each data chunk as invalid when it is determined that the pointer counter has a value of zero. The device according to claim 9.
11. A computer-readable storage medium having computer-readable program code that defines a platform abstraction layer (PAL), The computer-readable program code is executable by one or more computer processors to perform an operation. The aforementioned operation is, The first operation involves receiving a data stream related to the physical environment from the sensor, A second operation that provides multiple containers, including a first container containing a first service written in a first programming language, and a second container containing a second service written in a second programming language different from the first programming language, A third operation provides multiple buffers in shared memory, A fourth operation establishes a pipeline of the plurality of buffers that enables the plurality of containers to exchange data chunks in order to process the data stream. Includes, The data chunk includes a unique ID so that the shared memory supports random access by the multiple containers. Computer-readable storage medium.
12. The plurality of containers have zero-copy access to the plurality of buffers, The first container stores the processed data chunks in the first buffer of the plurality of buffers, The processed data chunk can be retrieved from the first buffer by the second container without copying the processed data chunk to a separate buffer. The computer-readable storage medium according to claim 11.
13. The first container is configured to store the processed data chunks in a first buffer and then send a set of unique IDs corresponding to the processed data chunks to the second container. The second container is The index array for shared memory is used to identify a pointer to the processed data chunk in the first buffer using the set of unique IDs. Using the pointer, retrieve the processed data chunk from the first buffer. It is configured in such a way. The computer-readable storage medium according to claim 12.
14. The sensor is configured to capture an image of the physical environment, The aforementioned data stream is a stream of video frames. The computer-readable storage medium according to claim 11.
15. The first service performs at least one of the encoding or decoding processes on the stream of video frames. The second service executes an inference process corresponding to an AI or ML model on the stream of video frames. The computer-readable storage medium according to claim 14.
16. The aforementioned operation is, An operation to allocate the first service to run on a first hardware processor in the device, The operation of assigning the second service to be executed on the AI accelerator within the device, and The computer-readable storage medium according to claim 15, further comprising:
17. Each of the data chunks includes a pointer counter in the shared memory that indicates the number of the plurality of containers having pointers to each data chunk. The computer-readable storage medium according to claim 11.
18. The operation further includes marking each of the data chunks in the shared memory as invalid in response to the determination that the pointer counter has a value of zero. The computer-readable storage medium according to claim 17.
19. The steps include receiving a data stream related to the physical environment from a sensor, A step of providing a plurality of containers, including a first container containing a first service written in a first programming language, and a second container containing a second service written in a second programming language different from the first programming language, The steps include providing multiple buffers in shared memory, The steps include establishing a pipeline with the plurality of buffers that allows the plurality of containers to exchange data chunks to process the data stream, and Includes, The data chunk includes a unique ID so that the shared memory supports random access by the multiple containers. method.
20. The plurality of containers have zero-copy access to the plurality of buffers, The first container stores the processed data chunks in the first buffer of the plurality of buffers, The processed data chunk can be retrieved from the first buffer by the second container without copying the processed data chunk to a separate buffer. The method according to claim 19.