Font Size: a A A

An Assertion-based Software Dynamic Update Technique

Posted on:2014-06-01Degree:MasterType:Thesis
Country:ChinaCandidate:G Z XieFull Text:PDF
GTID:2308330482450330Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Software needs to be updated constantly during its life time, to fix bugs and to add new functions. A common way to get the application updated is to shut it down, install the new version and then restart it. However some applications should run continually. Dynamic update can update a program when the program is running, that is to say we do not have to reboot the program. Compared to traditional update methods, dynamic update faces more challenges, especially the correctness of the program execution after the update. Current dynamic update techniques address the correctness issues at the type-safe level, which can only prevent type errors after dynamic update. Correctness of the application logic is usually achieved by the intervention of programmers through selecting appropriate update points.In this paper, we propose an assertion-based update point selection technique to avoid some logic errors after the dynamic update.First, we propose an assertion-based update point selection criterion. We can specify properties of the application by means of assertions. The assertions are in the program originally or are added for the update. When an update is applied, assertions on the running path of the program should not be violated.Next, to ensure the criterion above, we bring forward an automatic technique using constraint-based analysis. For each update point, we trace those relevant assertions which would be affected when update happened at that update point. By analyzing the types, variables and functions associated with the assertions, we exclude any update point that could possibly violate the above criterion.Last, we implement the assertion-based update point selection technique on top of Ginseng. we also give a case study on the dynamic update of OpenSSH from version 3.7.1p2 to version 3.8pl, use the technique implemented above to demonstrate the feasibility of our approach.
Keywords/Search Tags:Dynamic update, Update point selection, Constraint-based analysis, Pro- gram assertions
PDF Full Text Request
Related items