On Tue, Apr 25, 2000 at 11:44:08AM -0700, [EMAIL PROTECTED] wrote:
>
> Actually, no. Most of this stuff _isn't_ designed around 64k. The initial
> implementation was limited to 64k because the natural word size of the processor
> was a 16 bits, and every byte counts on a 128k device. So, many (private) size
> fields & whatnot were 16 bit integers. 64k was actually the maximum size of a
> memory heap, and we had multiple heaps. Most of that was fixed long ago,
> however. The only remaining 64k limit that I'm aware of is for HotSync. All
> chunks (dynamic memory, resources, records, etc...) in RAM or ROM on the device
> can be bigger than 64k... the high level allocation routines still artificially
> limit some allocations to 64k because we do not want a chunk >64k to be attached
> to a database. Once its part of a database, then hotsync might try to transfer
> it, and Bad things would happen. Engineering has been pushing to get this last
> piece fixed for a while now. When that happens, then all of the allocation
> routines will allow >64k requests. Note that the size parameters in these
> routines have always been 32 bits long.
>
> Hope you found the history bits interesting...
Very interesting. Some of the compression/decompression stuff I am
doing (including pdb/prc-as-stream to from installed pdb/prc) could
use this.
But if I need a chunk >64K not in the dynamic heap, where/how do I
allocate it and what happens to it if the program aborts (If it isn't
linked to a database, how can I find or use it?).
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palm.com/devzone/mailinglists.html