Software syncs files

Responding to the burgeoning population of computer users now working on more than one machine, University of Pennsylvania researchers have developed software that can keep replicated files consistent across multiple computers. Their program, dubbed Unison, can be downloaded from www.cis.upenn.edu/~bcpierce/unison.

‘Ten years ago, only a handful of people used more than one computer,’ says Benjamin Pierce, Ph.D., Unison’s lead developer and an associate professor of computer and information science at Penn. ‘Now it’s commonplace. Many professionals have both a laptop and a desktop computer at work and frequently also a third machine at home.’

With this explosion in the number of people juggling multiple computers has come the need for so-called file synchronisation software, capable of maintaining consistency between copies of files on different computers’ hard drives. When confronted with two machines, each housing a set of common files, Unison selects the newest version of each file and saves it on both hard drives, replacing outdated versions.

After revising a document on one machine, consumers can use Unison to automatically propagate the changes to their other computers as well. For instance, a frazzled undergraduate alternating between a laptop and a dorm-room desktop while writing a series of term papers can let Unison do the dirty work of ensuring that each machine has the same – and the most recent – drafts saved on its hard drive.

‘Since the hard drives on computers have gotten so huge, people are tempted to keep copies of all their files on all their machines,’ Dr. Pierce says. ‘But this creates a logistical nightmare, trying to figure out which computer has the most up-to-date version of which file. Unison solves that problem.’

While similar tools have been built in the past, Unison has distinct advantages over other file synchronisers now on the market. It works on both Windows and Unix systems and can even work between two computers running different operating systems, synchronising a Windows laptop with a Unix server, for instance.

Moreover, unlike other file synchronisation software that can sell for several hundred dollars, Unison is an open-source project: it’s freely downloadable and comes with source code that users can modify if they wish.

Unison is also highly resistant to the myriad disruptions faced by computer users.

‘A synchroniser is an extremely ‘intimate’ tool: it messes with all of your precious files, and if it makes a mistake it may be months before you notice,’ Dr. Pierce says. ‘Unison can be interrupted at any point in its work – by a network failure, a machine crash, the user popping out the modem card and running for the airport – and leave both machines in a clean and sensible state.’

Unison also comes with a clear and precise specification of its behaviour, both in the form of extensive documentation and in the form of a mathematical specification that users can read to understand its behaviour in all cases.

In addition to Dr. Pierce, Unison’s development team included graduate student Sylvain Gommier, postdoctoral researcher Dr. Jerome Vouillon and Dr. Trevor Jim of AT&T Laboratories. The work was supported in part by the National Science Foundation.