X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f X-Trace-PostClient-IP: 68.147.129.203 From: Brian Inglis Newsgroups: comp.os.msdos.djgpp Subject: Re: files > 4GB There is always a solution Organization: Systematic Software Message-ID: References: <15b DOT 4b75cad0 DOT 2f50093c AT aol DOT com> X-Newsreader: Forte Agent 1.93/32.576 English (American) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 41 Date: Fri, 25 Feb 2005 07:13:58 GMT NNTP-Posting-Host: 24.71.223.147 X-Complaints-To: abuse AT shaw DOT ca X-Trace: pd7tw3no 1109315638 24.71.223.147 (Fri, 25 Feb 2005 00:13:58 MST) NNTP-Posting-Date: Fri, 25 Feb 2005 00:13:58 MST To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com fOn Thu, 24 Feb 2005 23:53:16 EST in comp.os.msdos.djgpp, Sterten AT aol DOT com wrote: >but I can create a file >4GB with a normal GCC-program: >(on a NTFS-harddisk) > >The file is opened and data is written to it. >You can follow this process with multitasking from another >DOS-commandline. You can peek into the file, while data is >appended to it by a GCC-compiled program. >You can open it with other C-programs >until less than 4GB are written. Then suddenly you >can't open the file with GCC-compiled programs, >while DOS-commands "dir","type","copy" still work. >This continues while the file still grows and after it's finished. > >Now, does the whole structure of the file change dramatically, >when byte 2^32 is written ? Hard to believe. >The data is still at the same place, where it was when byte >2^32-1 was written. Seems to me that GCC just checks >for the filesize and when it's too big then GCC >exits with an error - although it could proceed >as normal, at least for the first 2^32 bytes >and probably with some small modifications for >the rest as well. >I guess that it can be done by changing less than 100 bytes >in the gcc.exe. ISTM from the code, that it's probably one of the VDM "DOS" file open system calls which fails, there don't appear to be any size or similar checks in the 2.03 library. I don't run NT so can't check to make sure. AFAIR most or all NT utilities are NT CMD shell routines or console mode programs, not DOS programs. -- Thanks. Take care, Brian Inglis Calgary, Alberta, Canada Brian DOT Inglis AT CSi DOT com (Brian[dot]Inglis{at}SystematicSW[dot]ab[dot]ca) fake address use address above to reply