Re: essential OS/2



William L. Hartzell wrote:
Sir:

Paul Ratcliffe wrote:

NO!!!!!!!!!!
That entirely defeats the point of DLLs in the first place and has an
enormous impact on shared memory usage, and God knows things are tight
enough in that department already these days.

There is no requirement that a dll be loaded into shared memory, no? What is the probability of two or more programs be running at the same instant that would be using a shared dll, beyond system programs?

Firstly, you have to take great pains to NOT make a DLL load into shared memory. I think even LIBPATHSTRICT still loads it into shared memory, but will give a unique module handle for each instance of the DLL, so the code and data will not be shared.


Secondly, a C runtime library is the very essense of something that SHOULD be shared for the sake of efficiency. The interface to it does not typically change (the C library routines have been pretty darn stable!), only the implementation. As such, the latest version should be the only version you need, unless there are bug workarounds in code that uses earlier versions, which there typically aren't.

I can see a suite of programs using shared memory for common dlls, but those programs outside the suite? If Paul Smedley was to package all those TCP/IP ported applications that he has done/is doing, into one package and include the lib06.dll so that users would not need to venture elsewhere to find it, then by all means share it. I think of those ports as replacements to system programs. The whole point and main difference between OS/2 and Linux has been the fact that programs come complete on OS/2 and not so on Linux. Why erode the OS/2 feeling by emulating Linux, even with Linux ports?

What about EMX and the many applications that require it? We've been down this road before, and it is not such a terrible hardship.


Thanks. There are still plenty of bugs though, but hopefully not too many
show stoppers.

I won't object if you quash a few more. But I've not found any in the subset of features that I use daily. The trap log has three entries within since about Nov 20th, but I don't remember the events.

I've got a weird one that I just tripped over completely by accident, but my version of XWorkplace is probably dated by now (1.0.3). If I hold ALT and double-click an entry in the window list, the WPS folds up its tent and goes away. It then restarts itself successfully. I did this like 6 times in a row just to convince myself that it was reproducable. I've never had occasion to ALT-click anything in the window list but my cat stepping on my keyboard took care of that for me.


--
[Reverse the parts of the e-mail address to reply.]
.



Relevant Pages

  • Re: re-sharing memory
    ... byte alignment settings for projects. ... The pointer would be written to a global pointer within another ... Then the other DLLs ... > Process B opens and initialises the shared memory. ...
    (microsoft.public.vc.mfc)
  • Re: Share data between different dlls
    ... What about Win32 shared memory? ... Seems like your dlls are behaving like out ... I've tried to create a global class object of CData*, ... > pData, by declaring it as an external in the header and initiate it in the ...
    (microsoft.public.dotnet.languages.vc)
  • Re: Linux dynamic library and static C++ data
    ... I am new to linux. ... The need for shared memory is when you don't have a single object controlling access to a piece of memory and the need for interprocess communication is similar. ... The difference is how you form a high level abstraction out of that. ...
    (comp.os.linux.misc)
  • Re: semaphores between processes
    ... shared memory pages between several processes, ... run on Linux, Solaris, and FreeBSD. ...     The sem_initfunction initializes the unnamed semaphore pointed to by ...
    (freebsd-hackers)
  • Re: Solaris intimate shared memory(ISM) port to Linux
    ... shmid_ds (related to shared memory) in Solaris and Linux, ... that couple of the elements are missing in Linux. ... correspond to ISM implementation in Solaris. ... ISM have on Solaris that are supposedly not present in Linux. ...
    (comp.os.linux.development.system)