80 research outputs found

    Deliberation and Automaticity in Habitual Acts

    Get PDF
    Most philosophers and psychologists assume that habitual acts do not ensue from deliberation, but are direct responses to the circumstances: habit essentially involves a variety of automaticity. My objective in this paper is to show that this view is unduly restrictive. A habit can explain an act in various ways. Pointing to the operation of automaticity is only one of them. I draw attention to the fact that acquired automaticity is one outgrowth of habituation that is relevant to explanation, but not the only one. Habituation shapes our emotional and motivational make up in ways that affect deliberation itself. Hence mentioning a habit might be indispensable in explaining an act which nevertheless ensues from deliberation. The view that habitual acts are direct responses to the circumstances implies an impoverished conception of habit, which fails to do justice to its rich explanatory potential in theoretical and pre-theoretical contexts, as well as to its role in the history of philosophy

    Automatic Discovery and Patching of Buffer and Integer Overflow Errors

    Get PDF
    We present Targeted Automatic Patching (TAP), an automatic buffer and integer overflow discovery and patching system. Starting with an application and a seed input that the application processes correctly, TAP dynamically analyzes the execution of the application to locate target memory allocation sites and statements that access dynamically or statically allocated blocks of memory. It then uses targeted error-discovery techniques to automatically generate inputs that trigger integer and/or buffer overflows at the target sites. When it discovers a buffer or integer overflow error, TAP automatically matches and applies patch templates to generate patches that eliminate the error. Our experimental results show that TAP successfully discovers and patches two buffer and six integer overflow errors in six real-world applications

    Horizontal Code Transfer via Program Fracture and Recombination

    Get PDF
    We present a new horizontal code transfer technique, program fracture and recombination, for automatically replacing, deleting, and/or combining code from multiple applications. Benefits include automatic generation of new applications incorporating the best or most desirable functionality developed anywhere, the automatic elimination of security vulnerabilities, effective software rejuvenation, the automatic elimination of obsolete or undesirable functionality, and improved performance, simplicity, analyzability, and clarity

    Automatic Error Elimination by Multi-Application Code Transfer

    Get PDF
    We present pDNA, a system for automatically transfer- ring correct code from donor applications into recipient applications to successfully eliminate errors in the recipient. Experimental results using six donor applications to eliminate nine errors in six recipient applications highlight the ability of pDNA to transfer code across applications to eliminate otherwise fatal integer and buffer overflow errors. Because pDNA works with binary donors with no need for source code or symbolic information, it supports a wide range of use cases. To the best of our knowledge, pDNA is the first system to eliminate software errors via the successful transfer of correct code across applications

    Automatic Error Elimination by Multi-Application Code Transfer

    Get PDF
    We present Code Phage (CP), a system for automatically transferring correct code from donor applications into recipient applications to successfully eliminate errors in the recipient. Experimental results using six donor applications to eliminate nine errors in six recipient applications highlight the ability of CP to transfer code across applications to eliminate otherwise fatal integer and buffer over- flow errors. Because CP works with binary donors with no need for source code or symbolic information, it supports a wide range of use cases. To the best of our knowledge, CP is the first system to eliminate software errors via the successful transfer of correct code across applications

    Program fracture and recombination for efficient automatic code reuse

    Full text link
    Abstract—We present a new code transfer technique, program fracture and recombination, for automatically replacing, delet-ing, and/or combining code from multiple applications. Benefits include automatic generation of new applications incorporating the best or most desirable functionality developed anywhere, the automatic elimination of errors and security vulnerabilities, effective software rejuvenation, the automatic elimination of obsolete or undesirable functionality, and improved performance, energy efficiency, simplicity, analyzability, and clarity. The technique may be particularly appropriate for high performance computing. The field has devoted years of effort to developing efficient (but complex) implementations of standard linear algebra operations with good numerical properties. At the same time these operations also have very simple but inefficient implementations, often with poor numerical properties. Program fracture and recombination allows developers to work with the simple implementation during development and testing, then use program fracture and recombination to automatically find and deploy the most appropriate implementation for the hardware platform at hand. The benefits include reduced implementation effort, increased code clarity, and the ability to automatically search for and find efficient implementations with good numerical properties. I

    Automatic Error Elimination by Multi-Application Code Transfer

    Get PDF
    We present pDNA, a system for automatically transferring correct code from donor applications into recipient applications to successfully eliminate errors in the recipient. Experimental results using three donor applications to eliminate seven errors in four recipient applications highlight the ability of pDNA to transfer code across applications to eliminate otherwise fatal integer overflow errors at critical memory allocation sites. Because pDNA works with binary donors with no need for source code or symbolic information, it supports a wide range of use cases. To the best of our knowledge, pDNA is the first system to eliminate software errors via the successful transfer of correct code across applications

    Automatic Error Elimination by Multi-Application Code Transfer

    Get PDF
    We present pDNA, a system for automatically transfer- ring correct code from donor applications into recipient applications to successfully eliminate errors in the recipient. Experimental results using six donor applications to eliminate nine errors in six recipient applications highlight the ability of pDNA to transfer code across applications to eliminate otherwise fatal integer and buffer overflow errors. Because pDNA works with binary donors with no need for source code or symbolic information, it supports a wide range of use cases. To the best of our knowledge, pDNA is the first system to eliminate software errors via the successful transfer of correct code across applications

    Numerical Exploration of Kaldorian Macrodynamics: Enhanced Stability and Predominance of Period Doubling and Chaos with Flexible Exchange Rates

    Get PDF
    We explore a discrete Kaldorian macrodynamic model of an open economy with flexible exchange rates, focusing on the effects of variation of the model parameters, the speed of adjustment of the goods market α, and the degree of capital mobility β. We determine by a numerical grid search method the stability region in parameter space and find that flexible rates cause enhanced stability of equilibrium with respect to variations of the parameters. We identify the Hopf-Neimark bifurcation curve and the flip bifurcation curve, and find that the period doubling cascades which leads to chaos is the dominant behavior of the system outside the stability region, persisting to large values of β. Cyclical behavior of noticeable presence is detected for some extreme values of a state parameter. Bifurcation and Lyapunov exponent diagrams are computed illustrating the complex dynamics involved. Examples of attractors and trajectories are presented. The effect of the speed of adaptation of the expected rate is also briefly discussed. Finally, we explore a special model variation incorporating the “wealth effect” which is found to behave similarly to the basic model, contrary to the model of fixed exchange rates in which incorporation of this effect causes an entirely different behavior
    corecore