It's almost never a separate process. Serialization takes place in the process you put it in, and this is almost always the same process where you use the data in memory.
Moreover, in some sense, this is
always the case. I'll explain why. Suppose you created a separate process to serialize/deserialize some data model to/from file/network... When you need to use it in some other process; and then you will find that the
processes are well isolated and are executed in
separate isolated memory spaces. What will you do in this case? You will need to communicate between these two processes, that is use some
IPC (
http://en.wikipedia.org/wiki/Inter-process_communication[
^]). And what it could be?
Same very serialization!
Are you getting the idea? Serialization in a separate process would make little to no sense.
—SA