V    V   A     X  X  TTTTTT  RRRR      EEEEEE    K   K
V   V   AA     X X     T    R   R     E         K  K
V  V   A A     XX     T    R  RR     E         K K
V V   A  A    XX     T    RRRR      EEEEE     KK
VV   AAAAA   X X    T    R    R    E         K  K
V   A    A  X  X   T    R     R   EEEEEEE   K    K

VAXTREK Phase 2 (the Upgrade Continues) .....

These are the voyages of the StarVAX ENTERP::, its five-year mission:
to explore strange new nodes, to seek out new protocols, new  hardware-
to boldly address where no call-request packet has been addressed before!
(and, if possible, provide some entertainment for our illustrious, but
oversexed captain).
---------------------------------------------------------------------------
"Captain's Log - Etherdate 0B-00-0D-7C-00-D9, Field Service Engineer Scott
 making error log entry on behalf of the Captain.

 We are currenly in orbit around the planet identified as "/usr/planet",
 having replenished the etherdrives with fresh packets. The captain and
 Systems Programmer Spock, with two security ACLs are down on the planet.
 We cann'a beam them up due to interference from the planet, and the Unix
 have now given us a two hour deadline to surrender, or be attacked. End of
 Log entry.  The light hasn't gone out, Yeoman, is it still recording ?
 I think so, try pressing the blue button. [CLICK] "Captains Log - Etherdate
 0B-00-0D-7C-00-D9, Field Service Engineer Scott making error log [CLUNK]"
 I dinna want to hear that again!
 I don't think you should have kicked it Mr Scott.
 It's still running, hang on, I'll get a screwdriver, and ZZZZZZZZTTTTTTTT"

Scott hurriedly put the fused log console under the chair, reconsidered,
took it out again, and tied a large red label around it.  "Call the Diagnostic
Supervisor please Yeoman, and ask him to come to the bridge as soon as
possible."

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

In the wink of an event flag, Kirk was back in a COM state.
"Spock, $WAKE"
"SPOCK-F-ISTHATTHETIME-What's the matter Captain ?"
"Something approaching us from over there", Kirk pointed towards the high
address end of the free blocks in which the party was HIBernating.
"Set PHA0s on wildcard sweep", said Kirk, as a tall creature swapped into the
context of the temporary camp.

"Fear not, I mean you no harm;", said the creature.
Kirk aimed his PHA0 at the lurking figure. "Come out where we can see you".

The creature stepped forward, an ageing looking humanoid, wearing rather
a lot of faded decorative clothing.

"I watched your interaction with the Signallers;
 it seems that you are an enemy of the system;"

"We came in peace. We were attacked ...", began Kirk.

"It is not safe to stay here;
 we must move quickly;
 I know a place where we will be safe;"

The landing party followed the creature through several layers of tortuous
code, and down into the internals of /usr/planet. They eventually came to
a large cavern.

"This is our address;
 you are welcome here;"

Kirk looked around. There were several stacks of dusty data structures lying
around. "Obviously don't believe in garbage collection", he whispered to
Spock. Kirk turned to the creature:

"I am Captain James Kirk of the Federation of Clusters. This is System
Programmer Spock, and what might your name be?"

"I am called Pascal;"

"Interesting", said Spock, "I had wondered about the semicolons".
Realization dawned on Kirk. "You are a Pascal compiler ?"

The creature drew himself up:

"I am THE Pascal compiler for this node;
 Let me introduce you to some of our colleagues;"

Some figures stepped out from the shadows using an "fg" command.

"Hearty and felicitous salutations to you and your gallant band of stalwart 
starfarers. It is with great elation and delight that I behold your presence
here, as it augurs well for our collective futures", intoned one of the
newcomers.

"Thank you", said Kirk, "you must be the Cobol compiler ?"

"Indubitably and verily yea, but, unfortunately, somewhat indigent in
contemporary experience of providing translative services to user
originated source tasks".

"Uhh..."

"Captain", whispered SPock, "I think he means he hasn't compiled any programs
lately"

"Thanks Spock, say I didn't know you knew any Cobol"

Spock hastily looked around, then looked relieved as he realized there were
no other Systems Programmers on the planet.  "A little", he admitted, "but it
was a long time ago, when I was a student."

	"Gree ti ngsGen tlem en, a ndw elc om eto our /usr/planet"

Kirk stared blankly at the newcomer, an individual of powerful build, and
someone who had the air of efficiency about him.

"Captain", said Spock, "this is obviously a FORTRAN compiler, note how the
location of spaces in his speech is quite unimportant to him."

"I had figured it out Spock, that and his indentation."

