Award Abstract # 2312347
Collaborative Research: CSR: Core: Medium: Scaling Unix/Linux Shell Programs

NSF Org: CNS
Division Of Computer and Network Systems
Recipient: THE TRUSTEES OF THE STEVENS INSTITUTE OF TECHNOLOGY
Initial Amendment Date: August 7, 2023
Latest Amendment Date: September 19, 2024
Award Number: 2312347
Award Instrument: Continuing Grant
Program Manager: Marilyn McClure
mmcclure@nsf.gov
 (703)292-5197
CNS
 Division Of Computer and Network Systems
CSE
 Directorate for Computer and Information Science and Engineering
Start Date: October 1, 2023
End Date: September 30, 2027 (Estimated)
Total Intended Award Amount: $556,063.00
Total Awarded Amount to Date: $412,406.00
Funds Obligated to Date: FY 2023 = $271,898.00
FY 2024 = $140,508.00
History of Investigator:
  • Michael Greenberg (Principal Investigator)
    michael.greenberg@stevens.edu
Recipient Sponsored Research Office: Stevens Institute of Technology
ONE CASTLE POINT ON HUDSON
HOBOKEN
NJ  US  07030-5906
(201)216-8762
Sponsor Congressional District: 08
Primary Place of Performance: Stevens Institute of Technology
1 CASTLE POINT ON HUDSON
HOBOKEN
NJ  US  07030-5906
Primary Place of Performance
Congressional District:
08
Unique Entity Identifier (UEI): JJ6CN5Y5A2R5
Parent UEI:
NSF Program(s): CSR-Computer Systems Research
Primary Program Source: 01002425DB NSF RESEARCH & RELATED ACTIVIT
01002324DB NSF RESEARCH & RELATED ACTIVIT

01002526DB NSF RESEARCH & RELATED ACTIVIT

01002627DB NSF RESEARCH & RELATED ACTIVIT
Program Reference Code(s): 7924
Program Element Code(s): 735400
Award Agency Code: 4900
Fund Agency Code: 4900
Assistance Listing Number(s): 47.070

ABSTRACT

The ?shell? is the glue that holds modern computer systems together: It is the programming language that connects components and manages systems; it is the quick-and-dirty language for writing scientific workflows and data analysis; it is the control hatch that offers skilled users direct access to their computer's inner-workings. Shell programming remains ubiquitous ?steadily in the top 10 most popular programming languages? partly because it allows non-expert developers to combine components available in any programming language with little-to-no understanding of their internals. Unfortunately, this black-box, language-agnostic composition hinders automated acceleration of shell programs. This project will develop techniques to accelerate shell programs without requiring input from shell programmers and little-to-no input from the authors of individual components. This work's approach (1) builds on the real-world success of prior research by the PIs (that requires more user input), (2) brings together expertise in several subfields of computer science ?parallel and distributed systems, programming languages, and formal methods? and (3) offers synergy. The individual techniques each offer significant benefits, but yield a transformative whole.

By enabling practical, push-button enhancement of a real-world, pervasively-used programming language, the proposed work promises to significantly accelerate existing and new shell programs without any effort from their developers, without any changes to existing infrastructure, and while maintaining compatibility with prior results. The shell's ubiquity means these speedups will have broad impact, especially in disciplines that use computing as a tool to solve problems in their respective fields, e.g., bioinformatics, data science, and economics.

This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.

Please report errors in award information by writing to: awardsearch@nsf.gov.

Print this page

Back to Top of page