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

Theses/Dissertations

2016

Discipline
Institution
Keyword
Publication

Articles 1 - 18 of 18

Full-Text Articles in Programming Languages and Compilers

Context-Sensitive Auto-Sanitization For Php, Jared M. Smith, Richard J. Connor, David P. Cunningham, Kyle G. Bashour, Walter T. Work Dec 2016

Context-Sensitive Auto-Sanitization For Php, Jared M. Smith, Richard J. Connor, David P. Cunningham, Kyle G. Bashour, Walter T. Work

Chancellor’s Honors Program Projects

No abstract provided.


Just In Time Assembly (Jita) - A Run Time Interpretation Approach For Achieving Productivity Of Creating Custom Accelerators In Fpgas, Sen Ma Dec 2016

Just In Time Assembly (Jita) - A Run Time Interpretation Approach For Achieving Productivity Of Creating Custom Accelerators In Fpgas, Sen Ma

Graduate Theses and Dissertations

The reconfigurable computing community has yet to be successful in allowing programmers to access FPGAs through traditional software development flows. Existing barriers that prevent programmers from using FPGAs include: 1) knowledge of hardware programming models, 2) the need to work within the vendor specific CAD tools and hardware synthesis. This thesis presents a series of published papers that explore different aspects of a new approach being developed to remove the barriers and enable programmers to compile accelerators on next generation reconfigurable manycore architectures. The approach is entitled Just In Time Assembly (JITA) of hardware accelerators. The approach has been defined …


Three Body Interactions Of Rare Gas Solids Calculated Within The Einstein Model, Dan D'Andrea Dec 2016

Three Body Interactions Of Rare Gas Solids Calculated Within The Einstein Model, Dan D'Andrea

Masters Theses

Three body interactions can become important in solids at higher pressures and densities as the molecules can come into close contact. At low temperatures, accurate studies of three body interactions in solids require averaging the three-body terms over the molecules' zero point motions. An efficient, but approximate, averaging approach is based on a polynomial approximation of the three-body term. The polynomial approximation can be developed as a function of the symmetry coordinates of a triangle displaced from its average geometry and also as a function of the Cartesian zero point displacements from each atom’s average position. The polynomial approximation approach …


Combining Static And Dynamic Analysis For Bug Detection And Program Understanding, Kaituo Li Nov 2016

Combining Static And Dynamic Analysis For Bug Detection And Program Understanding, Kaituo Li

Doctoral Dissertations

This work proposes new combinations of static and dynamic analysis for bug detection and program understanding. There are 3 related but largely independent directions: a) In the area of dynamic invariant inference, we improve the consistency of dynamically discovered invariants by taking into account second-order constraints that encode knowledge about
invariants; the second-order constraints are either supplied by the programmer or vetted by the programmer (among candidate constraints suggested automatically); b) In the area of testing dataflow (esp. map-reduce) programs, our tool, SEDGE, achieves higher testing coverage by leveraging existing
input data and generalizing them using a symbolic reasoning engine …


Towards Comprehensive Parametric Code Generation Targeting Graphics Processing Units In Support Of Scientific Computation, Ning Xie Nov 2016

Towards Comprehensive Parametric Code Generation Targeting Graphics Processing Units In Support Of Scientific Computation, Ning Xie

Electronic Thesis and Dissertation Repository

The most popular multithreaded languages based on the fork-join concurrency model (CIlkPlus, OpenMP) are currently being extended to support other forms of parallelism (vectorization, pipelining and single-instruction-multiple-data (SIMD)). In the SIMD case, the objective is to execute the corresponding code on a many-core device, like a GPGPU, for which the CUDA language is a natural choice. Since the programming concepts of CilkPlus and OpenMP are very different from those of CUDA, it is desirable to automatically generate optimized CUDA-like code from CilkPlus or OpenMP.

In this thesis, we propose an accelerator model for annotated C/C++ code together with an implementation …


Techniques For Identifying Mobile Platform Vulnerabilities And Detecting Policy-Violating Applications, Mon Kywe Su Oct 2016

Techniques For Identifying Mobile Platform Vulnerabilities And Detecting Policy-Violating Applications, Mon Kywe Su