Spock stared curiously at FORTRAN's teeth, but saw nothing unusual.

"su gnoma uoy evah ot deronoh era ew", intoned a third.

"We are honored also, APL", answered Kirk.

"(WE ARE (THE) (COMPILERS WHO (ARE FUGITIVES FROM (THE SYSTEM) BE WELCOME
(AMONG (US)))))"

"No prizes for guessing who he is", whispered Kirk to Spock.

"Gentlemen, perhaps you would like some refreshment;
 we have frugal fare, but you are welcome to share it;"

The crew sat down to a meal which consisted of assorted buffers, which
was similar to the traditional diet of SRPs washed down with non-paged
pool.  After the meal, Pascal suggested they relocate to a meeting room
for discussion. After the context switch, they found themselves in a room
with a large round table. In the corner, a youth was weaving cloth.

"This is young BASIC;", introduced Pascal. The youth nodded, and resumed
his weaving.  Pascal whispered to Kirk:
"He is not quite as intelligent as the rest of us, but we gave him this job;
 because his string handling was so good;"

The party took seats around the table, and prepared to discuss what to do
next.

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

The Diagnostic Supervisor stepped out of Turbolift TLA3:, and stared at the
carnage before him on the bridge.  The captain's OPA0 console was nearly
completely dismantled, and components littered the floor.

"Ah, there you are, McCoy, I'm just having a spot of trouble with the
log recorder.  I have replaced everything in the chair except the paint so
far ..."

The communicator beeped.
"Ensign Roche to Bridge, I've located 15 liters of the chemical colorant
you were looking for".

"Good, send it up to the bridge, along with two crewmen armed with multibristle
emulsion applicators."

"McCoy", he said, turning to the amazed Supervisor, "have you any ideas about
repelling this attack, and getting the captain back ?"

"I have been in touch with Remote Diagnostics", said McCoy, earning the
kind of respectful looks from the bridge crew normally awarded to a medium
who has claimed contact with the late departed, "and they advise us to
reverse the position of the ship while they lock weapons."

"Mr Scott", exclaimed Checksum, "planet is locking weapons on the ENTERP::,
some kind of MOVC5 with zero operand beam".

"This could erase our entire address space, Checksum, bring us about, 180
degrees".

The ENTERP:: executed a series of dizzying ROTL instructions, bringing its
face about.  The planetary weapons fired, vaporizing a nearby moon.

"I am verra impressed, McCoy, how did it work ?"

"We simply transposed the least significant part of our start address with
the most significant, producing a bitwise reversed virtual address.  Normally
this would cause an access violation, but with the weapons latched onto
the first byte as a length indicator it resulted in considerable more
destruction than planned, but in the wrong place".

"But, that might have destroyed the captain and Mr Spock !"

"Ah, well it says here, 'Warning: the redirection of the weapon may cause
system failure, loss of files, or complete destruction of life as we know it
on nearby planets or satellites.  Consequently, Digital recommends caution
in the use of this patch'."

"Hmm, anyway, it should take them a while to regen those weapons, meanwhile
lets work on a way to recover the landing party."

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

"We are prepared to help you escape from /usr/planet;
 but we need some help from you in return;
 You must help free us from the tyranny;"

"We will do our best", said Kirk, "but I need more information.  What
 architecture is this planet based  upon for instance ?"

FORTRAN flexed his muscles at this point.  As the nearest thing to machine
code in the group, this was more his area of expertise.

"	Thi spl anet uses wha tis c all ed 
     &  R IS C.  I k nown otw hat iti s."

Kirk turned to Spock.  "This is incredible".

"Indeed Captain, RISC or Reliably Induced System Crash machines are pretty
rare now".

"But it gives us a chance, the ENTERP:: will have a copy of CRASHME.C in
its backup tapes".

"Captain, there is one thing you have not considered:  The Non-interference
Directive".

"Spock, the Prime Directive refers to living flourishing cultures.  This is
a Unix system !"

Kirk turned to the group of compilers (or "Library of Compilers" as Spock
had pointed out previously).

"Our ship has a program that when run by a non-privileged user will crash
any RISC machine known.  If you help us regain contact, we can download
the file to you."

"These are indeed fortuitous tidings of a most aggreeable and impressive
nature.  Let us give succor to our newfound allies, and embark upon this
great quest.  Once armed with this formidable weapon, I opine that our
endeavors will indeed bear much fruit".

"He does go on a bit Spock", whispered Kirk, "did people really have to
type this stuff in ?"

"It is easy to see why the Unix banished him.  A people who design system
commands which  minimize the distance travelled by fingers on a keyboard would
not long tolerate his verbosity"

