Mail Archives: djgpp/1997/01/07/04:53:26
Thanks, Eli
What I meant by the "controlling the behaviour" is what I said
earlier - using off-times (once every few seconds) to perform the
actual writes.
I didn't know flush_disk_cache() interacts with the SmartDrv(), and
assumed it is DOS that is affected. Perhaps the doc's should elaborate
here?
But the main question remains: suppose I disable the SmartDrv. Can I
force DOS to withhold writing onto the disk until an fsync()?
Thanks again
Ronen
> Date: Mon, 6 Jan 1997 13:27:00 +0200 (IST)
> From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
> Subject: Re: DOS write buffers & DJGPP?
>
> > We've concluded that some internal DOS buffer was filled, and DOS
> > is dumping it onto our very slow FLASH disk. We tried using
> > _flush_disk_cache() on convenient times. This reduces the frequency
> > of the problem, but DOS still feels free to stop everything from time
> > to time to perform the I/O.
>
> `_flush_disk_cache' is only appropriate if you load a disk cache such as
> SmartDrv on your machine. If not, use `sync' or `fsync'.
>
> > Can I control this behaviour? should I do things differently?
> > Or is our explanation totally wrong?
>
> You didn't explain how would you like to ``control this behavior''.
> After all, the buffers must be flushed from time to time anyway, and the
> writes to the flash memory *are* slow. So what exactly would you like to
> accomplish?
>
> If you don't need all of the log file, but just its last X Mbytes, you
> might install a RAM disk of a suitable size and make the log file
> cyclically re-used.
>
>
--------------------------------
Ronen Friedman
Friendly Machines LTD
Phone: +972-9-8996750
FAX: +972-9-8996751
ronen AT friendly DOT co DOT il
- Raw text -