redundant code not only causes noise in code debugging which confuses developers, but also correlates with the presence of traditional severe software errors. RC-Finder, a redundancy detection system for large-scale c...
详细信息
ISBN:
(纸本)9780769549354
redundant code not only causes noise in code debugging which confuses developers, but also correlates with the presence of traditional severe software errors. RC-Finder, a redundancy detection system for large-scale code is proposed to detect six kinds of redundancy. This paper analyzes each kind of redundant code, and provides the detailed algorithm respectively. The experiments on large scale open source software systems show that RC-Finder can find redundant code efficiently. With RC-Finder, it is very convenient for developers to detect and correct these kinds of defects, and thereby to further guarantee the software quality.
An experiment was carried out by a group of scientists to compare different tools and techniques for detecting duplicated or near-duplicated source code. The overall comparative results are presented elsewhere. This p...
详细信息
An experiment was carried out by a group of scientists to compare different tools and techniques for detecting duplicated or near-duplicated source code. The overall comparative results are presented elsewhere. This paper takes a closer look at the results for one tool, Dup, which finds code sections that are textually the same or the same except for systematic substitution of parameters such as identifiers and constants. Various factors that influenced the results are identified and their impact on the results is assessed via rerunning Dup with changed options and modifications. These improve the performance of Dup with regard to the experiment and could be incorporated into a postprocessor to be used with other tools.
How to reconfigure a general purpose operating system (GPOS) into an embedded operating system has attracted attention for application-specific domains. Linux is currently one of the popular candidates for GPOSs. Alth...
详细信息
How to reconfigure a general purpose operating system (GPOS) into an embedded operating system has attracted attention for application-specific domains. Linux is currently one of the popular candidates for GPOSs. Although Linux has tools for kernel reconfiguration by letting users add or remove desired function modules, the best schemes of reconfiguring Linux according to a specific embedded system are not practical. Even after this configuration, the target Linux might still be a GPOS. In this article, we will propose an approach to customizing an application-specific Linux operation system. This approach derives from a "call graph" based on reengineering. By analyzing a graph-structure representation of the target system, its hardware and software specifications are determined. Thus, we can find the rules for removing the redundant code in Linux. Moreover, we employ the call graph approach to verify the system integrity at the source-code level. In order to demonstrate the proposed idea, an experimental system will also be reported in this article. The results show that our approach can significantly remove about 17 percent of the Linux kernel's footprint with respect to unreachable code.
Some new techniques for static program testing are presented. These techniques are based on the program dependence graph, which models the structure of the program in terms of data and control dependences between pro...
详细信息
Some new techniques for static program testing are presented. These techniques are based on the program dependence graph, which models the structure of the program in terms of data and control dependences between program instructions. First, a new approach for redundant code detection is offered. The main idea is based on the observation that every program instruction should have influence on the output of the program, otherwise it is considered redundant. Second, an input-output relationship analysis, which reflects the influence of specific input data on specific output data of the program, is offered. It is demonstrated that the presented techniques can increase the number of detectable errors as compared with error detection through data flow analysis alone.
The conventional remedy to time and/or frequency variability of radio channels is diversity. redundant coding is a kind of diversity, as each coded symbol can be recovered from other symbols. Only linear binary block ...
详细信息
The conventional remedy to time and/or frequency variability of radio channels is diversity. redundant coding is a kind of diversity, as each coded symbol can be recovered from other symbols. Only linear binary block codes are considered. Any binary random variable can be represented by its algebraic value,a real number whose sign indicates its most likely value and whose absolute value measures the probability of this value. The algebraic value of a received binary symbol is itself a random variable, whose distribution obeys a particular constraint. The algebraic value associated with the maximum likelihood decision on a binary symbol, given a set of independent received replicas of it, and that associated with the sum modulo 2 of binary random variables are also considered. The symbol-by-symbol decoding is then analysed in the case of threshold decoding, then in the general case. An approximate bound on the decoding error probability for additive Gaussian noise and coherent demodulation is used to assess the advantage of coding when unequalenergy symbols are received, according to a deterministic or a Rayleigh distribution. Simulation results are given for the Hamming (15,11) code. Coding affords a significant advantage provided the channel is good enough, while conventional diversity always provides gain.
A machine- and language-independent representation for programs suitable for use within a compiler is presented. This representation is the hierarchical directed graph. Powerful code optimization techniques are presen...
详细信息
A machine- and language-independent representation for programs suitable for use within a compiler is presented. This representation is the hierarchical directed graph. Powerful code optimization techniques are presented in the context of this representation. An experimental optimizer has been built to validate the ideas discussed. The power of the representation is evident in the compactness of the code implementing the optimizations.
暂无评论