Matches in SemOpenAlex for { <https://semopenalex.org/work/W2493803995> ?p ?o ?g. }
- W2493803995 abstract "Interpreting a program carries a runtime penalty: the interpretational overhead. Traditionally, a compiler removes interpretational overhead by sacrificing inessential details of program execution. However, a broad class of system software is based on non-standard interpretation of machine code or a higher-level language. For example, virtual machine monitors emulate privileged instructions; program instrumentation is used to build dynamic call graphs by intercepting function calls and returns; and dynamic software updating technology allows program code to be altered at runtime. Many of these frameworks are performance-sensitive and several efficiency requirements—both formal and informal—have been put forward over the last four decades. Largely independently, the concept of interpretational overhead received much attention in the partial evaluation (“program specialization”) literature. This dissertation contributes a unifying understanding of efficiency and interpretational overhead in system software. Starting from the observation that a virtual machine monitor is a self-interpreter for machine code, our first contribution is to reconcile the definition of efficient virtualization due to Popek and Goldberg with Jones optimality, a measure of the strength of program specializers. We also present a rational reconstruction of hardware virtualization support (“trap-and-emulate”) from context-threaded interpretation, a technique for implementing fast interpreters due to Berndl et al. As a form of augmented execution, virtualization shares many similarities with program instrumentation. Although several low-overhead instrumentation frameworks are available on today’s hardware, there has been no formal understanding of what it means for instrumentation to be efficient. Our second contribution is a definition of efficiency for program instrumentation in the spirit of Popek and Goldberg’s work. Instrumentation also incurs an implicit overhead because instrumentation code needs access to intermediate execution states and this is antagonistic to optimization. The third contribution is to use partial equivalence relations (PERs) to express the dependence of instrumentation on execution state, enabling an instrumentation/optimization trade-off. Since program instrumentation, applied at runtime, constitutes a kind of dynamic software update, we can similarly restrict allowable future updates to be consistent with existing optimizations. Finally, treating “old” and “new” code in a dynamically-updatable program as being written in different languages permits a semantic explanation of a safety rule that was originally introduced as a syntactic check." @default.
- W2493803995 created "2016-08-23" @default.
- W2493803995 creator A5030374873 @default.
- W2493803995 date "2011-01-01" @default.
- W2493803995 modified "2023-09-27" @default.
- W2493803995 title "Interpretational overhead in system software" @default.
- W2493803995 cites W1480157704 @default.
- W2493803995 cites W1480741301 @default.
- W2493803995 cites W1481365258 @default.
- W2493803995 cites W148956775 @default.
- W2493803995 cites W1493792056 @default.
- W2493803995 cites W1494199306 @default.
- W2493803995 cites W1496712790 @default.
- W2493803995 cites W1502282368 @default.
- W2493803995 cites W1505579016 @default.
- W2493803995 cites W1510228738 @default.
- W2493803995 cites W1511668635 @default.
- W2493803995 cites W1517583815 @default.
- W2493803995 cites W1518919505 @default.
- W2493803995 cites W1521474031 @default.
- W2493803995 cites W1521580745 @default.
- W2493803995 cites W1526601993 @default.
- W2493803995 cites W1526863280 @default.
- W2493803995 cites W1529421998 @default.
- W2493803995 cites W1530632793 @default.
- W2493803995 cites W1534212008 @default.
- W2493803995 cites W1553894716 @default.
- W2493803995 cites W1556604985 @default.
- W2493803995 cites W1558236642 @default.
- W2493803995 cites W1559686260 @default.
- W2493803995 cites W1564075167 @default.
- W2493803995 cites W1566344422 @default.
- W2493803995 cites W1568983194 @default.
- W2493803995 cites W1569728954 @default.
- W2493803995 cites W1578536553 @default.
- W2493803995 cites W1578878051 @default.
- W2493803995 cites W1593666219 @default.
- W2493803995 cites W1595637483 @default.
- W2493803995 cites W1596280726 @default.
- W2493803995 cites W1598743827 @default.
- W2493803995 cites W1598768958 @default.
- W2493803995 cites W1603799276 @default.
- W2493803995 cites W1604135736 @default.
- W2493803995 cites W168212000 @default.
- W2493803995 cites W1699577049 @default.
- W2493803995 cites W1806961023 @default.
- W2493803995 cites W1809751277 @default.
- W2493803995 cites W1827849520 @default.
- W2493803995 cites W1855973055 @default.
- W2493803995 cites W1897405783 @default.
- W2493803995 cites W1968724592 @default.
- W2493803995 cites W1969600954 @default.
- W2493803995 cites W1970090703 @default.
- W2493803995 cites W1972301184 @default.
- W2493803995 cites W1977710006 @default.
- W2493803995 cites W1987203566 @default.
- W2493803995 cites W1993694077 @default.
- W2493803995 cites W1994020507 @default.
- W2493803995 cites W1995674161 @default.
- W2493803995 cites W1997143185 @default.
- W2493803995 cites W1998009565 @default.
- W2493803995 cites W1999567573 @default.
- W2493803995 cites W2004971560 @default.
- W2493803995 cites W2005192022 @default.
- W2493803995 cites W2014472261 @default.
- W2493803995 cites W2017532341 @default.
- W2493803995 cites W2027584005 @default.
- W2493803995 cites W2027620096 @default.
- W2493803995 cites W2029074074 @default.
- W2493803995 cites W2030916392 @default.
- W2493803995 cites W2034613985 @default.
- W2493803995 cites W2034711041 @default.
- W2493803995 cites W2036107204 @default.
- W2493803995 cites W203727647 @default.
- W2493803995 cites W2037984920 @default.
- W2493803995 cites W2040015657 @default.
- W2493803995 cites W2051632385 @default.
- W2493803995 cites W2057292961 @default.
- W2493803995 cites W2066859698 @default.
- W2493803995 cites W2067012475 @default.
- W2493803995 cites W2068387516 @default.
- W2493803995 cites W2072379850 @default.
- W2493803995 cites W2072918649 @default.
- W2493803995 cites W2078434561 @default.
- W2493803995 cites W2083355374 @default.
- W2493803995 cites W2084804301 @default.
- W2493803995 cites W2086277109 @default.
- W2493803995 cites W2095180577 @default.
- W2493803995 cites W2095839043 @default.
- W2493803995 cites W2096314727 @default.
- W2493803995 cites W2096698236 @default.
- W2493803995 cites W2097166325 @default.
- W2493803995 cites W2097971372 @default.
- W2493803995 cites W2102339469 @default.
- W2493803995 cites W2105399292 @default.
- W2493803995 cites W2105842205 @default.
- W2493803995 cites W2111817346 @default.
- W2493803995 cites W2112281233 @default.
- W2493803995 cites W2114012357 @default.
- W2493803995 cites W2117648703 @default.