Open Access. Powered by Scholars. Published by Universities.®

Computer Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 23 of 23

Full-Text Articles in Computer Engineering

Efficient Customizable Middleware, Ravi Pratap Maddimsetty Dec 2003

Efficient Customizable Middleware, Ravi Pratap Maddimsetty

All Computer Science and Engineering Research

The rather large feature set of current Distributed Object Computing (DOC) middleware can be a liability for certain applications which have a need for only a certain subset of these features but have to suffer performance degradation and code bloat due to all the present features. To address this concern, a unique approach to building fully customizable middleware was undertaken in FACET, a CORBA event channel written using AspectJ. FACET consists of a small, essential core that represents the basic structure and functionality of an event channel into which additional features are woven using aspects so that the resulting event …


An Iterative Beam Search Algorithm For Degenerate Primer Selection, Richard Souvenir Dec 2003

An Iterative Beam Search Algorithm For Degenerate Primer Selection, Richard Souvenir

All Computer Science and Engineering Research

Single Nucleotide Polymorphism (SNP) Genotyping is an important molecular genetics process in the early stages of producing results that will be useful in the medical field. Due to inherent complexities in DNA manipulation and analysis, many different methods have been proposed for a standard assay. One of the proposed techniques for performing SNP Genotyping requires amplifying regions of DNA surrounding a large number of SNP loci. In order to automate a portion of this particular method, it is necessary to select a set of primers for the experiment. Selecting these primers can be formulated as the Multiple Degenerate Primer Design …


Resource Configuration And Network Design In Extensible Networks, Sumi Y. Choi Dec 2003

Resource Configuration And Network Design In Extensible Networks, Sumi Y. Choi

All Computer Science and Engineering Research

The goal of packet-switched networks has conventionally been delivering data to users. This concept is changing rapidly as current technologies make it possible to build network processing engines that apply intermediary services to data traffic. This trend introduces an extensive range of ways to develop and operate applications by allowing processing services customized for applications' needs at intermediate network users, as it can relieve individuals from the need to acquire, install, and maintain software in end systems to perform required functions. As such network services become more widely used, it will become increasingly important for service providers to have effective …


Hardware-Based Dynamic Storage Management For High-Performance And Real-Time Systems, Victor H. Lai Nov 2003

Hardware-Based Dynamic Storage Management For High-Performance And Real-Time Systems, Victor H. Lai

All Computer Science and Engineering Research

Most modern application programs depend on dynamic storage management to handle allocation and deallocation of memory. Unfortunately conventional software-based storage managers are relatively low performance due to the latency associated with accessing DRAM memory. Consequently, developers of programs with very specialized memory requirements, such a real-time systems, often choose to manage memory manually at the application-code level. This practice can greatly increase performance but it can also significantly complicate the development process. In this thesis we present the design, VHDL implementation and performance evaluation of hardware-based storage manager called the Optimized Hardware Estranged Buddy System (OHEBS). The OHEBS implements four …


Storage Coalescing, Delvin C. Defoe Oct 2003

Storage Coalescing, Delvin C. Defoe

All Computer Science and Engineering Research

Typically, when a program executes, it creates objects dynamically and requests storage for its objects from the underlying storage allocator. The patterns of such requests can potentially lead to internal fragmentation as well as external fragmentation. Internal fragmentation occurs when the storage allocator allocates a contiguous block of storage to a program, but the program uses only a fraction of that block to satisfy a request. The unused portion of that block is wasted since the allocator cannot use it to satisfy a subsequent allocation request. External fragmentation, on the other hand, concerns chunks of memory that reside between allocated …


Secure Remote Control And Configuration Of Fpx Platform In Gigabit Ethernet Environment, Haoyu Song Aug 2003

Secure Remote Control And Configuration Of Fpx Platform In Gigabit Ethernet Environment, Haoyu Song

All Computer Science and Engineering Research

Because of its flexibility and high performance, reconfigurable logic functions implemented on the Field-programmable Port Extender (FPX ) are well suited for implementing network processing such as packet classification, filtering and intrusion detection functions. This project focuses on two key aspects of the FPX system. One is providing a Gigabit Ethernet interface by designing logic for a FPGA which is located on a line card. Address Resolution Protocol (ARP) packets are handled in hardware and Ethernet frames are processed and transformed into cells suitable for standard FPX application. The other effort is to provide a secure channel to enable remote …


A Generative Programming Framework For Adaptive Middleware, Venkita Subramonian, Christopher Gill Jun 2003

