• DocumentCode
    2748756
  • Title

    Marshaling/demarshaling as a compilation/interpretation process

  • Author

    Queinnec, Christian

  • Author_Institution
    Paris VI Univ., France
  • fYear
    1999
  • fDate
    12-16 Apr 1999
  • Firstpage
    616
  • Lastpage
    621
  • Abstract
    Marshaling is the process through which structured values are serialized into a stream of bytes; demarshaling converts this stream of bytes back to structured values. Most often, for a given class of data, the marshaler and the demarshaler are tightly related pieces of code that are synthesized conjunctly. This paper proposes a new point of view: the demarshaler is considered as a byte-code interpreter evaluating a stream of bytes that is itself considered as a program, i.e. as a sequence of commands interspersed with quoted raw data. These programs are expressions of the marshaling language. From that point of view, the marshaler logically appears as a compiler translating structured values into expressions of the marshaling language. The demarshaler depends on the sole marshaling language. If this language is powerful enough to deal with any kind of data then the demarshaler can be kept constant while many marshalers may coexist. This asymmetry and programmatic view has far-reaching consequences: (i) it is simple to accommodate new dynamically created classes of data, (ii) it is possible to have simultaneously various marshalers that offer different, even evolving, strategies in order to cope with different situations such as network congestion or processor memory exhaustion
  • Keywords
    distributed shared memory systems; program compilers; program interpreters; asymmetry view; byte stream; byte-code interpreter; command sequence; compilation process; compiler; demarshaling; dynamically created data classes; interpretation process; marshaling; marshaling language; network congestion; processor memory exhaustion; programmatic view; quoted raw data; structured value translation; structured values; tightly related code; Electrical capacitance tomography; Internet; Java; Law; Legal factors; Libraries; Mars; Read-write memory; Taxonomy;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing, 1999. 13th International and 10th Symposium on Parallel and Distributed Processing, 1999. 1999 IPPS/SPDP. Proceedings
  • Conference_Location
    San Juan
  • Print_ISBN
    0-7695-0143-5
  • Type

    conf

  • DOI
    10.1109/IPPS.1999.760541
  • Filename
    760541