Search NASA⌕ Search

Engineering topics

Smith, Gary W.

Publications and source records attributed to Smith, Gary W..

Technology Transfer Annual Report - Fiscal Year 2017

TECHNOLOGY TRANSFER Idaho National Laboratory (INL) is a U.S. Department of Energy (DOE) multiprogram national laboratory that conducts research and development in all DOE mission areas. Like all other national laboratories, INL has a statutory, technology transfer mission to make its capabilities and technologies available to federal agencies, state and local governments, universities and industry. To fulfill this mission, INL encourages its scientific, engineering and technical staff to disclose new inventions and creations to ensure the resulting intellectual property is captured, protected and made available to others who might benefit from it. As part of the mission, intellectual property is licensed to industrial partners for commercialization, job creation and delivering the benefits of federally funded technology to consumers. In some cases, unique capabilities are made available to other federal agencies, international organizations, domestic and foreign commercial entities or small businesses to solve specific technical challenges. INL employees work cooperatively with researchers and technical staff from the university and industrial sectors to further develop emerging technologies. In this global economy, INL is contributing to the development of the next generation of engineers and scientists by licensing software to educational institutions throughout the world. Abstract This report is a catalog of select INL technology transfer activities, including commercialization transactions and research agreements, executed during this past year. The size and diversity of INL technical resources, coupled with the large number of relationships with other organizations, virtually ensures that a report of this nature will fail to capture all interactions. Recognizing this limitation, this report focuses on transactions that are specifically authorized by technology transfer legislation (and corresponding contractual provisions) or involve the transfer of legal rights to technology to other parties. This report was compiled from primary records that were readily available to the INL’s Technology Deployment and Contracts Management offices. Accomplishments cataloged in the report reflect the achievements and creativity of the researchers, technicians, support staff and operators of the INL workforce. Prepared for the U.S. Department of Energy Under DOE Idaho Operations Office Contract DE-AC07-05ID14517

2017↗

On-line upgrade of program modules using AdaPT

One purpose of our research is the investigation of the effectiveness and expressiveness of AdaPT, a set of language extensions to Ada 83, for distributed systems. As a part of that effort, we are now investigating the subject of replacing, e.g. upgrading, software modules while the software system remains in operation. The AdaPT language extensions provide a good basis for this investigation for several reasons: they include the concept of specific, self-contained program modules which can be manipulated; support for program configuration is included in the language; and although the discussion will be in terms of the AdaPT language, the AdaPT to Ada 83 conversion methodology being developed as another part of this project will provide a basis for the application of our findings to Ada 83 and Ada 9X systems. The purpose of this investigation is to explore the basic mechanisms of the replacement process. With this purpose in mind, we will avoid including issues whose presence would obscure these basic mechanisms by introducing additional, unrelated concerns. Thus, while replacement in the presence of real-time deadlines, heterogeneous systems, and unreliable networks is certainly a topic of interest, we will first gain an understanding of the basic processes in the absence of such concerns. The extension of the replacement process to more complex situations can be made later. A previous report established an overview of the module replacement problem, a taxonomy of the various aspects of the replacement process, and a solution to one case in the replacement taxonomy. This report provides solutions to additional cases in the replacement process taxonomy: replacement of partitions with state and replacement of nodes. The solutions presented here establish the basic principles for module replacement. Extension of these solutions to other more complicated cases in the replacement taxonomy is direct, though requiring substantial work beyond the available funding.

Waldrop, Raymond S.↗

On-line upgrade of program modules

This paper presents a taxonomy of problems that must be solved in order to achieve on-line upgradability of long-lived programs, and presents a solution to the fundamental problems in the taxonomy. The solutions are based upon AdaPT, a set of language extensions designed to aid in the distribution of a single Ada program. AdaPT introduces three major units, the public, the partition, and the node. Publics are primarily used to share type information. Partitions are the basic units of distribution while nodes are used to control the configuration of the program. Nodes and partitions can be created dynamically via the allocator. A node-level routine controls the replacement process. The controlling node creates a new instance of the routine being replaced; the run-time system must ensure that the new instance is the updated one. Once access to the new version has been established, all further calls to the module are redirected to the new version and the caller is informed of the change so that it may make subsequent calls directly. When a module is being upgraded, there is a transition period during which both the old and new versions are present. We require that clients of a potentially replaceable module 'check in' with the controlling node. The controlling node keeps track of the number of clients that have been redirected to the replacement. When all have been redirected, the old version can be deallocated.

Waldrop, Raymond S.↗

On-line replacement of program modules using AdaPT

One purpose of our research is the investigation of the effectiveness and expressiveness of AdaPT(1), a set of language extensions to Ada 83, for distributed systems. As a part of that effort, we are now investigating the subject of replacing, e.g., upgrading, software modules while the software system remains in operation. The AdaPT language extension provide a good basis for this investigation for several reasons: (1) they include the concept of specific, self-contained program modules which can be manipulated; (2) support for program configuration is included in the language; and (3) although the discussion will be in terms of the AdaPT language, the AdaPT to Ada 83 conversion methodology being developed as another part of this project will provide a basis for the application of our findings to Ada 83 systems. The purpose of this investigation is to explore the basic mechanisms to the replacement process. Thus, while replacement in the presence of real-time deadlines, heterogeneous systems, and unreliable networks is certainly a topic of interest, we will first gain an understanding of the basic processes in the absence of such concerns. The extension of the replacement process to more complex situations can be made later. This report will establish an overview of the on-line upgrade problem, and present a taxonomy of the various aspects of the replacement process.

Waldrop, Raymond S.↗