A Generative Programming Framework For Adaptive Middleware, Venkita Subramonian, Christopher Gill

All Computer Science and Engineering Research

Historically, many distributed real-time and embedded (DRE) systems were developed manually from scratch, leading to stove-piped solutions that while correct in both functional and QoS properties were very expensive to develop and difficult to maintain and extend. First-generation middleware technologies such as CORBA 2.x [1], XML [2], and SOAP [3], served to shield application developers from low-level platform details, thus raising the level of abstraction at which distributed systems are developed and supporting reuse of infrastructure to amortize development costs over the lifetime of a system. However, interdependencies between services and object interfaces resulting from these programming models significantly limited …


Compressed Data Structures For Recursive Flow Classification, Edward W. Spitznagel May 2003

Compressed Data Structures For Recursive Flow Classification, Edward W. Spitznagel

All Computer Science and Engineering Research

High-speed packet classification is crucial to the implementation of several advanced network services and protocols; many QoS implementations, active networking platforms, and security devices (such as firewalls and intrusion-detection systems) require it. But performing classification on multiple fields, at the speed of modern networks, is known to be a difficult problem. The Recursive Flow Classification (RFC) algorithm described by Gupta and McKeown performs classification very quickly, but can require excessive storage when using thousands of rules. This paper studies a compressed representation for the tables used in RFC, trading some memory accesses for space. The compression’s efficiency can be improved …


A Performance-Driven Framework For Customizing Csp Middleware Support, Guoliang Xing Apr 2003

A Performance-Driven Framework For Customizing Csp Middleware Support, Guoliang Xing

All Computer Science and Engineering Research

A Distributed Constraint Satisfaction Problem (DCSP) aims to find consistent assignments of values to a set of variables distributed on multiple nodes. Despite its simple definition, DCSPs can model a broad variety of traditional artificial intelligence problems. Furthermore, many problems found in emerging sensor-actuator networks can be formalized to DCSPs. However, due to the platform limitations of networked embedded systems such as sensor-actuators networks, building real-world applications for solving DCSPs not only requires the improved DCSP algorithms but also novel system approaches. This thesis first develops a performance-driven middleware framework for solving DCSP problems. Then the prototype system built with …


Specialized Hardware Support For Dynamic Storage Allocation, Steven M. Donahue Apr 2003

Specialized Hardware Support For Dynamic Storage Allocation, Steven M. Donahue

All Computer Science and Engineering Research

With the advent of operating systems and programming languages that can evaluate and guarantee real-time specifications, applications with real-time requirements can be authored in higher-level languages. For example, a version of Java suitable for real-time (RTSJ) has recently reached the status of a reference implementation, and it is likely that other implementations will follow. Analysis to show the feasibility of a given set of tasks must take into account their worst-case execution time, including any storage allocation or deallocation associated with those tasks. In this thesis, we present a hardware-based solution to the problem of storage allocation and (explicit) deallocation …


Using Contaminated Garbage Collection And Reference Counting Garbage Collection To Provide Automatic Storage Reclamation For Real-Time Systems, Matthew P. Hampton Apr 2003

Using Contaminated Garbage Collection And Reference Counting Garbage Collection To Provide Automatic Storage Reclamation For Real-Time Systems, Matthew P. Hampton

All Computer Science and Engineering Research

Language support of dynamic storage management simplifies the application programming task immensely. As a result, dynamic storage allocation and garbage collection have become common in general purpose computing. Garbage collection research has led to the development of algorithms for locating program memory that is no longer in use and returning the unused memory to the run-time system for late use by the program. While many programming languages have adopted automatic memory reclamation features, this has not been the trend in Real-Time systems. Many garbage collection methods involve some form of marking the objects in memory. This marking requires time proportional …


Hashtables For Real-Time And Embedded Systems, Anand Krishnan Apr 2003

Hashtables For Real-Time And Embedded Systems, Anand Krishnan

All Computer Science and Engineering Research

Real-time are beginning to appear in advanced, high-level programming languages such as Java. When complemented by a real-time operating system, the Real-Time Specification for Java (RTSJ) offers strong execution constraints for applications developed in Java. While the RTSJ make the basic services of Java such as storage and thread management ready for many real-time applications, the collection objects, and the rest of the application run-time library, cannot be used by RTSJ applications until their run-time properties are examined and modified as necessary to make them suitable for use by real-time applications. In this work, we examine the Hashtable collection facility …


