Controller Shared Memory Access Control for Program Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data sharing methods between control programs and data processing programs in control systems lack access right management, particularly for Java objects and shared memory, which can lead to unauthorized access and interference with control program operations.
Innovation Solution
A controller and control management system with a shared memory that includes an access right management unit to manage and enforce access rights for both control and data processing programs, using an arbitration unit to determine and enforce access permissions, and a controller management device for setting access rights.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If data processing programs are allowed to access shared memory without access right management, then data processing functionality is improved, but control program operation reliability deteriorates due to potential unauthorized access and interference
Solution Approach 1:
The shared memory is segmented into multiple storage areas with different access rights. The arbitration unit divides memory access permissions by creating distinct regions (first storage area for read-only control programs, second storage area for read-write data processing programs), allowing both programs to access necessary data while preventing unauthorized modifications to control program data.
Solution Approach 2:
An arbitration unit is introduced as an intermediary between the control program and data processing program to manage shared memory access. This mediator receives access requests from both programs, determines validity based on pre-set rules, and grants or denies access accordingly, ensuring reliable operation while maintaining data processing functionality.
2Reliability
If access control mechanisms are implemented for shared memory, then control program operation reliability is improved, but device complexity increases due to additional management units and arbitration logic
Solution Approach 1:
The arbitration unit is merged with the shared memory structure, combining access control functionality directly into the memory management system. This integration allows the controller to enforce access rights without requiring separate external control mechanisms, reducing overall system complexity while maintaining reliability.
Solution Approach 2:
The arbitration unit operates autonomously by automatically determining access validity based on pre-configured rules and granting/denying access without requiring external intervention for each access request. This self-service capability reduces the burden on external control systems and simplifies the overall architecture.
Data Source
Figure 1
Figure 2
Figure 3~5
AI summary
In a controller that operates a control program which executes sequence control or the like together with a data processing program which executes a complex arithmetic operation or the like, I/O resource information is shared with a shared memory, and an access right to the I/O resource information by the data processing program is controlled using read-in prohibited information and write-in permitted information.