Auric__ wrote:
>
> Well, how are you doing whatever it is that requires network access?
*That*
> might give you some better hints than my air code. (I don't do DOS<->net
> stuff myself.)
>
> Also, what version of PB/DOS?
PB/DOS 3.50.
There's no particular pre-existing application here. The background
is, my DSL connection has been experiencing random dropouts. The
modem drops its signal and goes into the re-acquire mode every now and
then. Before the modem actually drops and cycles the network can be
dead for some period of time. I don't know precisely how much time
because I don't notice it until I try to do something network related,
like use a browser, try to check email, or pull down USENET posts.
Once the modem decides to do its thing the cycle can take up to a
minute to get everything back to normal (It's annoying but not
terminal; I'm not doing anything that requires 100% network
connectivity).
The last time I reported the problem to my provider they were not
particularly helpful, suggesting that I turn off the DSL modem, wait
30 seconds, then turn it back on. The only way I could see this
being an effective "treatment" is if there were a defective modem
in a modem pool at the CO end so that cycling it this way might let
me grab a different connection (and pass the problem along to
someone else!). But I doubt that DSL connections work with modem
pools. They also stated that if they sent someone to look at the
problem that if they determined that no abnormal condition exists, a
healthy service charge would be levelled. So, shoddy service with
shoddy support. What a joy!
The idea of the BASIC program was to monitor the network and keep a
log of the ups and downs, perhaps see if there's a pattern to the
occurrences, and tally the total downtime. I figure the network
misbehaves when I'm not looking more than when I am. I plan to
find out what figure for percent availability turns the problem from
"within normal parameters and we'll charge you to make it better" to
"we'll send someone to fix it, no charge". The first step is to
collect some hard figures for reliability numbers.
Since the "events" are infrequent but of relatively short duration,
detecting them and timing them requires that whatever monitors them
be fairly "fine grained". That's why I'd like to avoid the disk I/O;
I don't want to exercise the disk and interfere with other ongoing
work on the machine if I can avoid it. Logging events when they
occur is an insignificant amount of I/O compared to spawning a shell
command (with its environment), writing its output to a file, reading
it in, and erasing the file every 5 or 20 seconds or so.
I was also hoping to avoid having to concoct a whole web client in
order to do this and if I did, it's certainly not something for which
I would choose PB/DOS for its implementation.
I think I'll prowl around a bit and see if there isn't something
already "in-the-can" that I can use or adapt.