To: Gerald R. Lampton who wrote (16189 ) 1/17/1998 1:12:00 PM From: Justin Banks Read Replies (3) | Respond to of 24154
Jerry -So, where do you draw the line between the Operating System "product" and the "other product"? An operating system provides the ability to boot the computer, perform peripheral i/o, perform memory management, provide various forms of protocol support, and execute user programs. This last part includes support for relocatable binaries and shared libraries.If, in the process of installation, the "other product" makes changes to the OS product's "shared DLL," where do you draw the line then? If a shared library is modified not to correct errors, but to provide additional functionality, it is an OS upgrade. Bundling an OS upgrade with a product distribution does *not* make the distributed product part of the OS. Aside from the insanity of such an approach from a system organization point of view, this serves to point out an unfair advantage MSFT has by being both the application and the OS vendor. For example, I wrote a program for database connectivity on the Unix command line. This program includes 5 object files in a shared library that I built. I *could* add all these object files to a shared runtime Irix library (although I'd probably get fired ;) ), but even if I did, my program would not become part of the operating system. The object code that I stuck in the library would be part of the operating system, but my program would not. The issue really isn't what OS stuff the program uses, but what application stuff the OS uses. Just by putting some additional code into the OS, you've not changed that.And, at what point does leaving those shared DLL's (or any other code originating from or shared by the "other product") on the hard drive constitute "conditioning" the receipt of the OS upon licensing the "other product"? If I did as described above, I would say that the point at which I would be conditioning the receipt of the OS upon licensing the other product would only be crossed when/if I required the presence of the executable. In my mind, removing ie.exe (or whatever it's called), would be sufficient to meet the Justice department's criteria. What I think is inexcuseable, however, is MSFT's contention that in order to remove all IE code they've got to remove the libraries that support it. That would be like me saying that to remove the database program described above I would have to remove the C++ shared library because I used cout. -justinb