[ros-kernel] System DLL image bases in debug builds

Ge van Geldorp gvg at reactos.com
Wed May 5 10:10:14 CEST 2004


> From: Mike Nordell
> 
> I was thinking of moving (at least) kernel32 down a bit in 
> the address space for a debug build, and also space user32 
> and gdi32 a bit wider. This would however require changing 
> TARGET_BASE conditionally in the makefiles, and me and 
> makefiles is like teaching a cow fly - good luck. :-)
> 
> I think it would be as easy as
> !IF DBG (== 1?)
> TARGET_BASE = current adjusted by n
> !ELSE
> ...

Why not just move them unconditionally, i.e. both for debug and
non-debug builds?

> but before I even try this I felt some discussion about the 
> matter could be in place. For one thing, I'm not sure the 
> current way is really maintainable in the long run. ROS is 
> starting to get a rather large amount of system DLLs, and the 
> number is likely to increase over time. How to make it 
> maintainable for the future I'm not sure, that's another 
> reson for this post.
> 
> One idea could be to have a file "bases.txt" in the lib 
> directory containing the names and preferred base address of 
> each image, included by each makefile for these DLLs using 
> something like (using user32 as an example)
>   include ../bases.txt
>   TARGET_BASE = TARGET_BASE_USER32
> 
> >From one POV it could provide a nice single place to get an 
> overview of 
> >the
> current memory space allocated for DDLs, and the change 
> required to the makefiles would be trivial - even if boring. 
> On the other hand, it'd be another file to maintain and 
> another dependency.

I'm not sure if you noticed the baseaddress.cfg file in the toplevel
directory. It contains the base adresses, but unfortunately it might not
be up-to-date. I like your idea about including it from the Makefiles,
that will force us to keep it up-to-date.

Gé van Geldorp.




More information about the Ros-kernel mailing list