Don wrote:
[1] What was size_t on the 286 ?

16 bits

Note that in the small memory model (all pointers 16 bits) it really was possible to have an object of size 0xFFFF_FFFF, because the code was in a different address space.

Not really. I think the 286 had a hard limit of 16 Mb.

There was a so-called "huge" memory model which attempted (badly) to fake a linear address space across the segmented model. It never worked very well (such as having wacky problems when an object straddled a segment boundary), and applications built with it sucked in the performance dept. I never supported it for that reason.

A lot of the effort in 16 bit programming went to breaking up data structures so no individual part of it spanned more than 64K.

Reply via email to