bluuebunny/crossref_metadata_2025_split huggingface dataset:
A model of performance for virtual memory systems
Authors: Brandwain A. , Buzen J. , Gelenbe E. , Potier D. 
Published: January 2007

Queueing network models are well suited for analyzing certain resource allocation problems associated with operating system design. An example of such a problem is the selection of the level of multiprogramming in virtual memory systems. If the number of programs actively competing for main memory is allowed to reach too high a value, trashing will occur and performance will be seriously degraded. On the other hand, performance may also suffer if the level of multiprogramming drops too low since system resources can become seriously under utilized in this case. Thus it is important for virtual memory systems to maintain optimal or near optimal levels of multiprogramming at all times.
This paper presents an analytic model of computer system behavior which can be used to study multiprogramming optimization in virtual memory systems. The model, which explicitly represents the numerous interactions which occur as the level of multiprogramming varies, is used to numerically generate performance curves for representative sets of parameters. A simplified model consisting of a CPU and a single backing store device is then used to derive an approximate expression for the optimal level of multiprogramming. The simplified model is also used to examine the transient behavior of such systems.
The mathematical model we present is based on some simplifying assumptions; in particular all programs executing in the system are supposed to be statistically identical. In this respect the model we present must be considered to be a theoretical explanation of a phenomenon (thrashing) observed in certain operating systems rather than an exact representation of reality. Certain assumptions of the mathematical model are relaxed in a simulation model where distribution functions of service times at the secondary memory and input-output devices are arbitrary; by comparison with the theoretical results we see that CPU utilization and throughput are not very sensitive to the specific forms of these distributions and that the usual exponential assumptions yield quite satisfactory results. The simulation model is also programmed to contain overhead. Again we observe that the mathematical model's predictions are in fair agreement with the useful CPU utilization predicted by the simulation experiments.
The impact of certain parameter estimation errors in queueing network models
Authors: Gordon Karen D. , Dowdy Lawrence W. 
Published: January 2007

The effect that parameter estimation errors have on performance in closed product form queueing networks is investigated. In particular, the effects of errors in the relative utilization estimates of the servers are analyzed. It is shown that in single class load independent networks, the resulting errors in throughput and utilizations are of approximately the same percentage as the errors in the relative utilization estimates. This result does not hold in networks with load dependent servers or multiple customer classes. The percentage errors in mean queue length depend upon the degree of multiprogramming in the network. Errors in mean queue lengths can become unbounded as the degree of multiprogramming becomes unbounded.
Implications of these results to computer system modeling are discussed.
Further results on equivalence and decomposition in queueing network models
Authors: Brandwajn Alexandre 
Published: January 2007

This paper addresses three aspects related to the notion of exact equivalence in queueing models.
In many cases the parameters of a system equivalent to a given model involve only a small subset of conditional probabilities of the state of the original model given the equivalent one. It is shown that meaningful bounds may be obtained for the conditional probabilities of interest with little computational effort. Such bounds are useful in assessing processing capacities as well as the accuracy of approximate solutions.
As a second point it is shown that the notion of exact equivalence may be easily extended to networks with non-exponential servers. This is done for both the methods of supplementary variables and for the imbedded Markov chain technique. Qualitative analysis of approximation methods is also discussed.
Finally, numerical methods based on the notion of exact equivalence, i.e. operating on conditional probabilities, are considered.
Analysis of locking policies in database management systems
Authors: Potier D. , Leblanc Ph. 
Published: January 2007

Quantitative analysis of locking mechanisms and of their impact on the performance of transactionnal systems have yet received relatively little attention. Although numerous concurrency mechanisms have been proposed and implemented, there is an obvious lack of experimental as well as analytical studies of their behaviour and their influence on system performance. We present in this paper an analytical framework for the performance analysis of locking mechanisms in transactionnal systems based on hierarchical analytical modelling. Three levels of modelling are considered: at level 1, the different stages (lock request, execution, blocking) transactions of through during their life-time are described; the organization and operations of the CPU and I/O resources are analysed at level 2; transaction's behaviour during their lock request phase is analysed at modelling level 3.
This hierarchical approach is applied to the analysis of a physical locking scheme involving a static lock acquisition policy. A simple probabilistic model of the transaction behaviour is used to derived the probability that a new transaction is granted the locks it requests given the number of transactions already active as a function of the granularity of the database. On the other hand, the multiprogramming effect due to the sharing of CPU and I/O resources by transactions is analysed using the standard queueing network approaches and the solution package QNAP. In a final step, the results on the blocking probabilities and the multiprogrammin effect are used as input of a global performance model of the transactionnal system. Markovian analysis is used to solve this model and to obtain the throughput of the system as a function of the data base granularity and other parameters. The results obtained provide a clear understanding of the various factors which determine the global performance, of their role and improtance. They also raise many new issues which can only be solved by further extensive experimental and analytical studies and show that two particular topics deserve special attention: the modelling of transaction behaviour and the modelling of locking overheads.
Application prototyping
Authors: Jenkins C. Wesley 
Published: January 2007

