The snapshot object is an important and well-studied primitive in distributed computing. This paper will present some implementations
of snapshots from registers, in both asycnhronous and synchronous systems, and discuss known lower bounds on the time and
space complexity of this problem.