Container shipping for interdomain transfers involves no physical copying.Its cost is proportional to the amount of data actually accessed, often a fraction of the data transferred.ew I/O devices with data rates ranging from 10 to 100 Mbytes per second are becoming available for personal computers and workstations. These include human-interaction devices for video capture and display (and audio record and playback), high-capacity storage devices, and high-speed network communication devices. Along with continual improvements in processor, memory, and bus technology, these devices have enabled I/O-intensive applications for desktop computing that require input, processing, and output of very large amounts of data. In this article, we focus on an important aspect of operating system support for these applications: efficient transfer of large data objects between the protection domains in which processes and devices reside.A rapidly growing class of IIO-intensive applications is multimedia computing, in particular, applications that acquire or present video (or image) and audio streams, possibly transforming them in novel ways under programmer control. These applications are often distributed and interactive, imposing real-time constraints for the delivery of large volumes of data transported over potentially long distances. Examples include video teleconferencing with shared work spaces, remote scientific visualization and sonification, and distributed virtual reality.Multimedia computing applications often require the manipulation of images whose sizes typically range from 1 to 10 Mbytes, but they can be larger. For example, an uncompressed high-definition television frame requires 6 Mbytes, and a high-quality computer-generated video frame from a motion picture such as Jurussic Park requires 36 Mbytes. While compression can sometimes reduce these sizes by one to two orders of magnitude, usually processing must be done on uncompressed data. Scientific computing and visualization are even more demanding.These applications often operate on data in the form of sequences of very large images. Examples include AVIRIS (Advanced Visible and Infrared Imaging Spectrometer) data requiring 140 Mbytes per image and Landsat (Land Satellite) data requiring 278 Mbytes per image. 84
This paper introduces PredatorHP (Predator Hunting Party), a program verifier built on top of the Predator shape analyser, and discusses its participation in the SV-COMP'15 software verification competition. Predator is a sound shape analyser dealing with C programs with lists implemented via low-level pointer operations. PredatorHP uses Predator to prove programs safe while at the same time using several bounded versions of Predator for bug hunting. The Underlying Verification ApproachAt the heart of PredatorHP there is the Predator shape analyser [2]. The main aim of Predator is sound shape analysis of sequential, non-recursive C programs that use lowlevel pointer operations for working efficiently with various kinds of linked lists. Predator supports many advanced uses of pointer arithmetics, address alignment, and block operations common in highly optimized system code, such as operating system kernels, drivers, memory allocators, and the like.Predator is based on abstract interpretation with the abstract domain of symbolic memory graphs (SMGs) [2]. In a nutshell, SMGs consist of two kinds of nodesnamely, individual memory regions and uninterrupted list segments-and two kinds of edges, in particular, the so-called has-value and points-to edges. SMGs were inspired by separation logic with higher-order list predicates but with an added support for lowlevel memory operations. Moreover, all the needed algorithms for dealing with SMGs (symbolic execution of program statements, the join operator, widening in the form of abstraction, entailment checking) were newly designed to be as efficient as possible by leveraging the graph structure of SMGs. The most essential role is played by the join operator: both abstraction and entailment checking are built on top of it. Predator supports inter-procedural analysis by means of function summaries.Recently, a new extension of Predator was implemented [1]. It uses the Predator kernel for transforming programs with list containers implemented by low-level pointer operations into equivalent programs with high-level container operations, which can be useful, e.g., for code understanding, easier verification, parallelisation, optimisation, etc.
Abstract. Predator is a tool for automated formal verification of sequential C programs with dynamic linked data structures. It is in principle based on separation logic, but uses a graph-based heap representation. This paper first provides a brief overview of Predator and then discusses experience with its participation in the Software Verification Competition of TACAS'12.
Abstract. CPALIEN is a configurable program analysis framework instance. It uses an extension of the symbolic memory graphs (SMGs) abstract domain for shape analysis of programs manipulating the heap. In particular, CPALIEN extends SMGs with a simple integer value analysis in order to handle programs with both pointers and integer data. The current version of CPALIEN is an early prototype intended as a basis for a future research in the given area. The version submitted for SV-COMP'14 does not contain any shape abstraction, but it is still powerful enough to participate in several categories.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2025 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.