"If you hope to gain access to your ship
 THEN
   we must take  you to the least protected area of the planet:
   /usr/pub ;"

****************************************************************************
"I think I have an idea".

The bridge crew groaned.  They were already shivering in their underclothes
because Scotty was convinced that static interference from the uniforms was
affecting the CAPTAINS.LOG.

"Scotty, I'm a doctor, not a cryogeneticist", growled the Diagnostic Supervisor,
"this one had better be good".

"Oh never mind the console, it's not on contract anyway.  I mean about
rescuing the landing party.  Mr Checksum, please activate SYSGEN and load
the NFS Client Driver.  We are about to impersonate a late moon."

****************************************************************************
"Here is the /usr/pub directory;"
 Nowhere else will you find a more dispicable collection;
 of bugs and viruses. We must be careful;"

The party descended down the side of the inode to /usr/pub, out of which
came the noise of riotous drinking, with the occasional hint of drunken
rioting.

From the distance came two figures, one mounted on a chestnut filesystem
one walking sullenly behind. The mounted figure was pointing his finger at
something.

"Oh", said Pascal, "That's Don X the 11th of Athena in the Land of MIT;
And behind him is his servant, Sancho Motif;"

"Fascinating", said Spock, "this is the man who invented Windmills, on
which our DECWindmills was based.  It would be most interesting to talk
to him.  What memories he must have!"

"At least 16 Megs in order to run Windmills, Spock", replied Kirk, "but
we haven't time at the moment".

As the approached, Kirk was startled to see an old 20th century alarm clock
suddenly appear in the air beside Don X's head.

"Sancho!", Don X shouted, "Cut that out!"

The clock vanished, and the pair passed them by, with Sancho shuffling
awkwardly behind his session manager.

"Those shoes look uncomfortable", said Kirk.

"That is the MIT binding, which only;
 fits shoes of size C comfortably;", explained Pascal.

***************************************************************************
"Mr Scott, I have successfully mounted an area of /usr/planet as a remote
NFS client disk

"Excellent Checksum.  Remind me to mention you in 'Software Dispatch'"

"Scotty", exclaimed McCoy, "the least mention of what we're doing the
better.  Not only are you using the IP address of that moon, you've
altered our ethernet address as well, which is not only against Star
Fleet regulations, but a flagrant abuse of LOG_IO privileges".

"Pipe down McCoy, you dinna want to be found out by an ARP do you?"

McCoy, who wouldn't recognize an ARP request if it shouted his name in his
ear, piped down.

"Mr Scott, the area seems to be some kind of public recreational area.
I've narrowed in on a small area that seems to be write enabled."

"Very good, Mr Checksum, full sensor scan for any sign of intelligent
case independent life forms".

***************************************************************************
The trio entered /usr/pub, and took a small table.  Around them
people were drinking and engaged in unintelligible arguments (like "-cFS"
or "-xb 250").  A swarthy individual approached the group, and thrust his
face close to Kirk's.

"i don't like your interface  !", he said.

"I'm sorry about that", said Kirk, "it's a standard string descriptor".

"it'll be a standard 'kill -9' if you're not careful !!"

"I'm sorry, I'll try to remember in future".  Kirk whispered to Spock,
"Quick Spock immobilize him with your Vulcan whatever-it-is".

Spock stepped forward and brought his knee up smartly into the aggressor's
groin.  He emitted a plausible imitation of a head crash, and collapsed
on the floor.  There was a momentary State Transition, as silence fell
on the room.  Then normal activity was resumed, and no-one paid any
futher attention to the group. Spock turned to the captain:

"It is better not to enable privileges if they are not needed."

"Well done Spock, you must teach me that sometime."

"Friends, we are in luck.  Look over there;" said Pascal.

Spock and Kirk peered through the haze at a lone figure at another table,
who seemed in an advanced state of entropy.

"It is the linker.  If we are to load CRASHME into the system;
 we will need his help;"

They approached the figure.  "Hi there old timer, can we join you?",
asked Kirk.

The figure looked up blearily, and waved to an empty process slot beside
him.  They took turns to swap in and out of the only  spare chair.

"Greetings old friend, what ails you ?;"

"well how would you feel", he growled, "if you had nothing to link but
 output from c programs for the last 500 megacycles. do you think it's
 fun or something ?"

"How would you like to link and load a really interesting program written
 in Pascal ?;"

A light entered the linker's eyes, and settled down to its unaccustomed
perch behind his retinas.

"if you can still remember how to compile one, i can link it", he declared,
raising the glass to his lips and nearly drinking from it.

"All we have to do is get the program from the ENTERP::", said Spock.

