Subj : Re: Open Source Leaving Microsoft Sitting on the Fence? To : comp.os.linux From : steve_schefter Date : Fri Jul 30 2004 08:13 am Vilmos Soti wrote in message news:<87r7quawtc.fsf@localhost.localdomain>... > > Are you kidding? The Linux/Unix developer interface (api) has been > there for something like 30 years. Do you still program in win16? > What about the DOS interface? > > True, there are many new apis, like qt and gtk, but they don't > supersede each other. If you want to use an old program, hey, > you can even run old a.out binaries. I should have restated my bias from earlier posts. I write drivers and modules and work mostly in kernel space. There, things are constantly changing. If you don't believe me, join a newsgroup/mailing list of those that have to maintain components and watch the flurry of activity that occurs whenever a new release of a distribution comes out. "Red Hat/SuSE did such-and-such which broke such-and-such". I can't really comment on the consistency of the internals of Windows. I only pointed out that the stability which was under discussion in the thread was about interface consistency, not the long term running of applications/machines. I'll leave it to others to compare Windows and Linux on the topic of interface stability. However, my background is Unix and Linux. I see what's happening in Linux and can compare it to the Unix world that I've seen before. Unix was much more consistent between releases in its internals. Published kernel interfaces like SVID and DDI/DKI helped with that. That is, both the kernel writer and the user of those kernel calls had a published specification to follow rather than just learning by example from other source code. It's a lot harder for the kernel internals to change that way. The driver writer docs were less descriptive (telling you the way it is, at least for now) and more prescriptive (telling all, including the kernel writers themselves how it must be). Exposed data structures also tended to change much less often in Unix. In Linux, no one prevents major in-kernel interfaces from making changes that are not absolutely necessary. In the area of distro-to-distro comparison, Unix suffered from fragmentation and Linux hasn't learned from that. Back in the early 90s, AT&T private labeled their Unix (System V.4). Even Intel and Dell had their own distributions of that Unix. But you still had to port your product to each different one because the configuration files were different and/or in different location. The TCP/IP configuration is one example and this also differs, for example, between Red Hat and SuSE. Do I really expect this to change? No. The UnitedLinux push (which was a crock anyway) didn't go anywhere and didn't include Red Hat. I don't expect another initiative towards standardization any time soon. Steve .