From owner-freebsd-hackers Mon Nov 27 00:58:30 1995 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id AAA15459 for hackers-outgoing; Mon, 27 Nov 1995 00:58:30 -0800 Received: from cls.net (freeside.cls.de [192.129.50.1]) by freefall.freebsd.org (8.6.12/8.6.6) with SMTP id AAA15454 for ; Mon, 27 Nov 1995 00:58:25 -0800 Received: by mail.cls.net (Smail3.1.29.1) from allegro.lemis.de (192.109.197.134) with smtp id ; Mon, 27 Nov 95 08:58 GMT From: grog@lemis.de (Greg Lehey) Organisation: LEMIS, Schellnhausen 2, 36325 Feldatal, Germany Phone: +49-6637-919123 Fax: +49-6637-919122 Reply-To: grog@lemis.de (Greg Lehey) Received: (grog@localhost) by allegro.lemis.de (8.6.9/8.6.9) id JAA04164; Mon, 27 Nov 1995 09:55:23 +0100 Message-Id: <199511270855.JAA04164@allegro.lemis.de> Subject: Re: Where is the documentation for ibcs2? To: terry@lambert.org (Terry Lambert) Date: Mon, 27 Nov 1995 09:55:23 +0100 (MET) Cc: hackers@freebsd.org (FreeBSD Hackers) In-Reply-To: <199511261948.MAA15284@phaeton.artisoft.com> from "Terry Lambert" at Nov 26, 95 12:48:38 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 7905 Sender: owner-hackers@freebsd.org Precedence: bulk Terry Lambert writes: > >>>> What is the name of the man page for ibcs2? >>> >>> There isn't one. There doesn't need to be one. >> >> I strongly disagree. BSDI has found the need to write two separate >> man pages (ibcs2(5) and sco(1)), and the information contained there >> is very useful. At the very least, you need to tell people how to >> enable it (yes, I did know about the entry in /etc/sysconfig; that's >> where I came in), and how to run a COFF executable, even if it's >> trivial. > > BSDI needs one because they have to enable it explicitly. Wrong. That's the case for FreeBSD, as you say: > FreeBSD can set the value in the /etc/sysconfig to "YES" at install > time because FreeBSD supports LKMs. >>> I think I need to >>> rephrase my answer: >>> >>> You use "modload", whose man page is "modload(8)" to load it. You >>> don't have any other options regarding IBCS2: you only have the option >>> of loading it or not loading it. >> >> Options aren't the only think to document. How about limitations and >> bugs? > > What are the limitations and bugs in FreeBSD itself? Not very documented, > and more important that similar documents for IBCS2. Well, people are addressing this problem, and not just claiming "There isn't one. There doesn't need to be one." >> How do I know how to enable the emulation? > > At install time, when it asks you about it. I didn't want it then. I want it now. How do I know how to enable the emulation? >> How do I run the program? Just start it by name? > > Yes. Aha. Where can I read that? >> Do I need to say "ibcs2 vi", or will it be enough just to write "vi"? > > Do I need to type "run foo" or just "foo"? I don't know. What's foo? >> I tried vi with the SCO version and got: >> >> === root@freebie (/dev/ttyp0) /allegro/usr/sco/usr/bin 16 -> ./vi >> Abort trap > > It apparently won't run. Why not? >> === root@freebie (/dev/ttyp0) /allegro/usr/sco/usr/bin 17 -> ibcs2 vi >> modload: error initializing module: File exists > > You are now typing things at random. People tend to do that if they can't find the documentation. > A bad idea for root (you must have > been root to get that particular error message). Give me a better suggestion. >> Well, it appears that I need to run it as "ibcs2 vi". But what's this >> modload problem? I have enabled Or have I done it wrong after all? > > Tell me: what must you do to enamle running of FreeBSD binaries? You > must install. Must I? I thought it was sufficient to copy the data. If I run them across the net, I don't even need to do that? > What must you do to run FreeBSD binaries? You type their name. The > questions are divisible. What makes you believe (incorrectly) that > you would need to type "ibcs2 " to run a binary? The fact that the first attempt failed. This wasn't a belief, it was a desperate hope. >> I'm an experienced computer person, and quite honestly the lack of >> documentation (coupled, admittedly, with a lack of interest in SCO >> software) is enough that I'm prepared to give up. Who is going to use >> this stuff if they run into trouble and can't even be certain they've >> started it properly. How does it work? > > I agree that there is a lot of missing "theory of operation" documentation > for lots of the kernel. Execution classes are one such beastie. The > VM is another. > > But if you expect Joe Schmoe to be able to make it work without asking > questions on -questions at this point if Joe Schmoe didn't have things > handled for him in the install, then you are barking up the wrong tree. Assuming that this abort trap is not typical, yes, I do expect Joe Schmoe to be able to make it work without asking questions on -questions at this point. Joe and his brother Bill are working for one of my customers, who are doing just this with a System V application running on BSD/OS in Munich. It would be nice if they could use them on FreeBSD as well. They have FreeBSD, but for various minor, silly reasons they don't use it. > Perhaps the right tree is http://www.freebsd.org. It should be the FM. Anyway, I've looked through the handbook. I can't find anything there, either. > Or the source code, > which is provided free of charge. I looked there too. The program is called /usr/bin/ibcs2, but there's no source directory /usr/src/usr.sbin/ibcs2. There's a directory /usr/src/sys/i386/ibcs2, but it doesn't have a Makefile. There's a directory /usr/src/lkm/ibcs2, but the program there does nothing more than load an lkm. Anyway, what do you think Joe would say? > Or the installation software that > should have created the missing devices for you. No it shouldn't. I didn't want one then. But that's interesting--this is the first I have heard of missing devices. Maybe that's why it doesn't work. Where's this documented? > Or the fact that to > use an SCO shared binary, you must first own a copy of SCO to get the > shared libraries. And you must know enough about how SCO uses shared > libraries to get them moved over. And you must know general theory of > operation of execution classes. Indeed. Where's the man page? > And let me tell you, a simple (or even a complex) man page will sure > as hell not cover it, especially without doing what Linux did and > supplying our own IBCS2 shared libraries, etc. Why not? Because of a dislike of man pages on the part of the person who should be writing them? > So who will use it? People who have this information already, people > willing to dig it out of the sources, or people willing to ask questions > of people who already know these things. > >> How do I go about finding out what's wrong here? > > Ask. RTFM. >>> Typically, you don't document things that don't have parameters, options, >>> or other controls. >> >> Speak for yourself. From my point of view, this is completely wrong. > > Are we talking "typically" (like I thought) or "ideally"? If "typically", > then feel free to write man pages to make yourself right. "Typically" > means in the common case, and if we pick a case at random (oh, say, IBCS2?) > and examine it, we find the documentation unwritten except as source code. As I said, speak for yourself. If I release software, I document it. >>> Things like IBCS2 are binary: they either are or >>> are not loaded. >>> >>> If you don't want to load it as a module (why not? It's an easy thing >>> to do), then you can statically compile it. Look at /sys/i386/conf/LINT, >>> at the bottom of the file: >> >> I can't see any reason not to load the module either. > > Memory. You should be asked on install. One problem is that the install > configuration is not very reentrant. So fix it, you have the sources. First I need to know what the problem is. If I run into problems, the first thing I do is read the man page. That's what I've been trying to do, but I've come across this claim "There isn't one. There doesn't need to be one." > Tell me, how is your hypothetical IBCS2 user, who will be using IBCS2 based > apps, not system components like "vi" going to *load* his software without > IBCS2 install tools? I know the answer to this one: they will do it by > playing computer and running the install script by hand. Try Lotus 1-2-3 > this way some day: I have. I don't know. I don't have the documentation. But I would guess that he will run his install tools in the same environment that he would use to run them. > The software is incomplete. You are incorrectly equating the kernel > components (which are to be optioned at install time, if done correctly) > with a full IBCS2 environment. Now here's the first statement with which I can agree. Fine, except that I didn't know that (it didn't say that in the man page). Still, a minimum of documentation would help even at this stage. So, what remains to be done? Greg