The present invention is directed to a method and system for managing
concurrent access to multiple resources. Resources are assigned to sets
in such a way that it is safe to concurrently access any combination of
resources in a resource set. For each resource set, a virtual machine is
defined and associated with the resource set. An application is assigned
to a virtual machine. When an application requests access to a resource
not in the application's virtual machine, access control lists are
consulted to determine whether the access should be allowed, given the
other resources already accessed by the application.