A distribution

Gregory Travis greg at isrnix.UUCP
Fri Jul 5 06:45:38 AEST 1985


Well, I am ready to release the 'ISR' 2.9 UNIX distribution.  Sorry for
the delay, I was waiting on an 11/60 to test it on a non-I/D machine.

The ISR distribution is the culmination of about 2 years of on/off
hacking on V7/2.8/2.9 UNIX kernels for PDP-11s.  I have fixed many, many
bugs in the generic 2.9 kernel and have added what I believe to be
some major functional improvements.  The code is offered as-is with
no warranty implied.  I do believe the code to be quite stable, however
I have not been able to test it on many configurations.  I have tested it
our PDP-11/44 with the following configuration:

	2.5 Meg ram
	2 Able DH/DM
	1 DEC DZ
	2 RL02's
	2 RK07's
	1 RM05 (SI 6100 controller)
	1 Kennedy 9100 (tm11)
	1 SMS FWT floppy drive (rx01/02)

And on an 11/60 with:

	256k
	2 RK07's

Both systems work fine.

Using this distribution we are able to comfortably support 22-28 users
on our 11/44.

Included in the distribution are:
	1. A greatly reworked RL02 driver which does overlapping seeks
	   (as much as the hardware will allow)
	2. A fixed RX01/02 driver
	3. A fixed ttynew.c driver (for networking, select, etc...)
	4. A fixed and operational pty driver (it's huge!) (see note below)
	5. Fixed DZ and DH drivers (for emulations like ABLE's).
	6. Mods to the kernel and a daemon to do tty timeouts very
	   gracefully.
	7. Many, many improvement to user-level programs (ps, w, etc...)
	8. Some debugging on the network code.  I have NOT gotten it
	   running however.  I think it would take an afternoon or two
	   to get it running though.  I simply have no networking
	   need, and thus no motivation however.

Additionally, the following compilation flags are provided for the kernel:

ISR_FMAP		Faster (inline) mapin/mapout.
ISR_CPASS		Assembly language versions of cpass/passc.
ISR_COPY		Faster version (assembly) of bcopy.
ISR_CBUF		Use floating point unit (if available) for
			memory/buffer clears (100% speedup)
ISR_MAPS		Quick, bug-free, assembly versions of Savemap and
			Restormap.
ISR_FKC			Maps the kernel into user space to do buffer
			copies, avoids the slow copyin/copyout routines.
ISR_SBUFS		More than 2 swap buffers, speeds up swapping.
ISR_SCHED		Minor scheduling mods.
ISR_CLEAR		Exec only clears BSS space, since DATA is read from
			disk.
ISR_NAP			A 'nap' system call.
ISR_MEM			Use the FKC routines when programs read from
			/dev/kmem, greatly speeds up ps, w, etc...
ISR_NEWSCHED		Use the new scheduler provided on the 2.9 tape.
			I have implemented & debugged this for 2.9
ISR_AUTOTO		Kernel mods for the tty timeout daemon.
ISR_STAT		Control-T status reporting in the tty driver.
ISR_SELECT		Enables the SELECT system call, even if you don't
			compile the network code.  This is used by Emacs and
			script (to name a few).
ISR_FRAM		A neat (and very fast) RAMDISK driver (if you've
			got lots of memory (we mount /tmp on it))
ISR_GPC			Assembly getc/putc.
ISR_ICHRS		Assembly schar/uchar
ISR_WAKEUP		Assembly wakeup to be used with ISR_NEWSCHED
ISR_NSRCH		Assembly language directory search, speeds up
			nami about 200%.
ISR_EXFIX		Bug fix to exec for write-behind blocks.
ISR_RWUW		Faster fu/subyte routines.
ISR_RWSEL		Faster switches to read/write code.
ISR_PXREAD		Code to do DMA directly to user space and bypass
			the cache.  Exec uses this when loading programs -
			cuts system time in exec by half.


Additionally there are many bug fixes/speedups which are not
conditionally compiled.


The distribution consists of:

	1. All system sources/include files.
	2. Sources to all libraries (libc.a) - there have been many
	   bugfixes here also.
	3. All of our local sources and the sources to programs which
	   need to be modified for our kernel.
	4. Some manual pages.

I will also include a copy of our Emacs if so requested.  It is almost a
full Emacs implementation, supports subshells, mlisp, process communication,
etc.  If you desire a copy you must also send me, or have sent to me,
permission from James Gosling to send you the source to his Emacs.

To obtain a copy send:

	A check for $45 (US) made out to "Institute of Social Research".
	A copy of your 2.9 license.
	A copy of your 4.1/4.2 license for the pty code and a better
	disk sorting algorithm.
	Permission from James Gosling to distribute Emacs to you
	if you want a copy of Emacs.  You may also send confirmation
	directly to my electronic address.

	The check covers the cost of processing, a tape and mailing.

The address is:

	Gregory Travis
	Institute for Social Research
	Indiana University
	1022 E. Third St.
	Bloomington, In  47405
	ATTN: ISR UNIX DIST.

My mail address is:

ihnp4!inuxc!isrnix!greg

My office phone is: (812)-335-0892 (usually in the afternoons)


I can be reached for general questions, or bug reports/fixes.  Unless
the problem is immediate, please send all messages through email.

As I am the only one here who is working on this type of thing, please
keep in mind that the documentation is not quite up to snuff.  I have
tried to comment everything so that it is understandable.  However, I
simply do not have the time or the resources to fully document everything
I have done.  It should be clear from the sources however.  Therefore,
distribution may not be as 'clean' as some would like.  As a metric,
I would place it between 2.8 and 2.9 (closer to 2.8) in terms of
polish.  However, I wouldn't release it if I thought it would be more
trouble than it's worth.

Greg
-- 
    Gregory R. Travis
    Institute for Social Research - Indiana University - Bloomington, In
    ihnp4!inuxc!isrnix!greg
    {pur-ee,allegra,qusavx}!isrnix!greg



More information about the Comp.bugs.2bsd mailing list