Function call interception (FCI), or method call interception (MCI) in the object-oriented programming domain, is a technique of intercepting function calls at program runtime. Without directly modifying the original ...
详细信息
Function call interception (FCI), or method call interception (MCI) in the object-oriented programming domain, is a technique of intercepting function calls at program runtime. Without directly modifying the original code, FCI enables to undertake certain operations before and/or after the called function or even to replace the intercepted call. Thanks to this capability, FCI has been typically used to profile programs, where functions of interest are dynamically intercepted by instrumentation code so that the execution control is transferred to an external module that performs execution time measurement or logging operations. In addition, FCI allows for manipulating the runtime behavior of program components at the fine-grained function level, which can be useful in changing an application's original behavior at runtime to meet certain execution requirements such as maintaining performance characteristics for different input problem sets. Due to this capability, however, some FCI techniques can be used as a basis of many security exploits for vulnerable systems. In this paper, we survey a variety of FCI techniques and tools along with their applications to diverse areas in the computing and software domains. We describe static and dynamic FCI techniques at large and discuss the strengths and weaknesses of different implementations in this category. In addition, we also discuss aspect-oriented programming implementation techniques for intercepting method calls.
A logic circuit of the adaptable unit intended for controlling the processes of measurements and experimental data acquisition is presented. The adaptation to the particular measurement type is attained by combining a...
详细信息
A logic circuit of the adaptable unit intended for controlling the processes of measurements and experimental data acquisition is presented. The adaptation to the particular measurement type is attained by combining all base components of the unit and its software in separate interchangeable program and electronic assemblies. The prototype of the unit is designed as an example of the automatic setup intended for measuring spectral dependences of physical quantities. A possibility of the adaptation is shown using the example of modifying the implemented circuit for measuring volt-ampere characteristics.
A modular simulation program of absorption heat pumps, refrigerators and air conditioners is developed under Mathematica (A (R)). The modular approach is an easier way to simulate various complex configurations. A com...
详细信息
A modular simulation program of absorption heat pumps, refrigerators and air conditioners is developed under Mathematica (A (R)). The modular approach is an easier way to simulate various complex configurations. A comparative study between the simulator's results-temperatures, pressures, refrigerant concentrations, heat duties, flow rates, overall heat transfer parameters and coefficient of performance (COP)-and experimental measurements shows a favorable agreement. The usefulness of the present program in performance analysis of thermodynamic cycles is thus established.
This paper describes how line drawings and continuous tone shaded images of a three-dimensional solid model of a brain structure are generated using a powerful general purpose computer graphics package. The model is b...
详细信息
This paper describes how line drawings and continuous tone shaded images of a three-dimensional solid model of a brain structure are generated using a powerful general purpose computer graphics package. The model is built from a series of serial sections. We developed a software interface to convert the data entered by a section oriented way into a brain structure oriented file. We point out particularly the modular approach which consists of separating the tasks on small microcomputers or on bigger machines according to their computing cost. An example of a thalamic structure in a stereotaxic referential is presented.
No new feature in Fortran 90 is more important than modules for the support of effective software engineering methods. Fortran 90 modules make it possible to encapsulate portions of software: to make entities accessib...
详细信息
No new feature in Fortran 90 is more important than modules for the support of effective software engineering methods. Fortran 90 modules make it possible to encapsulate portions of software: to make entities accessible only from those parts of a program in which the software designer desires and plans for their accessibility. Programmers can control the visibility of software entities (variables, procedures, data types, etc.) from the site of declaration (with PUBLIC/PRIVATE specifications) or from usage sites (with USE-ONLY specifications), and these entities can be packaged together in units for convenient and safe access throughout an application. In this way, Fortran 90 modules fully support the concept of data abstraction, one of the most important organizing principles of software design. This paper illustrates the use of modules to create a package of signal processing functions. It discusses the use of explicit interfaces defined in modules or interface blocks to improve the type safety of Fortran code, user-defined generic procedures and operators, specification of the intended use of procedure arguments (INTENT IN, OUT, and INOUT), dummy-argument arrays that inherit their shape from actual arguments, local arrays with shapes that depend on procedure inputs, recursion, optional and keyword procedure-arguments, and functions that deliver arrays or structures as values. The paper is not comprehensive. Topics omitted include internal procedures, statement functions, multiple entry, alternate return, and pointers, and little is said about the large collection of intrinsic procedures in Fortran 90. All of the illustrative code follows a programming method based on formulas and equations rather than step-by-step procedures. In this method, known as functional programming, names are defined only once;their associated values are never replaced with new ones. Fortran 90 facilitates the use of this method by permitting the definition of functions whose values are ar
The design of a user interface for computers is examined from both the end user's and the programmer's point of view. Different methods of menu selection and user feedback are discussed. A graphics interface u...
详细信息
The design of a user interface for computers is examined from both the end user's and the programmer's point of view. Different methods of menu selection and user feedback are discussed. A graphics interface using pull down menus and dialog boxes is ideal for simplifying user interaction and program organization. This style of interface also provides for a modular program development environment, reduced program development time, program portability, and reduced maintenance. Software tools for programming the user interface are explored and pseudo-code examples are given.
Application development today is too labor-intensive. In recent years, very high-level languages have been increasingly explored as a solution to this problem. The Business Definition Language (BDL) is such a language...
详细信息
Application development today is too labor-intensive. In recent years, very high-level languages have been increasingly explored as a solution to this problem. The Business Definition Language (BDL) is such a language, one aimed at business data processing problems. The concepts in BDL mimic those which have evolved through the years in businesses using manual methods. This results in three different sublanguages or components: one for defining the business forms, one for describing the business organization, and one for writing calculations.
Historically, information technology departments have cycled between centralized and decentralized application software distribution, although modular program design and enterprise management software may break that c...
详细信息
Historically, information technology departments have cycled between centralized and decentralized application software distribution, although modular program design and enterprise management software may break that cycle. Meanwhile, IT departments that want to manage the distribution and configuration of software across their networks are searching for an acceptable balance of control, reliability, and speed. Distributing application files on individual PCs maximizes network performance, but makes it much more difficult to enforce configuration standards and maintain control. Placing application files in a few central locations gives an IT department significant control over software configuration but may degrade network performance and lead to user dissatisfaction.
Discusses the development of a software-flexible, hardware-economic, modular machine vision system for education. Purpose of developing a machine vision system for education; Description of hardware components and sof...
详细信息
Discusses the development of a software-flexible, hardware-economic, modular machine vision system for education. Purpose of developing a machine vision system for education; Description of hardware components and software architecture; Examples of how the system can be used; Limitations of the system.
Export and import statements can be implemented as syntactic extensions. We first define their intuitive semantics in terms of Scheme programs. Then we show how export and import can be improved to allow for an arbitr...
详细信息
Export and import statements can be implemented as syntactic extensions. We first define their intuitive semantics in terms of Scheme programs. Then we show how export and import can be improved to allow for an arbitrary load-sequence of modules and to handle dynamic extensions of modules.
暂无评论