Accurate specification of user requirements for interactive systems is especially difficult in an environment where the demand for information is intense, short-fused and largely unpredictable.
The Congressional Budget Office was created in 1975 by an Act of Congress. Its primary mandate is to serve the Budget and Appropriation committees of both the Senate and the House of Representatives. The Act also defined a Congressional Budget process specifying a calendar of events and specific completion dates for major activities. This placing of budgetary actions produces a highly charged environment in which CBO must be able to respond immediately to information needs with information that is both accurate and consistent.
Implementing software configuration control in the structured programming environment
Authors: Berlack H. Ronald 
Published: January 2007

The fundamental problems in the control of software are explored. The elements of control as they relate to communications is defined, and the implementation of these elements in solving the fundamental problems and achieving optimal control during a software development life cycle, is explained.
Control is defined as a vehicle for communicating changes to established, agreed-upon baseline points, made up of documents and subsequent computer programs. By communicating change to those involved or affected, and obtaining agreement of the change, one achieves a degree of control that does not inhibit software engineering innovation or progress, but helps maintain the project's prime objectives to deliver maintainable, error-free software to the ultimate user.
Producers and consumers views of software quality (Panel Session)
Authors: Gross Peter 
Published: January 2007

At this very ACM workshop/symposium indicates, software quality is of great concern to both producers and users of software. It should be obvious to those who have attended the earlier sessions today and to those who will attend the sessions tomorrow that quality is something that cannot be tested into a system or added to a system. It must be integral from the start of the definition of the system's requirements through each phase of analysis, design, implementation, integration, testing, and installation.
Software quality implies an engineering type approach to the development of software. It implies the use of a disciplined development environment, and the use of tools and techniques to provide assurances throughout the software development process that both the software and its baseline specifications are complete, consistent, and traceable from one to another.
When to stop testing and start using software?
Authors: Goel Amrit L. , Okumoto Kazuhira 
Published: January 2007

During the last decade, numerous studies have been undertaken to quantify the failure process of large scale software systems. (see for example, references 1-12.) An important objective of these studies is to predict software performance and use the information for decision making. An important decision of practical concern is the determination of the amount of time that should be spent in testing. This decision of course will depend on the model used for describing the failure phenomenon and the criterion used for determining system readiness.
In this paper we present a cost model based on the time dependent fault detection rate model of Goel and Okumoto (4,5) and describe a policy that yields the optimal value of test time T.
Some experimental estimators for developmental and delivered errors in software development projects
Authors: Schneider Victor 
Published: January 2007

Experimental estimators are presented relating the expected number of software problem reports (B) in a software development project to
the overall reported professional effort (E) in “man months”
the number of subprograms (n)
the overall count of thousands of coded source statements of software(S).
[equation]
These estimators are shown to be consistent with data obtained from the Air Force's Rome Air Development Center, the Naval Research Laboratory, and Japan's Fujitsu Corporation. Although the results are promising, more data is needed to support the validity of these estimators.
A model of Univac 1100/42 swapping
Authors: Dowdy Lawrence W. , Breitenlohner Hans J. 
Published: January 2007

The performance of a computer system depends upon the efficiency of its swapping mechanisms. The swapping efficiency is a complex function of many variables. The degree of multiprogramming, the relative loading on the swapping devices, and the speed of the swapping devices are all interdependent variables that affect swapping performance.
In this paper, a model of swapping behavior is given. The interdependencies between the degree of multiprogramming, the swapping devices' loadings, and the swapping devices' speeds are modeled using an iterative scheme.

The validation of a model is its predictive capability. The given swapping model was applied to a Univac 1100/42 system to predict the effect of moving the swapping activity from drums to discs. When the swapping activity was actually moved, throughput
increased
by 20%. The model accurately predicted this improvement.