Dynamic Assignment Of Scoped Memory Regions In The Translation Of Java To Real-Time Java, Morgan G. Deters Apr 2003

Dynamic Assignment Of Scoped Memory Regions In The Translation Of Java To Real-Time Java, Morgan G. Deters

All Computer Science and Engineering Research

Advances in middleware, operating systems, and popular, general-purpose languages have brought the ideal of reasonably-bound execution time closer to developers who need such assurances for real-time and embedded systems applications. Extensions to the Java libraries and virtual machine have been proposed in a real-time Java standard, which provides for specification of release times, execution costs, and deadlines for a restricted class of threads. To use such features, the programmer is required to use unwieldy code constructs to create region-like areas of storage, associate them with execution scopes, and allocate objects from them. Further, the developer must ensure that they do …


Multiflow Tcp, Udp, Ip, And Atm Traffic Generation Module, Eliot I. Sinclair, John W. Lockwood Apr 2003

Multiflow Tcp, Udp, Ip, And Atm Traffic Generation Module, Eliot I. Sinclair, John W. Lockwood

All Computer Science and Engineering Research

Networking devices must be capable of processing traffic flows from multiple sources. In order to verify that such devices operates properly, a network testbench can be used to inject traffic into the device. The specification of the traffic flows can be difficult. At the low level, there are header fields, data checksums, and packet length fields that all must be formatted correctly. Further, there can be multiple flows of traffic that will arrive simultaneously. It is desirable to specify traffic at a high level of abstraction. A software program can then be written to parse the specification and generate the …


Integrated Coverage And Connectivity Configuration In Wireless Sensor Networks, Xiaorui Wang, Guoliang Xing, Yuanfang Zhang, Chenyang Lu, Robert Pless, Christopher Gill Apr 2003

Integrated Coverage And Connectivity Configuration In Wireless Sensor Networks, Xiaorui Wang, Guoliang Xing, Yuanfang Zhang, Chenyang Lu, Robert Pless, Christopher Gill

All Computer Science and Engineering Research

An effective approach for energy conservation in wireless sensor networks is scheduling sleep intervals for extraneous nodes, while the remaining nodes stay active to provide continuous service. For the sensor network to operate successfully, the active nodes must maintain both sensing coverage and network connectivity. Furthermore, the network must be able to configure itself to any feasible degrees of coverage and connectivity in order to support different applications and environments with diverse requirements. This paper presents the design and analysis of novel protocols that can dynamically configure a network to achieve guaranteed degrees of coverage and connectivity. This work differs …


System-On-Chip Packet Processor For An Experimental Network Services Platform, David Taylor, Alex Chandra, Yuhua Chen, Sarang Dharmapurikar, John Lockwood, Wenjing Tang, Jonathan Turner Apr 2003

System-On-Chip Packet Processor For An Experimental Network Services Platform, David Taylor, Alex Chandra, Yuhua Chen, Sarang Dharmapurikar, John Lockwood, Wenjing Tang, Jonathan Turner

All Computer Science and Engineering Research

As the focus of networking research shifts from raw performance to the delivery of advanced network services, there is a growing need for open-platform systems for extensible networking research. The Applied Research Laboratory at Washington University in Saint Louis has developed a flexible Network Services Platform (NSP) to meet this need. The NSP provides an extensible platform for prototyping next-generation network services and applications. This paper describes the design of a system-on-chip Packet Processor for the NSP which performs all core packet processing functions including segmentation and reassembly, packet classification, route lookup, and queue management. Targeted to a commercial configurable …


A Thesis On A 3d Input Device For Sketching Characters, Mark A. Schroering Apr 2003

A Thesis On A 3d Input Device For Sketching Characters, Mark A. Schroering

All Computer Science and Engineering Research

The goal of this project is to develop a 3D input device using a stiff piece of paper and a camera. The camera tracks the piece of paper in 3D space. The user orients the paper in 3D space and then draws on the paper using a pen-like device. The camera tracks the movement of the pen on the piece of paper. The location of the pen in 3D space can then be calculated from the orientation of the paper. A drawing application that uses this 3D input device was also developed. The application allows a user to make characters …


A Study In Java Bytecode Engineering With Pcesjava, Martin R. Linenweber Apr 2003

A Study In Java Bytecode Engineering With Pcesjava, Martin R. Linenweber

All Computer Science and Engineering Research

