Container-Based OS Updates for Cellular Device Continuity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current operating system updates on computing devices, such as smartphones, require a restart, causing downtime and potential safety hazards due to the inability to access the device during updates, even for essential functions like making emergency calls.
Innovation Solution
A container-based operating system (OS) that allows for compartmentalized updates of software components, such as drivers, without rebooting the device, using a container management server (CMS) to identify and push updated containers over a cellular network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a traditional operating system update is pushed, then software bugs are fixed and security vulnerabilities are remediated, but the device becomes unusable for several minutes requiring a restart
Solution Approach 1:
The operating system is segmented into multiple independent containers (e.g., container 212 for camera software, container 214 for messaging, container 216 for web browsing). Each container can be updated independently without affecting others, allowing selective updates that minimize device downtime while maintaining security and functionality.
Solution Approach 2:
A container management server (CMS) acts as an intermediary between the update source and the device. The CMS pushes individual container updates selectively based on which containers contain outdated software, rather than forcing a complete operating system update. This mediator coordinates updates to reduce unnecessary downtime.
2Reliability
If a complete operating system update is performed, then all software components are updated, but the user cannot access emergency functions during the update process
Solution Approach 1:
Critical safety functions are segmented into separate containers that can be updated independently. Essential services such as emergency calling can be maintained in updated containers while non-critical containers are being updated, ensuring continuous access to safety functions even during update processes.
Solution Approach 2:
The container management server identifies and updates critical safety-related containers first before updating non-critical containers. This preliminary action ensures that safety functions are updated and available before other software components, mitigating the safety hazard of device inaccessibility.
3Reliability
If the entire operating system is updated for a single camera software improvement, then the camera function is improved, but all other device functions are interrupted
Solution Approach 1:
The camera software is isolated in its own container (container 212), separate from messaging (container 214), web browsing (container 216), and other functions. When camera software needs updating, only the camera container is updated and restarted, while all other containers continue running normally. This allows camera improvements without interrupting overall device productivity.
Solution Approach 2:
The update is applied locally to only the specific container that contains the camera software, rather than globally to the entire operating system. This localized update approach ensures that only the necessary component is modified and restarted, preserving the functionality and usability of all other device features.
Data Source
AI summary
Processes, computing systems, devices, and automated processes variously perform or include operations to update a cellular device running a container-based operating system. An example process includes retrieving, by a server managing the container OS, a list of containers deployed on the device. The server managing the container OS can compare a deployed container from the list to an updated container to identify the deployed container as invalid. The updated container comprises a grouping of an application with dependencies. The server managing the container OS can push the updated container to the device in response to identifying the deployed container as invalid.