Subtopics discussed include: 1) the modeling of blocked and overlapped disc seek activity, 2) the usefulness of empirical formulae, and 3) the calibration of unmeasurable parameters. Extensions and further applications of the model are given.
Performance evaluation
Authors: Denning Peter J. 
Published: January 2007

What is experimental computer science? This question has been widely discussed ever since the Feldman Report was published (1979 [18]). Many computer scientists believe that survival of their discipline is intimately linked to their ability to rejuvenate experimentation. The National Science Foundation instituted the Coordinated Experimental Research Program (CERP) in 1979 to help universities set up facilities capable of supporting experimental research. Other agencies of government are considering similar programs. Some industrial firms are offering similar help through modest cash grants and equipment discounts.
What is experimental computer science? Surprisingly, computer scientists disagree on the answer. A few believe that computer science is in flux—making a transition from theoretical to experimental science—and, hence, no operational definition is yet available. Some believe that it is all the non-theoretical activities of computer science, especially those conferring “hands-on” experience. Quite a few believe that it is large system development projects—i.e., computer and software engineering—and they cite MIT's Multics, Berkeley's version of Bell Labs' UNIX, the ARPAnet, IBM's database System R, and Xerox's Ethernet-based personal computer network as examples.
These beliefs are wrong. There are well-established standards for experimental science. The field of performance evaluation meets these standards and provides examples of experimental science for the rest of the computing field.
A combined evaluation of performance and reliability for degradable systems
Authors: Huslende Ragnar 
Published: January 2007

As the field of fault-tolerant computing is maturing and results from this field are taken into practical use the effects of a failure in a computer system need not be catastrophic. With good fault-detection mechanisms it is now possible to cover a very high percentage of all the possible failures that can occur. Once a fault is detected, systems are designed to reconfigure and proceed either with full or degraded performance depending on how much redundancy is built into the system. It should be noted that one particular failure may have different effects depending on the circumstances and the time at which it occurs.
Today we see that large numbers of resources are being tied together in complex computer systems, either locally or in geographically distributed systems and networks. In such systems it is obviously very undesirable that the failure of one element can bring the entire system down. On the other hand one can usually not afford to design the system with sufficient redundancy to mask the effect of all failures immediately.
The determination of upper bounds for economically effective compression in packet switching networks
Authors: Aleh Avner , Levin K. Dan 
Published: January 2007

This paper deals with the economic tradeoffs associated with data compression in a packet switching environment.
In section II we present the data profile concept and the compression analysis of typical file-transfer data strings. This is followed by a compression cost saving model that is developed in section III. Upper bounds for an economically effective compression service are derived there, and the paper concludes with an example of these bounds based on state of the art technology.
Effect of declarations on software metrics
Authors: Kavi Krishna M. , Jackson U. B. 
Published: January 2007

The attractiveness of software science [HAL77] is to some extent due to the simplicity of its instrumentation. Upon learning the detailed rules of counting operators and operands, the experiments and derivations using various algorithms and languages can be repeated. Proposed or actual applications of software science are quite varied (For example, see [SEN79]). The size and construction time of a program can be estimated from the problem specification and the choice of programming language. An estimate of the number of program bugs can be shown to depend on programming effort. Optimal choice of module sizes for multimodule implementations can be computed. Elements of software science have applications to the analysis of technical prose.
The purpose of this experiment is three fold. First, we want to apply software science metrics to the language 'C'.
The second purpose of the experiment is to study the effect of including declaration statements while counting operators and operands.
Finally, we have set out to determine whether the area of application has any influence on software science metrics.
A unification of Halstead's Software Science counting rules for programs and English text, and a claim space approach to extensions
Authors: Misek-Falkoff Linda D. 
Published: January 2007

In his
Elements of Software Science
, Maurice Halstead proposed that software quality measurements could be based on static lexemic analysis of the vocabularies of operators and operands, and the number of occurrences of each class, in computer programs. He also proposed that quality issues in Natural Language text could be addressed from similar perspectives, although his rules for programs and for English seem to conflict.

This paper suggests that Halstead's seemingly disparate rules for classifying the tokens of programs and the tokens of English can be generally reconciled, although Halstead himself does not claim such a union. The thesis of Part One is a unification of his two procedures, based on a linguistic partitioning between “open” and “closed” classes. This unification may provide new inputs to some open issues concerning coding, and suggest, on the basis of a conceptual rationale, an explanation as to why programs which are by Halstead's definition “impure” might indeed be confusing to the human reader.
Part Two of this paper, by exploring the nodes in a textual “Claim Space,” briefly considers other groupings of the classes taken as primitive by Halstead, in ways which bring to light alternate and supplementary sets of candidate coding rules productive for study of textual quality.
APL and Halstead's theory
Authors: Laurmaa Timo , Syrjänen Markku 
Published: January 2007

