Re: [Freedos-user] [Freedos-devel] EMM386 2.11 minor update, VDS fix

2006-07-18 Thread Michael Devore
At 06:20 PM 7/18/2006 +0200, you wrote:

There is a bug left in the FD-Himem.exe memory manager.

Nope.  But see further...

When a program that had allocated several XMS blocks doesn't release these
blocks in the order FD-Himem likes it, it will report a too small largest
free block. Luckily the memory is not permanently lost, FD-Himem is 
able to
regenerate if certain conditions are met.

This is a snapshot of the FD-XMS handle table after DOOM was launched and
terminated:

--
XMS version: 0300h
XMS3+ largest free block (kB): 702036    BAD

No, GOOD.  Or, actually, CORRECT, but not terribly GOOD.  Is there a 
BARELY COMPETENT choice?

Again, we have a situation where there is a bug label for what is merely 
suboptimal behavior.  Besides suboptimal, programmers also refer to this 
type of code as dumb, idiotic, and so bad my 90-year-old blind 
grandmother could code it better by typing with a pencil clenched between 
her butt cheeks.  (That would be a number 2 pencil, naturally).

Wow, two butt reference e-mails in a row.  I must be anal.

Okay, I'm having way too much fun with that, time to move on.  What is 
happening is that the handles are associated with memory that is fragmented 
into separate chunks.   To the best of my knowledge, under FreeDOS a memory 
report does not force blocks to coalesce, so FreeDOS is correctly reporting 
the largest (allocatable) block.  In its defense, I  believe that 
contiguous XMS blocks will be merged on allocation if there is insufficient 
memory contained in a single block, although I might be remembering that 
wrong.  In other words, if my memory is correct, block merges are done on 
allocation, but not on release or reports.

You could argue that FreeDOS HIMEM should be more intelligent about 
coalescing contiguous blocks on memory reports.  And you would be 
right.  It should.  That particular code function is hardly the smartest 
memory management in the DOS world.   That title would be reserved for how 
EMM386 shares XMS memory with EMS and VCPI (well, maybe not, but it IS 
pretty damn smart there).

  Suboptimal behavior which acts in a well-defined manner, however rude 
that manner may be, does not rise to the level of a bug.

Should I fix it?  Yup.  Should I fix it before FreeDOS 1.0 is 
released?  I'm not convinced it's time to go in and start ripping around 
the code with less than two weeks to go.  Particularly since the actual 
benefits for almost everyone using FreeDOS would be nonexistent.

Later tonight as time presents itself, I'll look at the actual offending 
code and see what would be involved in upgrading HIMEM's IQ points in that 
area without any possibility  of my introducing potential nasty bugs at the 
last minute.  Uhh, not me introducing bugs, I mean that Sith Lord.

But to be honest, there's a good chance this one won't make the FreeDOS 1.0 
cut.


-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] announce: OpenWatcom 1.5 distributive in .zip archives

2006-07-18 Thread Arkady V.Belousov
Hi!

Arkady V.Belousov 09.06.06 2:36 wrote:

   Because there is no official distribution of OpenWatcom in .zip 
 archives since version 1.4, I prepare OW 1.5 distributive in .zip-s at 
 http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/devel/c/openwatcom/1.5/.
  
 Here you find archives with same layout, as OW 1.3 distributive, readme.txt 
 (short introduction), license.txt and descript.ion (archives description 
 file, compatible with FAR Manage, NDOS and 4DOS).

 Also, now at given URL available CLIB.7Z archive. This archive contains
C RTL (runtime library) sources - this is copy of /bld/clib sub-tree from OW
sources (ftp://ftp.openwatcom.org/watcom/source/open_watcom_1.5.0-src.zip),
but without makefiles. Purpose of this archive is to ease access to RTL
sources - (1) browsing RTL sources sometime may shed light on some obscure
questions, related to RTL functions usage and behavior, (2) they are good
source for educating different techniques of writing in C, and (3) having
RTL sources, you may prepare stripped-down versions of functions from there
(unfortunately, bigger functionality of OW RTL in compare with Borland's
compilers makes negative impact on programs size).

PS: Archive packed by 7-Zip - freeware, GPLed archiver. With it, resulting
archive size is 5 times less, than in .ZIP, and 20% less, than in .RAR.

PPS: I think, compiler archives from above-mentioned URL may be included
into FreeDOS distributions. Of course, there not need to include all 80
archives (57 Mb) - for FreeDOS is sufficient to include archives, which are
hosted and target to DOS (41 files, 14 Mb - DOS/16 and DOS/32 programming in
C and C++, with helps, sources, debugger and DOS extenders):

DESCRIPT.ION LICENSE.TXT README.TXT
CM_CORE_ALL.ZIP CM_CORE_DOS.ZIP CM_CORE_DOSWIN.ZIP
   CORE_ALL.ZIPCORE_DOSWIN.ZIP
  C_DOSWIN.ZIP CPP_DOSWIN.ZIP
EXT_CAUSEWAY.ZIP EXT_DOS32A.ZIP EXT_DOS4GW.ZIP EXT_PMODEW.ZIP
CM_DBG_ALL.ZIP CM_DBG_DOS.ZIP
   CM_DBG_DOSWIN.ZIP CM_DBG_DOSOS2.ZIP CM_DBG_MISC1.ZIP
CM_CLIB_HDR.ZIP CM_CLIB_A16.ZIP CLIB_A16.ZIP CM_CLIB_A32.ZIP
CM_CLIB_D16.ZIP CLIB_D16.ZIP CM_CLIB_D32.ZIP
   PLIB_HDR.ZIP CM_PLIB_A16.ZIP PLIB_A16.ZIP
CM_PLIB_A32.ZIP PLIB_A32.ZIP
CM_HLP_DOS.ZIP HLP_DOS.ZIP
CM_IDE_ALL.ZIP CM_IDE_DOS.ZIP IDE_SAMPLES.ZIP
CM_SAMPLES.ZIP CLIB_SAMPLES.ZIP PLIB_SAMPLES.ZIP MISC_SRC.ZIP CLIB.7Z

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user