Hi Eric, 

> On Apr 21, 2023, at 10:27 AM, Eric Auer <e.a...@jpberlin.de> wrote:
> 
> 
> Hi Jerome,
> 
> if you are worried about collisions, use AMIS int 2d.
> Overhead is low and it is less crowded than MUX int 2f.
> 
> RBIL was famous enough to make AMIS more widespread. FreeDOS is too
> niche to re-invent that wheel and declare int 2b to be a new trend.
> 
> Why would your RESIDENT driver have to do install checks?
> You can do those in the TRANSIENT part and just store the
> results as static data in the resident driver part.

There driver does do an install check at start up to prevent multiple 
instances. 
However, all of that code is discarded after initialization. But, you still 
need to 
“store the results” in the resident portion and respond to the interrupt calls
properly. 

There is probably little difference in the resident portion between using 2D or 
2B. Only, writing both versions could say for certain which is larger and by
how much. But, RBIL says 64-bytes + 22 per hooked interrupt. A simple ID
string comparison and set return values won't use much.

But we are taking about bytes and the savings may not be worth it.

> So the risk of wasting RAM by using AMIS are minimal :-)
> 
> I agree that MUX can get crowded. However, for disk I/O,
> the actual I/O still is the main bottleneck (unless you
> are a large cache with a very inefficient algorithm) and
> you would not do install checks for each invocation anyway.
> 
> One example of slow call chains which you can feel may
> be old ANSI variants and slow system and VGA BIOS. But
> that was long ago and even those were not THAT slow.
> 
> AMIS can be expected to be much faster than MUX and it
> will not be in the way for your CDEX performance either.
> 
> If you want to avoid the hassle of scanning for a free
> magic number, I would just hardcode one. Collision risk
> will still be lower than when grabbing the whole int 2b.
> 
> I agree with Tom: Use int 2d, it is the better choice and
> 2023 is not the year for MORE standards for simple things.

The only advantages I see in using 2B instead are as follows, it is 
very light weight, it uses very little memory to implement, it has 
almost no chance of conflicts and only being used for an install check
there is no impact on performance of any aspect of the system. 

Unless I just stay with the brute force search, 2D is probably the 
better choice. There are even suggestions that memory managers
can query it to retrieve the driver name. Although, I don’t know 
if the FreeDOS mem command makes use of that or not.

> Regards, Eric

:-)

Jerome

> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel



_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to