We have designed and implemented an algorithm which measures APL-programs in the sense of software science by M.H. Halstead /1/. The reader is assumed to be familiar with the theories of software science.
Our purpose has been to find the best possible algorithm to automatically analyse large quantities of APL-programs. We have also used our measuring tool to make some experiments to find out if APL-programs and workspaces obey the laws of software science or not.
Becasue our purpose was to analyse large quantities, i.e. hundreds of programs we have not implemented an algorithm, which gives exactly correct results from software science point of view, because this would necessitate manual clues to the analysing algorithm and thus an interactive mode of analysis. Instead of it we have strived for a tool, which carries out the analysis automatically and as correctly as possible.
In the next section some difficulties encountered in the design of the measuring algorithm and some inherent limitations of it are discussed. Section 3 summarises the sources of errors in the analysis carried out by our algorithm, while section 4 gives a more detailed description of the way analysis is carried out.
The remaining sections of this paper report on some experiments we have carried out using our measuring tool. The purpose of these experiments has been to evaluate the explaining power of Halstead's theory in connection of APL-programs. However, no attempt has been made to process the results of the experiments statistically. The results of the experiments have been treated here only when 'obvious' (in)compatibilities between the theory and the results have been observed. Possible reasons for the (in)compatibilities are also pointed out.
Product assurance program analyzer (P.A.P.A.) a tool for program complexity evaluation
Authors: Schnurer Karl Ernst 
Published: January 2007

This tool has been developed to assist in the software validation process. P.A.P.A. will measure the complexity of programs and detect several program anomalies. The resulting list of analyzed programs is sorted in order of descending complexity. Since high complexity and error-proneness are strongly related, the “critical” programs will be found earlier within the development cycle.
P.A.P.A. provides syntax analyzers for RPG (II/III), PSEUDOCODE (design and documentation language) and PL/SIII (without macro language). It may be applied during the design-, coding- and testphase of software development (e.g. for design- and code inspections).
Complexity measurement of Electronic Switching System (ESS) software
Authors: Gross David R. , King Mary A. , Murr Michael R. , Eddy Michael R. 
Published: January 2007

We have been developing a tool that measures the complexity of software: 1) to predict the quality of software products and 2) to allocate proportionally more testing resources to complex modules. The software being measured is real-time and controls telephone switching systems. This software system is large and its development is distributed over a period of several years, with each release providing enhancements and bug fixes.
We have developed a two-stage tool consisting of a parser and an analyzer. The parser operates on the source code and produces operator, operand, and miscellaneous tables. These tables are then processed by an analyzer program that calculates the complexity measures. Changes for tuning our Halstead counting rules involve simple changes to the analyzer only. During the development there were problems and issues to be confronted dealing with static analysis and code metrics. These are also described in this paper.
In several systems we found that more than 80% of software failures can be traced to only 20% of the modules in the system. The McCabe complexity and some of Halstead's metrics score higher than the count of executable statements in their correlations with field failures. It is reasonable to expect that we could devote more effort to the review and test of high-complexity modules and increase the quality of the software product that we send to the field.
Minimization of supervisor conflict for multiprocessor computer systems
Authors: Raynor Randy J. , Gwynn John M. 
Published: January 2007

In a multiprocessor system, the handling of interrupts generated by jobs in the processors is assigned to a supervisory program and associated data base. The two basic philosophies for deciding which processor executes the supervisor are master-slave and floating executive control. In either case, queueing of requests to the supervisor may occur. With the master-slave structure, the master processor can handle only one request at a time. With floating executive control, while any processor can execute the supervisor, only one processor at a time can be allowed to access the supervisor's data base.
A processor which is waiting to use the supervisor is not doing useful work. Therefore, queueing of requests to the supervisor causes a degradation in the performance of the system. Previous studies have indicated that this degradation is significant for systems with a large number of processors.
A methodology is developed through simulation which reduces supervisor queueing by scheduling jobs to processors such that they request the use of the supervisor when the supervisor is predicted to be available. Information concerning job execution characteristics required by the scheduler is shown to be available at sufficient accuracy via dynamic monitoring and forecasting during normal program execution.