Dynamic software updating michael hicks
We report our experience with two open-source server programs: Open SSH daemon, and Very Secure FTP daemon.
The majority of updates were easy to generate, though more effort was required for signficant functional changes.
Compiling for updateability had virtually no impact on server performance, but would be more significant for compute-bound programs. Hicks is an assistant professor in the Computer Science department at the University of Maryland, College Park. dissertation, he designed and implemented a general, language-based approach for dynamically upgrading running software.
His research bridges the areas of “systems” and programming languages, in that he frequently applies or develops language-based technology to solve problems that occur in systems software. This dissertation won the 2002 ACM SIGPLAN Doctoral Dissertation Award.
Dynamic software updating (DSU) addresses this difficulty by permitting programs to be updated while they run.
DSU is appealing compared to other approaches for on-line upgrades because it is quite general and requires no redundant hardware.
Second, Kitsune makes the important aspects of updating explicit in the program text, making its semantics easy to understand while keeping programmer work to a minimum.
Finally, the programmer can write simple specifications to direct Kitsune to generate code that traverses and transforms old-version state for use by the new code; such state transformation is often necessary, and is significantly more difficult in prior DSU systems.
Many important applications must run continuously and without interruption, yet must be changed to fix bugs or upgrade functionality.
Noteworthy among his research accomplishments is the development of analysis and compilation tools for enabling software to be safely updated while it runs.
He has explored the design of new programming languages and analysis tools for automatically discovering or remediating software flaws and security vulnerabilities.
These systems are commonly tested on real-world programs.
Current operating systems and programming languages are typically not designed with DSU in mind.Hicks is an associate professor in the Computer Science department and UMIACS at the University of Maryland, College Park, and is the Director of the Maryland Cybersecurity Center (MC2).