acm-header
Sign In

Communications of the ACM

Latest Research



From Communications of the ACM

Technical Perspective: The Ultimate Pilot Program

In one scene from The Matrix, two leaders of the human resistance are trapped on the roof of a skyscraper. The only means of escape is by helicopter, which neither...

Scalable Synchronous Queues
From Communications of the ACM

Scalable Synchronous Queues

In a thread-safe concurrent queue, consumers typically wait for producers to make data available. In a synchronous queue, producers similarly wait for consumers...

From Communications of the ACM

Technical Perspective: Highly Concurrent Data Structures

The advent of multicore architectures has produced a Renaissance in the study of highly concurrent data structures.

Lest We Remember
From Communications of the ACM

Lest We Remember: Cold-Boot Attacks on Encryption Keys

DRAM retains its contents for several seconds after power is lost. Although DRAM becomes less reliable when it is not refreshed, it is not immediately erased, and...

From Communications of the ACM

Technical Perspective: A Chilly Sense of Security

Many systems rely on keeping a master key secret. But technological progress can undermine old assumptions.

Integrating Nand Flash Devices Onto Servers
From Communications of the ACM

Integrating Nand Flash Devices Onto Servers

In this paper, we examine the use of Flash storage in the server domain. Wear-out has the potential to limit the use of Flash in this domain. To seriously consider...

From Communications of the ACM

Technical Perspective: Integrating Flash Devices

Flash memory nowadays seems to be in every discussion about system architecture. Sure enough, flash memory boasts...

From Communications of the ACM

Relative Fitness Modeling

Relative fitness is a new approach to modeling the performance of storage devices. In contrast to a conventional model, which predicts the performance of an application's...

From Communications of the ACM

Technical Perspective: Disk Array Models For Automating Storage Management

Large disk arrays are everywhere. When we shop at an Internet retailer, the product and account data come from a disk...

From Communications of the ACM

Learning and Detecting Emergent Behavior in Networks of Cardiac Myocytes

We address the problem of specifying and detecting emergent behavior in networks of cardiac myocytes, spiral electric waves in particular, a precursor to atrial...

From Communications of the ACM

Technical Perspective: Where Biology Meets Computing

Alan Turing died in 1954 in his laboratory after eating a cyanide-laced apple. During his last years, Turing had become interested in bio-chemical systems. He had...

From Communications of the ACM

Error Correction Up to the Information-Theoretic Limit

Ever since the birth of coding theory almost 60 years ago, researchers have been pursuing the elusive goal of constructing the "best codes," whose encoding introduces...

From Communications of the ACM

Technical Perspective: The Beauty of Error-Correcting Codes

Error-correcting codes are the means by which we compensate for interference in communication, and are essential for the accurate transmission and storage of digital...

The Complexity of Computing a Nash Equilibrium
From Communications of the ACM

The Complexity of Computing a Nash Equilibrium

Traditionally, computational problems fall into two classes: those that have a polynomial-time algorithm and those that are NP-hard. However, the concept of NP-hardness...

From Communications of the ACM

Technical Perspective: The Complexity of Computing Nash Equilibrium

Computer science and game theory go back to the same individual, John von Neumann, and both subjects deal with the...

Building Secure Web Applications With Automatic Partitioning
From Communications of the ACM

Building Secure Web Applications With Automatic Partitioning

Swift is a new, principled approach to building Web applications that are secure by construction. Swift automatically partitions application code while providing...

From Communications of the ACM

Technical Perspective: Tools For Information to Flow Securely and Swift-ly

Back in the old days of the Web (before 1995), Web browsers were fairly simple devices. The server's Web interface was simple enough that an auditor could at least...

From Communications of the ACM

Technical Perspective: Patching Program Errors

C programmers are are all too familiar with out-of-bounds memory errors. The paper here presents an intriguing technique for...

Exterminator: Automatically Correcting Memory Errors with High Probability
From Communications of the ACM

Exterminator: Automatically Correcting Memory Errors with High Probability

Programs written in C and C++ are susceptible to memory errors, including buffer overflows and dangling pointers. We present Exterminator, a system that automatically...

From Communications of the ACM

Technical Perspective: Safeguarding Online Information Against Failures and Attacks

Users need storage that is highly reliable (it is not lost) and highly available (accessible when needed). Guaranteeing...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account