Article View: uk.comp.os.linux
Article #1314Reading microsoft file formats
From: Duncan Simpson
Date: Wed, 07 Oct 1998 00:00
Date: Wed, 07 Oct 1998 00:00
33 lines
2624 bytes
2624 bytes
In <6v3uei$593$1@shell17.ba.best.com> jbuck@best.com (Joe Buck) writes: >Nick Andrew <nick@zeta.org.au> wrote: >>It occurred to me on discussing this issue that perhaps the save format >>(what is written to disk) may be closely related to the data structures >>used in the program. >That's correct. Microsoft is fond of "serialize", a scheme for dumping >an image of a C++ object hierarchy to disk. The system is rather poorly >designed and inflexible (there is a versioning system but it requires >base classes to know version numbers of derived classes and other evils >like that), but it has the small benefit of giving programmers a simple >way to do a persistent store. I have a program that generates portable, albeit not dead fast, code for unpacking this format without going for the Software AG/M$ solution of getting the compiler to pack everything, despite any inefficency and other things indicating this is a bad idea. (ARM users will suffer *very badly* when a 32 bit number starts at an address that is not a multiple of 4---it takes two reguisters and some calculation to load the value). Release date will depend on volume of yelling at me. (More yelling==earlier release date and rougher edges). Note that we can do serialise in linux too if we really want to write non-portable data formats. I have plans to actually do this for temporary storage for a program that generates a table given a few numbers. Table size depends primarily on n and p. n=100 and p=2 looks like many 10s of Mb (I guessistmated 80Mb). n=100 and p=3 looks more like 80000Mb. Duncan (-:
Technical Details
Message-ID:
<6vg8cs$5ag@wapping.ecs.soton.ac.uk>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<907103252snz@vision25.demon.co.uk> <OtvFDIAmbgE2Ewio@dlsl.demon.co.uk> <ys4stod03w.fsf_-_@tulyar.sdd.cegelecproj.co.uk> <6v19t4$ksh$1@gidora.zeta.org.au> <6v3uei$593$1@shell17.ba.best.com>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1025b4,942a0596db2b8174 X-Google-Attributes: gid1025b4,public X-Google-Thread: fcfb9,942a0596db2b8174 X-Google-Attributes: gidfcfb9,public X-Google-Thread: 1103af,4460b3faefba3773 X-Google-Attributes: gid1103af,public X-Google-Thread: 10d8ad,4460b3faefba3773 X-Google-Attributes: gid10d8ad,public X-Google-Thread: f4bda,4460b3faefba3773 X-Google-Attributes: gidf4bda,public From: dps96r@ecs.soton.ac.uk (Duncan Simpson) Subject: Reading microsoft file formats Date: 1998/10/07 Message-ID: <6vg8cs$5ag@wapping.ecs.soton.ac.uk> X-Deja-AN: 398711004 References: <907103252snz@vision25.demon.co.uk> <OtvFDIAmbgE2Ewio@dlsl.demon.co.uk> <ys4stod03w.fsf_-_@tulyar.sdd.cegelecproj.co.uk> <6v19t4$ksh$1@gidora.zeta.org.au> <6v3uei$593$1@shell17.ba.best.com> Organization: Electronics and Computer Science, University of Southampton Newsgroups: uk.comp.os.linux,comp.os.linux.misc,comp.os.linux.x,comp.os.linux.advocacy,gnu.misc.discuss