Dissertations and Theses Collection

Mobile systems are generally composed of three layers of software: application layer where third-party applications are installed, framework layer where Application Programming Interfaces (APIs) are exposed, and kernel layer where low-level system operations are executed. In this dissertation, we focus on security and vulnerability analysis of framework and application layers. Security mechanisms, such as Android’s sandbox and permission systems, exist in framework layer, while malware scanners protects application layer. However, there are rooms for improvement in both mechanisms. For instance, Android’s permission system is known to be implemented in ad-hoc manner and not well-tested for vulnerabilities. Application layer also focuses …


Decision Modeling And Empirical Analysis Of Mobile Financial Services, Jun Liu Aug 2016

Decision Modeling And Empirical Analysis Of Mobile Financial Services, Jun Liu

Dissertations and Theses Collection

The past twenty years have been a time of many new technological developments, changing business practices, and interesting innovations in the financial information system (IS) and technology landscape. As the financial services industry has been undergoing the digital transformation, the emergence of mobile financial services has been changing the way that customers pay for goods and services purchases and interact with financial institutions. This dissertation seeks to understand the evolution of the mobile payments technology ecosystem and how firms make mobile payments investment decisions under uncertainty, as well as examines the influence of mobile banking on customer behavior and financial …


Effective Performance Analysis And Debugging, Charles M. Curtsinger Jul 2016

Effective Performance Analysis And Debugging, Charles M. Curtsinger

Doctoral Dissertations

Performance is once again a first-class concern. Developers can no longer wait for the next generation of processors to automatically "optimize" their software. Unfortunately, existing techniques for performance analysis and debugging cannot cope with complex modern hardware, concurrent software, or latency-sensitive software services. While processor speeds have remained constant, increasing transistor counts have allowed architects to increase processor complexity. This complexity often improves performance, but the benefits can be brittle; small changes to a program’s code, inputs, or execution environment can dramatically change performance, resulting in unpredictable performance in deployed software and complicating performance evaluation and debugging. Developers seeking to …


Defining The Competencies, Programming Languages, And Assessments For An Introductory Computer Science Course, Simon Sultana Jul 2016

Defining The Competencies, Programming Languages, And Assessments For An Introductory Computer Science Course, Simon Sultana

STEMPS Theses & Dissertations

The purpose of this study was to define the competencies, programming languages, and assessments for an introductory computer science course at a small private liberal arts university. Three research questions were addressed that involved identifying the competencies, programming languages, and assessments that academic and industry experts in California’s Central Valley felt most important and appropriate for an introduction to computer science course.

The Delphi methodology was used to collect data from the two groups of experts with various backgrounds related to computing. The goal was to find consensus among the individual groups to best define aspects that would best comprise …


Secure Declassification In Faceted Javascript, Tam Wing May 2016

Secure Declassification In Faceted Javascript, Tam Wing

Master's Projects

Information leaks currently represent a major security vulnerability. Malicious code, when injected into a trusted environment and executed in the context of the victim’s privileges, often results in the loss of sensitive information. To address this security issue, this paper focuses on the idea of information flow control using faceted execution [3]. This mechanism allows the interpreter to efficiently keep track of variables across multiple security levels, achieving termination-insensitive non-interference (TINI). With TINI, a program can only leak one bit of data, caused by the termination of a program. One key benefit of having faceted execution is that flow policy …


Findapark Implementation, David Laratta May 2016

Findapark Implementation, David Laratta

Mathematics and Computer Science Capstones

FindAPark is a web service application designed to help a user search for a local hike or vacation revolving around hiking or cycling. Workplan The workplan for this capstone is to create the System Proposal which includes detailed information about the completion of all the items in the System Proposal except the Functional, Structural, and Behavioral Models.


Taint And Information Flow Analysis Using Sweet.Js Macros, Prakasam Kannan May 2016

Taint And Information Flow Analysis Using Sweet.Js Macros, Prakasam Kannan

Master's Projects

JavaScript has been the primary language for application development in browsers and with the advent of JIT compilers, it is increasingly becoming popular on server side development as well. However, JavaScript suffers from vulnerabilities like cross site scripting and malicious advertisement code on the the client side and on the server side from SQL injection.

