English
Related papers

Related papers: Reproducible Execution of POSIX Programs with DiOS

200 papers

Containers as the unit of application delivery are the 'next big thing' in the software development world. They enable developers to create an executable image containing an application bundled with all its dependencies which a user can run…

Software Engineering · Computer Science 2017-02-13 Jonas Weber

Operating systems (OSes) are foundational to computer systems, managing hardware resources and ensuring secure environments for diverse applications. However, despite their enduring importance, the fundamental design objectives of OSes have…

Human-Computer Interaction · Computer Science 2024-04-02 Hongyu Hè

We describe a family of MPI applications we call the Parallel Unix Commands. These commands are natural parallel versions of common Unix user commands such as ls, ps, and find, together with a few similar commands particular to the parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 E. Ong , E. Lusk , W. Gropp

We introduce process-oriented programming as a natural extension of object-oriented programming for parallel computing. It is based on the observation that every class of an object-oriented language can be instantiated as a process,…

Programming Languages · Computer Science 2014-07-22 Edward Givelberg

OS-level virtualization techniques virtualize system resources at the system call interface, has the distinct advantage of smaller run-time resource requirements as compared to HAL-level virtualization techniques, and thus forms an…

Operating Systems · Computer Science 2020-04-10 Zhiyong Shan , Xin Wang , Tzi-cker Chiueh , Rajiv Bagai

The C Object System (Cos) is a small C library which implements high-level concepts available in Clos, Objc and other object-oriented programming languages: uniform object model (class, meta-class and property-metaclass), generic functions,…

Programming Languages · Computer Science 2010-03-15 Laurent Deniau

With the growing diversity of instruction set architectures (ISAs), cross-ISA program execution has become common. Dynamic binary translation (DBT) is the main solution but suffers from poor performance. Cross-compilation avoids emulation…

Hardware Architecture · Computer Science 2025-12-02 Yuhao Gu , Zhongchun Zheng , Nong Xiao , Yutong Lu , Xianwei Zhang

We notice a way to execute a binary file on Windows and ELF-based systems. It can be used to create software installers and other applications not exceeding 64 kilo bytes.

Operating Systems · Computer Science 2015-04-14 Steffen Grønneberg

Embedded Linux processors are increasingly used for real-time computing tasks such as robotics and Internet of Things (IoT). These applications require robust and reproducible behavior from the host OS, commonly achieved through immutable…

Software Engineering · Computer Science 2021-04-02 Christian Stewart

Although iOS is the second most popular mobile operating system and is often considered the more secure one, approaches to automatically analyze iOS applications are scarce and generic app analysis frameworks do not exist. This is on the…

Cryptography and Security · Computer Science 2020-03-31 Julian Schütte , Dennis Titze

Persistent Memory (PM) makes possible recoverable applications that can preserve application progress across system reboots and power failures. Actual recoverability requires careful ordering of cacheline flushes, currently done in two…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-09-02 Swapnil Haria , Mark D. Hill , Michael M. Swift

Motivated by the need to emulate workload execution characteristics on high-performance and distributed heterogeneous resources, we introduce Synapse. Synapse is used as a proxy application (or "representative application") for real…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-08-03 Andre Merzky , Ming Tai Ha , Matteo Turilli , Shantenu Jha

Research processes often rely on high-performance computing (HPC), but HPC is often seen as antithetical to "reproducibility": one would have to choose between software that achieves high performance, and software that can be deployed in a…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-03-16 Ludovic Courtès

Proto is a new instructional OS that runs on commodity, portable hardware. It showcases modern features, including per-app address spaces, threading, commodity filesystems, USB, DMA, multicore support, self-hosted debugging, and a window…

Operating Systems · Computer Science 2025-10-21 Wonkyo Choe , Rongxiang Wang , Afsara Benazir , Felix Xiaozhu Lin

While there have been approaches for integrating security policies into operating systems (OSs) for more than two decades, applications often use objects of higher abstraction requiring individual security policies with application-specific…

Cryptography and Security · Computer Science 2021-05-06 Marius Schlegel

The persistent programming systems of the 1980s offered a programming model that integrated computation and long-term storage. In these systems, reliable applications could be engineered without requiring the programmer to write translation…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-06-21 Alan Dearle , Graham Kirby , Stuart Norcross , Andrew McCarthy

With the proliferation of IoT and edge devices, we are observing a lot of consumer electronics becoming yet another IoT and edge devices. Unlike traditional smart devices, such as smart phones, consumer electronics, in general, have…

Software Engineering · Computer Science 2021-01-25 Geunsik Lim , MyungJoo Ham , Jijoong Moon , Wook Song , Sangjung Woo , Sewon Oh

Scientific codes are increasingly being used in compositional settings, especially problem solving environments (PSEs). Typical compositional modeling frameworks require significant buy-in, in the form of commitment to a particular style of…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Srinidhi Varadarajan , Joy Mukherjee , Naren Ramakrishnan

The POSIX shell is a widely deployed, powerful tool for managing computer systems. The shell is the expert's control panel, a necessary tool for configuring, compiling, installing, maintaining, and deploying systems. Even though it is…

Programming Languages · Computer Science 2019-07-12 Michael Greenberg , Austin J. Blatt

A typical enterprise uses a local area network of computers to perform its business. During the off-working hours, the computational capacities of these networked computers are underused or unused. In order to utilize this computational…

Distributed, Parallel, and Cluster Computing · Computer Science 2009-08-21 Que Thu Dung Nguyen