While it is conceivable that a DOS program could read beyond 2GB, it is
very unlikely it could seek to those positions, and very certain it
could not do so beyond 4GB.
Just to say that in the course of other testing here, I looked to see
what the Microsoft C6.0 library calls for filelength() did with 64-bit
dosemu. What I found was:
With 32-bit Linux/dosemu it can't open files >2GB.
With 64-bit it can open files >2GB but sees the length incorrectly:
For <4GB it is correct if you treat the returned value as unsigned. This
may be the case in some software, but it is unlikely to be universal.
For files >4GB it seems to only get the lower 32-bits of the size, so
the file appears (incorrectly) to be less than 4GB in size. I would have
prefered the system to return (4GB-1) as at least you know the file is
very big in this case!
However, I have not tested to see if useful data access is possible >2GB
as I don't have any DOS applications that use very large files.
Dr. Paul S. Crawford
Small's Wynd, Dundee,
DD1 4HN, U.K.
Tel: +44 (0)1382 38 4687
The University of Dundee is a Scottish Registered Charity, No. SC015096
To unsubscribe from this list: send the line "unsubscribe linux-msdos" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html