*BSD News Article 8350


Return to BSD News archive

Path: sserve!manuel.anu.edu.au!munnari.oz.au!news.hawaii.edu!ames!olivea!uunet!mcsun!Germany.EU.net!unidui!du9ds3!veit
From: veit@du9ds3 (Holger Veit)
Newsgroups: comp.unix.bsd
Subject: Re: Shared Libraries for 386BSD (long, w/source)
Message-ID: <veit.723114729@du9ds3>
Date: 30 Nov 92 09:12:09 GMT
References: <lohse.722861707@tech7> <JKH.92Nov27145531@whisker.lotus.ie> <veit.722878428@du9ds3> <1602@hcshh.hcs.de>
Reply-To: veit@du9ds3.uni-duisburg.de
Organization: Uni-Duisburg FB9 Datenverarbeitung
Lines: 178
NNTP-Posting-Host: du9ds3.fb9dv.uni-duisburg.de

Reply to <1602@hcshh.hcs.de> hm@hcshh.hcs.de (Hellmuth Michaelis):

I don't want to discuss your various concerns in detail, the posting will
ever grow, and many topics have been discussed already before.

1. It is true that I have Internet access, and you and a large number of
   persons might not have. It is one of the difficulties of the 386bsd project
   that this is the case, and this, together with the really heterogeneous
   status of the readership (in terms of groups "users/hackers", 
   "newbies/wizards", "internet/usenet", "casual/permanent readers" etc.)
   is the reason why I would consider it not a good idea to discuss 
   critical things like kernel modifications in this public forum. No
   one, not even I (although you complain about exactly this) will 
   suppress progress, but a way that is chosen in the wrong way once, and
   known and loved by lots of interested people cannot easily be left.
   (I talk about "kernel" and "nonkernel" modifications below further).
   The problem of casual and permanent readers/posters makes the situation more
   complicated. You and I follow c.u.b. quite long and we should therefore
   know the general trend, but for the casual reader this is not clear.
   I wouldn't dare to post some piece of critical code if I were not sure
   whether there are not some other pieces of code addressing exactly
   the same problem. Perhaps I have learnt during my research, that one
   should first gather all information before there should be an action.
   This is difficult with a (probably unreliable) USENET link, but this
   was one of the reasons the workgroups at ref.tfs.com were made for.
!! Julian: can you comment on whether and how someone interesting in work
   can obtain a list of workgroups (posted some time ago) and can participate
   in such a group by e-mail only?

2. On progress and compatibility: You miss my main concern. It is true that
   any progress may break some feature of software developed earlier. 
   The problem begins if there are independent versions of a software
   aiming at the same area or, in case of the posted shared libraries,
   inherent incompatibility to own future compilations.
   We have the currently bad situation that there are for instance the following
   mainly incompatible versions of console drivers:
	1. The original pccons
	2. The pccons PL 58 with X11 patches
	3. Some improvements made to 2. (bell, etc.)
	4. The danish driver with VTs, which needs further patches 
	   and modifications for X11 (in the Xserver)
	5. Your vgadrv with vt100 support and some other improvements
	6. My codrv (the name already say that it is different)
	7. The announced version of your improved pccons (with unknown
	   improvements)
	8. My (not yet announced, but coming) new version of codrv (with
	   improvements I know :-))
	9. (Ralf Friedel's VT modification to the 0.0 pccons, which 4. and
	   in parts 5. is based on)
	10. Foreign code from BSD386.

   As a "user", I would be highly confused what to take now. I would like to
   have 2./3. (to retain compatibility with my old xserver), 5. to get vt100
   support, 4. to let my old SYSV apps run without problems, and 6. 
   (because there are some strange effects in 2./3. for X11).
   This would be a wish for a 9th version, but 1./2./3./4. are incompatible
   with 5./6. for X11, and all of them are incompatible among other things.

   To clarify again: If you write your "refrigerator" driver, and I write
   a driver for my "hifi-tower", there will be no problem. I strongly
   encourage you to make your "refrigerator" driver available, even if it
   is of no use for me (see below about the means how to make it available).

   If you port gcc-9.9.9 to 386bsd and I do the same, there will be also no 
   harm (just, that anyone of us could have done other better things 
   instead of duplicate work). This is because gcc-9.9.9 does not afflict 
   future directions of 386bsd, and the world can live with the existing 
   gcc-8.8.8 (so it can without a "hifi" and "refrigerator"-driver, because 
   the system already worked without it). I will encourage anyone to
   post things in such an uncritical area. For instance, there have been
   several postings regarding the mysterious bug in the xview library
   (cmdtool crashing). No one has fixed it yet, but any hint is worth trying
   (BTW, recompiling with gcc-2.3.1 does not help).

   If you write a VFS for the frequently used "ding-dong" filesystem
   and I do the same, and you assume to have all the existing data to
   be overwritten with 0xff, and I need 0xE5 for that, we might have a
   problem, and we should communicate about what to do. 

   If you write a completely new driver interface, and I do the same, but 
   in a different way, and both seem to have advantages and disadvantages, but
   it is clear that one of them must be in 386bsd 0.66, then posting both
   interfaces and letting the usership decide which is better is a kind
   of democracy I do not want to see. Nothing against democracy, but this
   example shows exactly a problem which should be discussed in the
   "wizards' circles" before being thrown on the community. 

   There is enough work for the "non-wizard", don't just try to select the
   problems which may have a maximum of side effects. The "wizards" are the
   ones with the overall insight, and will find a solution that is satisfying
   for many, not just for you and your perhaps restricted environment. Since
   you and I work on different shapes of the same medal, you surely have
   gotten as much user response on vgadrv as I was sent on codrv. The 
   different requirements people have had where amazing, surprising and 
   shocking alltogether, but I will try to get them under a hat and make most
   out of it. This is why I don't try to confuse people with new versions
   every week, and this is exactly Bill's attitude. In this context I was
   quite angry to see the "shared-library" posting, with the trailing remark
   that the poster now leaves for a new job, and will be no longer available
   for support or questions (until he can establish a new connection at his
   new job; if he can at all). Can you imagine how many people will take
   this code, analyse it and try to understand how shared libraries (which 
   they are encouraged to do; people, study to become wizards!) and try to 
   hack it into an improved version? With the existing delay in the usenet 
   of a number of days, you might see a new version tomorrow, and three 
   further independent versions in the next week. Can you also imagine that
   - due to the critical area that is touched here - there will be RSN
   versions of binary releases of popular software using this type of
   shlib? In my mind I really see the X11 with shared libraries on a
   number of ftp servers, and you carefully have to look for the version
   date, because any fix in one of the libraries will now cause the entire
   set of X11 be released again (Of course you can also hold N different
   libX11_s.a on your system).

