A Platform for Supporting Dynamic Update and Resource Protection in an Embedded Operating System
Recently, many researches focus on providing dynamic update functionality in embedded systems since dynamic update allows a system to enhance or update its functionality even without the need of rebooting the whole system or stopping system services. Dynamic update thus provides more flexibility in the development of embedded systems. However, an incautiously developed component once downloaded may corrupt the system or waste system resources. Because embedded systems' resources are usually limited, protecting system resources against erroneous components is very important, especially in the systems providing dynamic update. In this paper, we have implemented a platform which supports a remote component update mechanism for dynamically upgrading an embedded operating system at run time. Besides, a system resource protection mechanism is implemented for protecting system resources against downloaded un-trusted components. If our system detects misuses of system resources from an erroneous component, it will reclaim the wasted resources and remove the erroneous component out of our embedded client. Currently, our protection mechanism can reclaim lost memory space, ensure the normal execution of critical sections, and prevent null pointer access. The experimental results demonstrate that our platform can effectively support dynamic remote update and prevent incautiously developed components to misuse system resources with only little extra overhead.
dynamic update resource protection embedded operating systems embedded systems garbage collection