This thesis reports on experience with PCESjava, a collection of tools which we have developed for the purpose of aiding programmers. Particular applications optimize and instrument JAVA bytecode programs. Using these tools, we have successfully identified impediments to real-time performance in a popular JAVA collections object. Our approach here is based on automatic instruction to obtain traces that show paths whose execution time is not reasonably bounded. We also report on the application of our tool to reduce program footprint in JAVA programs by rewriting the bytecodes to occupy less space. Our transformations also improves the running time of set …


An Iterative Loop Matching Approach To The Prediction Of Rna Secondary Structures With Pseudoknots, Jianhua Ruan, Weixiong Zhang Mar 2003

An Iterative Loop Matching Approach To The Prediction Of Rna Secondary Structures With Pseudoknots, Jianhua Ruan, Weixiong Zhang

All Computer Science and Engineering Research

Motivation: Pseudoknots have generally been excluded from the prediction of RNA secondary structures due to the difficulty in modeling and complexity in computing. Although several dynamic programming algorithms exist for the prediction of pseudoknots using thermodynamic approaches, they are neither reliable nor efficient. On the other hand, comparative methods are more reliable, but are often done in an ad hoc manner and require expert intervention. Maximum weighted matching (Tabaska et. al, Bioinformatics, 14:691-9, 1998), an algorithm for pseudoknot prediction with comparative analysis, suffers from low prediction accuracy in many cases. Here we present an algorithm, iterative loop matching, for predict-ing …


Towards A Performance Model For Special Purpose Orb Middleware, Venkita Subramonian, Guoliang Xing, Christopher Gill, Ron Cytron Feb 2003

Towards A Performance Model For Special Purpose Orb Middleware, Venkita Subramonian, Guoliang Xing, Christopher Gill, Ron Cytron

All Computer Science and Engineering Research

General purpose middleware has been shown effective in meeting diverse functional requirements for a wide range of distributed systems. Advanced middleware projects have also supported single quality-of-service dimensions such as real-time, fault tolerance, or small memory foot-print. However, there is limited experience supporting multiple quality-of-service dimensions in middleware to meet the needs of special purpose applications. Even though general purpose middleware can cover an entire spectrum of functionality by supporting the union of all features required by each application, this approach breaks down for distributed real-time and embedded sys-tems. For example, the breadth of features supported may interfere with small …


Twinscan: A Software Package For Homology-Based Gene Prediction, Paul Flicek Feb 2003

Twinscan: A Software Package For Homology-Based Gene Prediction, Paul Flicek

All Computer Science and Engineering Research

A complete mapping from genome to proteome would constitute a foundation for genome-based biology and provide targets for pharmaceutical and therapeutic intervention. This is one reason gene structure prediction has been a major subfield of computational biology for over 20 years. Many of the widely used gene prediction systems were developed in the 1990s and are unable to take advantage of the revolution in comparative genomics brought on by the sequencing of the entire genomes of an increasing numbers of vertebrates. Twinscan is a new system for high-throughput gene-structure prediction that exploits the patterns of conservation observed in alignments between …


Storage Allocation In Bounded Time, Sharath Reddy Cholleti Jan 2003

Storage Allocation In Bounded Time, Sharath Reddy Cholleti

All Computer Science and Engineering Research

The correctness of a real-time system is very much dependent on the time at which a specific task is completed. Hence, satisfying a storage allocation request within bounded time is important. Fragmentation of the heap after repeated allocations and deallocations is a major issue for real-time systems, as most allocators depend on garbage collection for defragmentation of the heap, which might not finish in time to honor deadlines. We present the storage requirement for a defragmentation-free binary-buddy allocator. We also study a localized defragmentation algorithm to satisfy a single allocation request, within bounded time, instead of requiring defragmentation of the …


The Design And Performance Of Special Purpose Middleware: A Sensor Networks Case Study, Venkita Subramonian, Guoliang Xing, Christopher Gill, Ron Cytron Jan 2003

The Design And Performance Of Special Purpose Middleware: A Sensor Networks Case Study, Venkita Subramonian, Guoliang Xing, Christopher Gill, Ron Cytron

All Computer Science and Engineering Research

General purpose middleware has been shown to be effective in meeting diverse functional requirements for a wide range of distributed systems. Advanced middleware projects have also supported a single quality-of-service dimension such as real-time, fault tolerance, or small memory footprint. However, there is limited experience supporting multiple quality-of-service dimensions in mid-dleware to meet the needs of special purpose applications. Even though general purpose middleware can cover an entire spectrum of applications by supporting the union of all features required by each application, this approach breaks down for distributed real-time and embedded systems. In particular, features from one dimension such as …