> 
> > 3. ssapp.tgz: tar archiv containing source and binaries for a cuiexe,
> >    consisting of an exe and a dll with a shared section. When the dll 
> >    is initialized the first time, it creates an shared heap and stores
> >    a string there. The exe loads the dll and calls a function, with 
> >    displays the string. Under win95 it will be displayed after every 
> >    invocation. Furthermore you can use a debugger to see the string 
> >    in the address spaces of all other processes. 
> 
> As expected, this one crashes under NT when trying to access the
> string, because the heap is not accessible from the second process.
> 

As far as I remember, the address space above certain point is shared
in Win95 (VM doesn't copy corresponding range of page tables when switching 
from task to task). This is where all file mappings go. Also, 16-bit stuff
goes there as well, thus all 32-bit code can easily thunk down to it.
One of those "Undocumented Windows 95" books has a detailed description.

HTH,
Alex

Reply via email to