HISTORY
 17-May-88  David Golub (dbg) at Carnegie-Mellon University
 XM21:
	David Black completely rewrote the accurate timing code
	(which is now implemented on all machines) and the priority
	and scheduling algorithms.  The system now correctly reports
	cpu_usage per thread.

	wait() and ptrace() now only work on processes 	stopped by UNIX
	stop signals; they will NOT work on threads stopped only by
	task_suspend() or thread_suspend().  As part of this work,
	the p_stat field in the proc structure now only reflects whether
	the task is alive, stopped, or dying.

	The VAX now handles full-size user address spaces, with some
	slowness if many are in use at once.

	The thread structure no longer has any machine dependencies
	(the 'ifdef vax' field is gone!).

	Random cleanup (lint and otherwise), mostly in Vax code.

    files changed:
	bsd/init_main.c		new timing
	    kern_clock.c	new timing
	    kern_exit.c		new timing
				wait() only finds UNIX-stopped processes
	    kern_fork.c		p_stat
	    kern_sig.c		p_stat
	    kern_synch.c	p_stat, new autonice
	    mach_process.c	p_stat
	    sys_process.c	p_stat

	conf/MASTER, files	new timing

	kern/ast.c		new scheduling
	     clock_prim.c	new scheduling
	     mach_factor.c	new scheduling
	     mach_ipc.c		de-lint
	     machine.c		cpu_state
	     sched_prim.c	new scheduling
	     slave.c		new timing, clock interrupt optimizations
	     syscall_sw.c	no more thread_times
	     syscall_sw.h	no more thread_times
	     thread.c		new scheduling, usage
	     thread_swap.c	new scheduling, remove vax-specific code
	     timer.c		new timing

	sys/proc.h		document p_stat use for MACH
	    sched.h		new scheduling
	    sched_prim.h	new scheduling
	    sched_prim_macros.h	new scheduling
	    thread.h		new scheduling and timing
	    thread_info.h	cpu-usage scale factor
	    timer.h		new timing
	    user.h		Moved stray fields from thread to task u-area.

	vm/vm_unix.c		new timing

	vax/genassym.c		Removed vax-specific thread field; added
				THREAD_KERNEL_STACK.
	    kdb.c		Fix inserting breakpoints at page boundaries.
	    locore.s		Removed dead code and vax-specific
				thread field.
	    machdep.c		Removed user_pt_map.  Cleanup.
	    pcb.c		Removed vax-specific thread field.
	    pmap.c		Complete rewrite of user_pt allocation to
				allow for large user address spaces.
	    pte.h		Delinting.
	    symbols.raw		Delinting.
	    trap.c		Removed non-MACH_EXCEPTION code.
	    urem.s		(boy, is the compiler silly)
	    vax_init.c		get a little bit of memory back

	vax/kdb/kdb_main.c	Anticipate tasks with no proc structure.
	        print.c		Changes for new thread timing fields.

	ca/kdb/kdb_print.c	Changes for new thread timing fields.
	sun/kdb/print.c		Changes for new thread timing fields.

	sun/sun_mach_process.c	p_stat
	sun/sun_sys_process.c	p_stat

***********************************************************************
  12-May-88 Mary R Thompson (mrt) at Carnegie Mellon
	User side changes to sys/error.h and mach.defs
	No changes to kernel files (rebuilt mach_user.c,
	mach_server.c and mach.h and mach_user_internals.h
 	but they were the same as before - except for a 
	mig bug correction to c_plusplus stuff. )
***********************************************************************
  XM20
  9-May-88  Steven Schwab (schwab) at Carnegie-Mellon University
	Clean up to vaxif/if_ni.[ch]

mrt Fri May 5 18:00
	
	Modified sys/error.h to remove  non kernel function
	definitions that belong in mach_error.h. Changed
	type for mach_error_t from long to unsigned int to conform
	to Camelot standards.

***************************************************************************

XM19 sanzi  Thu Apr 28 16:40:10 EDT 1988

	Added the code for supporting the RT's
	shared memory mapping cache which can be enabled
	with the ROMP_CACHE switch. (See the MACHRTC configuration).
		
		Relevant Files : 
			ca/locore.c 
			   locache.s 
			   cache.h 
			   cache.c
			   pmap.c
	
	Added a number of floating point changes, mostly for supporting
	the new Advanced Floating Point Unit.  
	
		Relevant Files :
			ca/loutil.s
			   pcb.h
			   mc881.c
			   fpa.c
			   mem.c
	
	Changed the size of the Signal frame delivered to handlers for the
	RT only.  This allows more exception information to be pushed onto
	the stack.
	
		Relevant Files:	
			h/signal.h
			
	Upgraded from the ACIS 4.3 release 2 the following screen device 
	drivers:
			cacons/aedtty.c        
			cacons/aedtty.h      
			cacons/apa16loc.c   
			cacons/cons.c      
			cacons/consio.h       
			cacons/ibm_emul.c    
			cacons/kbd_emul.c   
			cacons/kls.h       
			cacons/screen_conf.c   
			cacons/screen_conf.h  
			cacons/std_emul.c    
			cacons/x_emul.c     
			ca/trap.c
			caio/speaker.c
			caio/mouse.c
			
	Fixed the following files in order that they can be compiled with the
	old Old OLD OLD (cc) compiler:

			caif/if_lan.c
			caio/hd.c
			cacons/lptty.c    
			caio/scsi.c
			
	Removed the obsolete file:  ca/types.h
	
	Changed the debugger (rdb) entry sequence from CTRL-ALT-SPACE to
	CTRL-ALT-SCROLL_LOCK.  I modified this in such a way that it
	can be reprogrammed with an adb script.  

***************************************************************************

XM18 ???

***************************************************************************

XM17 mwyoung Mon Apr 18 13:05:32 EDT 1988

	Removed some more unused Berkeley symbols.

	Integrated VM changes from my work on the MACH_XP
	configuration.  Notable changes to non-MACH_XP code:
		Creation of new paging objects has been moved
		into vm/vm_object.c.
		
		Static templates are used to initialize vm_object_t
		and vm_page_t structures for speed.
		
		More routines are declared in the header files.  A new
		file, vm/vm_fault.h, declares fault routines.

		A new thread "wait result" has been added: THREAD_RESTART.
		Its purpose it to force an operation to restart entirely
		after an interruptible wait.  It's only used under MACH_XP
		now, to handle copy objects.  [If the USE_VERSIONS technology
		is turned on for non-MACH_XP, it may be necessary to do
		something similar.]

	Removed unused tags from the MASTER file, and beautified it.

	For those following MACH_XP development, the important fixes
	here are:
		No longer leaks inode_pager hash records, ports, or
		anything else (to my knowledge).

		Fix typo to allow the device_pager to work.
		
		Handle copy objects through the interface.
		
		Eliminates a potential deadlock during pageout.

	Files affected follow:

	./sun3/sun_init.c
	./vm/vm_pageout.c
	./vm/vm_fault.h
	./vm/vm_fault.c
	./vm/vm_kern.c
	./vm/vm_kern.h
	./vm/vm_resident.c
	./vm/vm_object.c
	./vm/vm_object.h
	./vm/inode_pager.c
	./vm/vm_map.h
	./vm/vm_pager.h
	./vm/pmap.h
	./vm/vm_pager.c
	./vm/vm_user.c
	./vm/vm_page.h
	./vm/vm_unix.c
	./vm/device_pager.c
	./bsd/kern_exit.c
	./bsd/kern_resource.c
	./sys/message.h
	./sys/sched_prim.h
	./conf/MASTER
