\documentstyle{article}
\begin{document} 
Presently the schedules are implemented on the Alliant, the Balance,
and the Encore. A working version can always be found in 
connolly/SCHEDC2 on the Balance and Encore, and in sorensen/CLASS on the
Alliant. A version that uses a circular ready queue (as opposed to a 
simple 1-D array) is now working on all three machines. On the Balance
and Encore, it can be found in \mbox{connolly/SCHEDC5}
while on the Alliant it can be found
 in \linebreak sorensen/SCHEDC3/CIRCULAR. There are a few changes to be made
when moving from machine to machine - they are as follows:

\begin{tabbing}
ALLIANT: We will assume this is the basic program.
\end{tabbing}

\begin{tabbing}
ENCORE: \= The encore does not have the specific vector operations.\\
		\> Therefore all statements of the type u(1:n) must be\\
		\> performed in a traditional loop.\\

		\> \rule{0cm}{.5cm} The common block must be altered. The first item must be a\\ 
		\> pad that is one page long-I use foo(600). Following that\\
		\> should be an integer (I use imem0). Next is all the variables\\
		\> that are to be shared and last is another integer (imem1). \\
		\> The first \= executable statement should\rule{0cm}{.7cm} be:\\

		\> \> \rule{0cm}{.5cm} call share(imem0,(loc(imem1)-loc(imem0))). \\

\end{tabbing}
\begin{tabbing}
BALANCE: \= Like the Encore, the Balance has no vector operations.\\

		 \> \rule{0cm}{.5cm} The routines sched, putq, and spawn become \_ sched, \_ putq,\\
		 \> and \_ spawn respectively. Both \_ sched and \_ putq have an\\
		 \> added parameter at the end-this must be the number of \\
		 \> parameters in the parameter list. The routine \_ spawn\\
		 \> also must have this added parameter and the variable\\
		 \> myid must be the last variable passed instead of the first.\\
		 \> Thus the \= call to \_ spawn looks like:\\

		 \> \> \rule{0cm}{.5cm} call \_ spawn(jdummy,subname,$<$parm-list$>$,nparms,myid). \\

         \> \rule{0cm}{.5cm} After the call sched statement, you must put a call \\
		 \> m\_ kill\_ procs statement to kill off the extra processes.\\

		 \> \rule{0cm}{.5cm} Each routine or function in your program (except for main)\\
		 \> must have the directive C\$REENTRANT (start in column one)\\
		 \> immediately after the declaration.\\

		 \> \rule{0cm}{.5cm} The first two lines of your code should be \\
		 \> \$SYSTEM\\
		 \> \$STDUNIT\\
		 \> starting in column one.\\
\end{tabbing}
\end{document}