On Tue, 2005-10-25 at 18:47 -0500, William Grim wrote: > Secondly, I agree with AMS that POSIX should not be considered a > second class citizen.
Just to be clear, I agree. There is good news about this: the UNIX emulation work that was done on KeyKOS was pretty fast, and the relevant EROS microbenchmark measurements were much faster than KeyKOS. But it is also true that a POSIX partial compatibility library will be good enough to let us migrate the majority of the FSF/GNU tool chain for native use. Fortunately, very few of these tools make any demanding use of POSIX. > Yes, a lot of command-line interfaces (CLI) are based on POSIX > interfaces, but so are a lot of other software. I suppose an example > of this would be any sort of app a developer may write in python or > perl. Actually, this is a counter-example, because both programming languages work fine in non-POSIX environments. > Things like IPC semantics are derived from the POSIX idea of IPC. This is simply not true at all. In fact, it was the other way around: POSIX borrowed these ideas from microkernels, and mangled them badly. > I know that this now sounds like I'm arguing for a developer's sake, > but developers write software for end users. If developers don't have > familiar platform when coding, a lot less developers code for the > platform; hence, less end users get software they really need. Good! This is an *excellent* argument for why developers are important: developers are necessary to support end users. My only suggestion is that we should be clear with ourselves that the *primary* goal is to support end users, and these will be the vast majority of users, so if we are faced with a design decision that must trade one user base against another we should make it in favor of end users unless there is an *extremely* good reason to do otherwise. > So, I think that what we should really be concentrating on is a good > chassis (primary system design) and add a POSIX layer as we go. I > think having the POSIX layer should be the de-facto layer that > end-users see. Perhaps you should spend some time watching people who are not computer scientists as they use a recent Macintosh. The vast majority of these users have no awareness that POSIX is even present, and they are quite happy this way. POSIX is a *fine* environment to have available for developers. It is a *lousy* environment for most end users. End users don't care whether it is POSIX, NT, DOS, or little purple mice inside. What they care about is: can they get their task accomplished effectively and without distraction. End users *do* care if their machine gets compromised in a way that negatively impacts them. This is why spyware is a regular topic in the New York Times. This is a compelling reason *not* to use POSIX as the primary environment. POSIX is the second best breeding ground for viruses, worms, and spyware (the best, of course, is Windows). > Sorry if I'm rambling, but I just wanted to be clear about my personal > opinion on this matter. We agree that POSIX is needed. We don't agree about the best base for an end-user environment, but you give a well-articulated rationale. I respect it, even if I don't agree with it. > I really don't see why Shapiro and AMS can't be simultaneously > satisfied. Because Shapiro wants a system that actually works well for real users, and AMS wants whatever AMS wants in the current instant. shap _______________________________________________ L4-hurd mailing list [email protected] http://lists.gnu.org/mailman/listinfo/l4-hurd
