To set the record straight on caches and on UIDE -- >> Can you recommend any free int 13 or block device based delayed/ >> pooled write caching software? As far as I can remember, all >> "modern" (LBA compatible, given disk sizes on current PCs) >> implementations of this are commercial. > > I don't know of any, but there's definitely a need for one. I normally > don't use caches at all, but when I need one it needs to be a > write-delay cache and I use MS SMARTDRV. I actually don't like SMARTDRV > very much (it uses too much memory and requires a reboot to uninstall), > but I have it and it works OK.
I agree with the above -- "Write Back" (delayed-write) caches usually are "commercial", as they require a LOT of work and must be sold for a price. And I too absolutely HATED "SMARTDRV" -- Takes the most memory but caches the LEAST amount of data for it! I used Norton NCACHE2 for years, which is also a "memory hog", but not as bad for the amount of data it handles. > I don't find write-through caches like LBACACHE and UIDE to provide > enough speed benefit to be very helpful (though they might increase disk > life to some degree). In addition, LBACACHE and UIDE are INT 13h caches > instead of INT 21h caches (like SMARTDRV is), so they don't work with > all disks (including USB and SCSI). When I really need to increase disk > access speed (a big problem in some VM's), I copy my commonly-used > utilities and batch files to a RAM disk. No "cache" will ever compete with a RAM disk. RAM is always faster than disks with their seek/rotational latencies and their much slower transfer rates. But I dispute your comment about "Write Through" caches offering not-enough speed benefit, and I bet all "VERY happy!" users of UIDE might argue with you, as well. There is a REASON why "Write Back" caches are all so large -- they demand MANY "hooks" of a non-generic type into a DOS system, to handle Ctrl/Alt/ DEL and other events that require a "flush" of sectors not-yet written to disk. UIDE only needs to "hook" the Int 13h vector to do its functions. Also, UIDE is not just an Int 13h cache -- It CAN still be called by user drivers which desire its caching, though I am sadly aware that no one has ever done this. DOS driver development, or enhancement, isn't done that much any more. I did everything possible to make UIDE a FAST "Write Through" cache. It integrates caching with UltraDMA I-O for disks/CDs/DVDs; it can do direct UltraDMA to/from cache buffers to save time; it uses a binary-search when looking for cached data blocks (NOT "hashing", which breaks-DOWN in speed at about a 35%-40% full search table); and it is only 5.2K (UIDE) or 4.5K (UIDE2) of assembly-language, as I REFUSE to have God-forsaken "C" in any SYSTEM driver as important as UIDE is!! But, if you wish to continue giving-up 40K+ for SMARTDRV, 80K+ for Norton NCACHE2 or however-many K for other "Write Back" schemes, feel free to do just that! I and others will continue using the 944-byte UIDE/UIDE2 and will be "VERY happy!" with the speed increase we DO get, from doing so! [And if there are still those who do not understand how UIDE/UIDE2 manage to require only 944 bytes of upper/DOS memory, just call it "Sorcery"!!]. ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user