In this paper, we present a dynamic approach to efficiently track information flow and taint detection to aid in mitigation and prevention of such attacks using JavaScript based hygienic macros. We use Sweet.js and object proxies to override built-in JavaScript operators to track information flow …


Software Improvements To Parint, A Parallel Integration Software Package, Lawrence Cuneaz Apr 2016

Software Improvements To Parint, A Parallel Integration Software Package, Lawrence Cuneaz

Honors Theses

The best software is easy to configure and compile, is expandable and is well tested. Development of the ParInt software package for parallel integration stopped a number of years ago. When handed the software, parts of the package no longer configured or compiled consistently. Furthermore it relied on one random number generator and had no functional testing. The team tuned the auto configuration so that the program would configure and build on current systems, created expandable functionality to add new random number generators and created two functional test packs. Now ParInt can be developed with confidence knowing that it compiles …


Building And Safety Department Android Mobile Application, Nary Simms Jan 2016

Building And Safety Department Android Mobile Application, Nary Simms

Mathematics and Computer Science Capstones

Research has found that Americans spend 4.5 hours watching television, 1.5 hours listening to the radio, about half an hour reading print and spend a whooping five plus hours per day in digital media (online, mobile, other). Out of these five hours, two hours and twenty minutes are spent on a mobile device (phone or tablet), which is a massive increase of about 575 percent from the twenty-four minutes that was reported in 2010. Flurry, an analytic app company, released data about their tracking of more than 300,000 apps in 2013, and they found the average time spent per day …


Spest – A Tool For Specification-Based Testing, Corrigan Redford Johnson Jan 2016

Spest – A Tool For Specification-Based Testing, Corrigan Redford Johnson

Master's Theses

This thesis presents a tool for SPEcification based teSTing (SPEST). SPEST is designed to use well known practices for automated black-box testing to reduce the burden of testing on developers. The tool uses a simple formal specification language to generate highly-readable unit tests that embody best practices for thorough software testing. Because the specification language used to generate the assertions about the code can be compiled, it can also be used to ensure that documentation describing the code is maintained during development and refactoring.

The utility and effectiveness of SPEST were validated through several exper- iments conducted with students in …


Data Persistence In Eiffel, Jimmy J. Johnson Jan 2016

Data Persistence In Eiffel, Jimmy J. Johnson

Theses and Dissertations--Computer Science

This dissertation describes an extension to the Eiffel programming language that provides automatic object persistence (the ability of programs to store objects and later recreate those objects in a subsequent execution of a program). The mechanism is orthogonal to other aspects of the Eiffel language. The mechanism serves four main purposes: 1) it gives Eiffel programmers a needed service, filling a gap between serialization, which provides limited persistence functions and database-mapping, which is cumbersome to use; 2) it greatly reduces the coding burden incurred by the programmer when objects must persist, allowing the programmer to focus instead on the business …


Srcmx: A Gui Application For Srcml, Brian Kovacs Jan 2016

Srcmx: A Gui Application For Srcml, Brian Kovacs

Williams Honors College, Honors Research Projects

srcMX is a GUI application that utilizes the srcML command-line tool to convert and display source code using the srcML format. The goal is for srcMX to promote the manipulation and exploration of source code using srcML. I also hope that the user-friendly nature inherent to GUI applications allows srcMX to introduce a larger audience to the many features offered by srcML. The application is written in C++ using the Qt and Qt Quick frameworks.


Tango: A Spanish-Based Programming Language, Ashley Zegiestowsky Jan 2016

Tango: A Spanish-Based Programming Language, Ashley Zegiestowsky

Undergraduate Honors Thesis Collection

The purpose of this thesis is a two-part project. The first part of the project deals with the creation of my own Spanish-based programming language, Tango, using Spanish key words (instead of English key words). The second part of the project relates to the design and implementation of a compiler that follows the grammar rules outlined in the Tango language in order to successfully lexically analyze, parse, semantically analyze, and generate code for Tango. The structure of this thesis begins with a description of the specific goals achieved in the Tango language, an explanation and brief examples of the Tango …