3. On asking the wizards and Bill or Lynne's right to release the
   guidelines:
   Terry, IMK, didn't ask Bill for posting, but the patchkit is non essential
   for the future way of 386bsd, it just makes life more comfortable.
   I asked Bill, and he recommended the general guideline which is now
   implemented in keycap/codrv.

>Did Lynne or Bill Jolitz waited for getting acknowledge from someone before
>they did the unthinkable ?

   Bill Himself, of course, does not have to ask anyone before he decides
   to do something. If you complain about that, you forget the HE was the one
   who made this work available to YOU, at his cost and efforts, and that 
   you and all the known and unknown hacker and users here in this group
   were not speaking about anything if HE wasn't the one to make 386bsd live.
   Many here, including you with your claim of "ultimate freedom of posting
   anything at anytime", forget the rule that the one who pays the music also
   decides the tune! And BTW, you won't compare yourself with Bill, will you?
   Call me a wizard or not (I DO NOT call me one), I won't even think of that.

4. On posting:

>And, Holger, would you please leave ME the freedom to decide what i want 
>to post (in conformance with the netiquette and the purpose of the group 
>to post into) ??

>And, Holger, would you please leave ME the freedom to decide what i want
>to let my eyes have a look at and let MY cpu the freedom to process what
>ever it likes ??

>This includes the freedom to choose to install the green, red or yellow
>refrigerator device driver, EVEN if the red one might crash MY system and
>the yellow one is your favorite one !!

   The netiquette strongly recommends to avoid posting into non source groups,
   and the existing c.u.b. is a discussion group. Since you have a USENET link
   over (possibly slow and low capacity) serial links, you should object
   against large source postings, whether they are possibly useful for YOU
   or not. You might use the ftpbymail service if you think it is worth for 
   you, but then you are interested in spending your money and are not forced
   to spend for unknown goodies. This is why I haven't posted my codrv code
   to USENET; it is too large, but I am willing to send a package to anyone
   who wants to have it by mail.
   The comp.os.386bsd.* in discussion may have or have not a source group, 
   I don't want to discuss about new groups here.

   You may also execute your green refrigerator driver on your system, as well
   as I run my yellow (which I personally think for me is the best, and if
   anyone asks, I will recommend to use my yellow one) on my system. But then
   we have our own 386bsd-hv and 386bsd-hm systems, and everything that
   we think that should be in 386bsd-jolix should be coordinated with the
   master maintainer of 386bsd-jolix.

>hellmuth
>-- 
>hellmuth michaelis    HCS Hanseatischer Computerservice GmbH   hamburg, europe
>hm@hcshh.hcs.de              tel: +49/40/55903-170         fax: +49/40/5591486

Holger
-- 
|  |   / Dr. Holger Veit         | INTERNET: veit@du9ds3.fb9dv.uni-duisburg.de
|__|  /  University of Duisburg  | "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|  | /   Dept. of Electr. Eng.   |   Sorry, the above really good fortune has
|  |/    Inst. f. Dataprocessing |      been CENSORED because of obscenity"