From: Martin Str|mberg Message-Id: <199807271748.TAA29763@father.ludd.luth.se> Subject: Re: A call to `sync' inside `spawn' To: eliz AT is DOT elta DOT co DOT il (Eli Zaretskii) Date: Mon, 27 Jul 1998 19:48:11 +0200 (MET DST) Cc: djgpp-workers AT delorie DOT com (DJGPP-WORKERS) In-Reply-To: from Eli Zaretskii at "Jul 27, 98 01:18:16 pm" MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Precedence: bulk According to Eli Zaretskii: > > On Sun, 26 Jul 1998, Martin Str|mberg wrote: > > > I suppose that there is no way to flush the _write_ cache and not the > > read cache? [Klippa, klapp, kluppit DOZE mess.] > In any case, the call to `sync' before running a child program doesn't > even need to flush the write cache. It just needs to make sure output > to the same file/device doesn't appear out-of-order, for which the DOS > CommitFile function is enough. IMHO, this is simply a DOS bug (it > should have done that in our stead, inside its Exec function) which we > are working around. I can hardly believe any Unix box calls `sync', > since the `sync' system call is typically prohibitively expensive on > Unix (it takes several seconds even on fast machines). No, I was thinking the sync call. It's such a waste to forget the read cache, when it's not necessary. And sync on my machine (Linux) doesn't take several seconds. Less than one, actually, and it's not idle. > Anyway, I'm not sure you can distinguish between ``read'' and > ``write'' cache, since the cacje itself usually doesn't. But if you Eh! Of course you can distinguish between read and write cache. It's rather necessary to do so: you have to flush the write buffers if you're rebooting. Perhaps I didn't understand what you meant? > know how to flush the cache without invalidating it, please tell. In How about "smartdrv/s"? But perhaps this also invalidates the read cache and perhaps there's other caching utilities on (WIN)DOZE that I don't know about? You seem to say so. Silence, MartinS