Is there a way to have an embedded system running just one kernel (i.e., not UML), but still using a cow file as the root file system?

The reason I ask, is that I'm thinking I want to use UML during development, but not ship it as part of an embedded system.  But the use of the cow file is very attractive, especially since the system can be restored to factory defaults simply by deleting a file.

So, does the use of a cow file necessarily require a UML guest kernel?  Or can I use the same technique with an ordinary linux kernel?