Date: Thu, 15-Nov-84 16:53:41 EST
Posted: Thu Nov 15 16:53:41 1984
Date-Received: Fri, 16-Nov-84 06:54:36 EST
Organization: AT&T Information Systems Laboratories, Holmdel, NJ
Can anyone out there help me with the following situation?
Machine A is 68000-based, running on a non-standard OS (i.e.,
not publicly available).
Machine B is either an IBM-PC or an AT&T 6300.
Program X is compiled in C to run on both A and B. Obviously,
different compilers are being used.
A data area created by X will be copied byte-by-byte from A to B.
Because of the differences in the way compilers arrange data
variables, it is unlikey that X on B will be able to use the data
area correctly without some sort of conversion, even though X
uses identical structures on A and B.
Some of the conversion problems I foresee are-
- length compatibality for data types (char and short, sighned and
unsigned are used almost exclusively)
- alignment and consequent padding (for individual items and
structures, especially unions)
- byte ordering
- embedded pointers (pointing to within the data area)
The conversion program will run on B when it receives the data area from
A. This program can have access to both A's and B's symbol tables as
well as the source structure definitions.
Is this possible????
Does such, or similar, program exist - even if for different machines?
Are there C compilers for IBM-PC that give me control of alignment?
Have I missed worrying about some conversion detail?
Any help at all to guide me in my folly.
Don't ask me why I want to do this. (I won't do it if I can't.)
Thanks for any responses. Send mail please.
AT&T Information Systems
Holmdel, NJ 07733