Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!lll-crg!lll-lcc!qantel!hplabs!tektronix!uw-beaver!fluke!ssc-vax!bcsaic!djd From: djd@bcsaic.UUCP (dennis j. doherty) Newsgroups: net.unix,net.unix-wizards Subject: Re: XENIX System V Release 2.0 for PC/AT Problems in Device Driver Installation Message-ID: <467@bcsaic.UUCP> Date: Sat, 1-Mar-86 23:55:21 EST Article-I.D.: bcsaic.467 Posted: Sat Mar 1 23:55:21 1986 Date-Received: Tue, 4-Mar-86 04:14:27 EST References: <381@weitek.UUCP> Distribution: na Organization: Boeing Computer Services AI Center, Seattle Lines: 83 Xref: linus net.unix:6707 net.unix-wizards:14207 > I am trying to add a device driver to XENIX System V on an IBM PC/AT. > I have run into several problems. > > Problem 1) The most serious problem is that > when I load in any code, even irrelevant code which would never be > referenced by any other routine, PS stops working. The following is the > file which I am loading. > > > ##### start of file link_xenix > > [ -f xenix ] && mv xenix xenix- > ld -Mm -D 18 -B 20 -A 0 -o xenix KMseg.o oemsup.o c.o space.o picmask.o termsw.o avdriver.o ./mdep/lib_mdep ../sys/lib_sys ../io/lib_io ../io/lib_io.stubs Klibc.a > echo "RESULT IS IN FILE xenix" > > ##### end of link_xenix > > After /etc/haltsys one eventually gets to: > > boot > :/usr/sys/conf/xenix {This is the new xenix} > > Then after some initialization, we are in the new XENIX. > Now, ps gives the following message. > > # ps > PID TTY TIME COMMAND > ps: seek error > # > > This error comes up fairly reliably as long as avdriver.o adds at least > 130 bytes to the xenix kernel. I tried moving avdriver.o to the end of the > load list, after all the files which have "lib" in their names. This > did not improve the situation. PS still fails. > The problem is that ps look at /xenix for all its offset info for the core image of unix but the kernel that is loaded in core is not the same as /xenix so ps can not find any tables (ei. proc, text,...). what you have to do is move the new kernel from /usr/sys/conf/xenix to /xenix and then haltsys and let it boot up normally. > Problem 2) make space.o fails. The cc compiler complains that it is out > of heap space. This is true even if no changes have been made to space.c. > There are changes make to space.c. As soon as you run the config command it updates space.c and make knows to recompile it. Why it doesn't compile I don't know. I have been able to make a new kernel??? > Problem 3) The ld command described above does not appear to recognize > ../io/lib_io.stubs as a library routine and complains if one of the > routines stubbed out in ../io/lib_io.stubs is loaded before ../io/lib_io.stubs. > This completely defeats the purpose of the stubs in the first place. See > /usr/sys/conf/README. > Not sure what you mean??? > Problem 4) The ld command is not completely documented. The -l switch > is mentioned in the documentation, see the last paragraph of page 4-1, but > it is not documented anywhere. That's not too bad because it is documented > in other versions of UNIX. The -D and -B switches are likewise not > documented in the XENIX documentation. I have never run into these > switches before and I have no idea what they mean. There is no GOOD documentation?!?!?! Yours in UNIX Dennis J. Doherty (206) 763-5169 {decvax|btlunix}!bcsaic!djd "Talk is creap on satellite." E.L.O. WARNING: This Message contains backgroud masking that makes a verbal statement which is audible when the message is played backwards.