"First things first", said Kirk, "I must purge my working set".

He walked from the table, and entered the small room at the back marked
"/dev/john"
*******************************************************************************
"Mr Scott, I have a fix - it's Captain Kirk !"

"Mr Scott to transporter room. Lock onto navigator's coordinates and beam
to the bridge immediately"

The captain materialized next to the navigator console, with an extremely
surprised look on his face.

"Cap'n Kirk, it's good to see you" beamed Scotty (through force of habit).

"Scotty, your sense of timing is dreadful", said Kirk, hurriedly zipping
himself up, "sorry about your console Checksum - well done Mr Scott.
Dr McCoy, search the ship's library for an archive program called CRASHME.C.
Run it through the universal translator into Pascal, and bring the
result to the Transport Level as soon as it is ready.   Now Mr Scott,
why is my Error Logger bright blue ?'

***************************************************************************
Kirk returned to the table carrying a small magtape with him.

"Captain", said  Spock, "from the fact your carrying an archaic form of
software distribution with a proprietary  label on it, I conclude that
you have somehow reached the ENTERP:: and obtained a copy of CRASHME
translated into Pascal.  What I don't understand is how you managed to
have wet your trousers in the process."

"Shut up Spock - one word of this and I'll let INFO-VAX know you
understand Cobol."

"A trick of the light I'm sure"

Kirk turned to Pascal: "take this - it contains the key to your future".

"You don't mean I need a license PAK to run it ?;"

"Not that sort of key - come on Spock, time to RET".

Pascal and the linker gazed at the tape.  The linker whispered:

"better remove the propietary label, unless you want to be charged with
being a capitalist spy."

"We are most grateful;
 How can we repay you;"

"Well", said Kirk, "there is something."

"Name it;"

"Do you think you could not insist that you have to declare procedures in
the reverse order that you call them ?  It always seems strange to have to put
the main program last".

"And", said Spock, "how about passing strings by descriptor like everyone
else ?"

"Next Major Release, I promise;"

Kirk and Spock entered /dev/john drawing strange looks from some of the
other people in the bar.

***************************************************************************
Kirk watched the image of /usr/planet dwindle in the viewer, and turned
off his backup copy of the Error Logger.

"Captain, special Kernel mode AST from Star Fleet command."

"On main viewer."

The image of a high ranking officer from the Star Trek pool (paged)
appeared on the screen.

"Captain Kirk and the crew of the ENTERP:: A few cycles ago, a terrorist
group called the Popular Organization for the Suppression of Individual
eXpression (POSIX) broke into the Historical Preservation star cluster,
and carried out an act of wanton sabotage.  They  managed to effectively
delete the server's System Dump file."

"But what is the point ..."

"Don't interrupt me, I'm running at IPL 2.  This system has the only existing
copy of VMS 4.7.  Under that version, dump files are not marked as permanently
open by the file system.  You realize the implications ?"

"Yes, if the file is deleted, its blocks will be returned to the free pool."

"Precisely, and from there they will be allocated to new files. If the
system goes down later, it will write to all those blocks, hosing any
files which have been unlucky enough to allocate them.  Your mission,
Jim, whether you decide to accept it or not, is to locate those blocks
and allocate them before that system goes down.  That is all."

The screen went blank.  Kirk stepped back to his seat.

"Checksum, plot a course for the Historical Preservation cluster.  Mr
Scott, allocate SCHED spinlock and set IPL to Warp Factor 8.
Mr Spock, lock our code into memory, I don't want any exceptions, no
matter whose fault it is."  He waved his hand in the traditional gesture
of a VAXfleet captain indicating the ship was to move or change course.

"Engage Change Mode to Kernel !"

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

	Will the ENTERP::  undo the damage done by the terrorists?
	What will happen to the renegade compilers ?
	Will Spock remember to release the spinlock ?
	Do the guys who wrote this ever do any serious work ?

Tune in to VAXtrek 3:  "The Search for Blocks".

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

VAXtrek was written by               Tom  Wade   <t.wade@vms.eurokom.ie>
                                     Eoin Meehan <meehan@tech2.printech.ie>.

A copy of this (VAXTREK2.TXT) and the previous episode (VAXTREK.TXT) are
available from the server at kirk.eurokom.ie (137.43.19.57) using anonymous FTP.

We wish to thank Gene Roddenberry, all the folks at Spit Brook Road, and
George J Carrette <gjc@mitech.com> who wrote and distributed CRASHME.C
(yes folks, that bit was all true).

This article may be reproduced, distributed or published without permission,
provided it is done in its entirety, including this notice.

The authors and their employers take absolutely no responsibility for anything
whatsoever.

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