flat array-of-bytes format when we Marshal arguments?
In RPC
The answer lies in that "R" of the "rpc". Remote. Let me give you an example from everyday life. Imagine you have a great idea with many details about something. In your brain (not in terms of neurobiology, but in simple, in common human sense) it exists distributed everywhere, each detail is accessible from everywhere. This is very similar how your app object structure resides in RAM. But now you want to tell your idea to your friend. You use words - serial form of randomly scattered throughout your brain idea. You just can't share it another way. Because of the one limitation: the instrument for sharing thoughts is serial by design. There's much more to elaborate, but even this should be enough for understanding. So, the answer is simply: because mechanism of data transfer is physically serial. It transfers one byte after another. And mechanism of storing your app data is non-serial, it's random access one, access by memory address.
Обсуждают сегодня