[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference noted::hackers_v1

Title:-={ H A C K E R S }=-
Notice:Write locked - see NOTED::HACKERS
Moderator:DIEHRD::MORRIS
Created:Thu Feb 20 1986
Last Modified:Mon Aug 03 1992
Last Successful Update:Fri Jun 06 1997
Number of topics:680
Total number of notes:5456

49.0. "Device for Time-Sharing" by NY1MM::MUSLIN () Thu Aug 23 1984 05:28

From NY1MM::


================================================================================
  NY1MM::MUSLIN            Local misinformation (NYC)         6-AUG-1984 23:21  
  Note #28               -{ Device for Time-Sharing }-             5 responses  
--------------------------------------------------------------------------------

	I have an idea for a device that will undoubtedly make us all rich if
we can build it and write appropriate drivers for it. I think that this device
called COPB is well suited for any time-sharing environment. With the use of
COPB a time-sharing house will not only earn more money, but also will provide
better service to its customers. This is the first tool that shifts some
aspects of system management and tuning from the hands of a selective group of
technicians in the Ivy Tower who have no conceptions of what users are doing
to the users themselves, the rightful owners of CPU cycles.

	"So what is this great device?' might you ask.


	It is	Coin
		Operated
		Priority
		Booster  or COPB for short.



Technical Issues

	This is an extremely simple device. The hardware consists of a
standard digital cabinet with a coin slot in it. A sensing mechanism detects a
coin dropped and interrupts the processor with a standard device IPL 24. At
that IPL it allocates an ACB from the non-paged pool and queues a kernel mode
AST to the process of a person who dropped a coin (further development is
required for determining that factor). This AST raises priority of that
process. An algorithm similar to VMS scheduling can be applied. There will be
two levels of priority boosts - time-sharing and real-time. Time sharing
boosts will up processes priority 1 point per 5 minutes per quarter. Increased
priority will last longer as you drop more quarters (this is the adjustable
priority VAX scheme). There will be a threshold for the initial sum. If you
deposit more than this sum in the beginning your priority will be boosted
for the duration of your process life. When a processor increases priority in
a time-sharing mode it will also queue a timer AST for five minutes (or more)
to lower the priority when the time is up. After ASTs are queue the IPL will
drop and allow further interrupts from COPB.



Pre-sales Issues

	Just imagine the opportunities for using that device in our office
(which itself is a microscopic slice of time-sharing environment). You are
sitting at a terminal trying to read your manager's mail, while ten other
people are doing BLISS compiles, five are running Datatrieve and one to add an
insult to injury is running ALL-IN-1 with DECmail in the subprocess! Drop 25
cents into a slot and your mail is read! You are free to go and do your work
while the coinless suckers wait for their turn.

	It's 4:45 and your district manager asked you to write a quick
five-paged memo before the end of the day on the great performance of VAX
system. How will it look if you say that you can't do that, because VAX
performance is low? But, drop 25 cents into a slot and presto! The memo is
done and the DM is pleasantly surprised with the quick result. He will
certainly appreciate this "Can do" vs. "Can't do" attitude and you will see
your quarter pay off handsomely on the next paycheck!



	So, any volunteers to develop the hardware and write the software?

						- Victor -

================================================================================
  NY1MM::GRACE             Local misinformation (NYC)         7-AUG-1984 08:57  
  Note #28.1             -{ Device for Time-Sharing }-                  1 of 5  
--------------------------------------------------------------------------------

dont forget to add coins droped  in SPM.
and how about a credit system, where you pay upfront and
later type a ^B to boost your self.
This will lower the new hardware cost.
Or is there a need to go to a token system.
Dont forget the danger of losing money by  busting the coin machine.


================================================================================
  NY1MM::SWEENEY           Local misinformation (NYC)         7-AUG-1984 15:47  
  Note #28.2             -{ Device for Time-Sharing }-                  2 of 5  
--------------------------------------------------------------------------------

Vic are you "committed" or "commitable"?  The situation you described is "fair"
only if the coins dropped in are immediately paid out to the other users
whose priorities now suffer, since it is precisely they who are on the other
side of such a "transaction".  Or did you think there was a free lunch for
the system manager?

Users should also have the option of asking for lower priority and getting
paid for such acceptance.  As a matter of fact some process of the system
could establish an auction market with bid and ask prices for priority
points.

Pat "free enterprise and property rights" Sweeney
Democracy does not guarantee freedom.
Freedom can exist without democracy.

================================================================================
  NY1MM::MUSLIN            Local misinformation (NYC)         7-AUG-1984 17:15  
  Note #28.3             -{ Device for Time-Sharing }-                  3 of 5  
--------------------------------------------------------------------------------

Re: .1

	Yes, good points about SPM. Some other pieces of software will have to
be upgraded like:

	$ MONITOR MONEY_FLOW

and

	$ SET PRICE_LIMIT 0.25		(a la Black Jack tables)
	$ SET TIME_SLICE 0 :05:00.00

Re: .2

	I think your points are fair and the money should be redistributed
equally between users (if we have an access to one of the banking networks a
direct money transfer can be arranged).

	One nice thing about this device is that it can be constructed out of
spare parts of some common machines (video games for its slot and coin
detection mechanism, disk drive for interrupts and a DMR/DUP for tying into
one of banking networks).

Victor Muslin
War is Piece
Slavory is Freedom

================================================================================
  NY1MM::SPEAKE            Local misinformation (NYC)        14-AUG-1984 08:22  
  Note #28.4             -{ Device for Time-Sharing }-                  4 of 5  
--------------------------------------------------------------------------------

 I think Sweeney's idea has merit.  Pay users who suffer with the money
collected from the priority boosters.  However, you must be careful with
the rates.  You can't pay sufferers the total income from boosters.  That's
the way banks work -- If you use the bank's money the rate is 18%; if they use
your money the rate is only 9%.  There is a moral to that story.  The answer
is left as an exercise for the reader.
 The idea might also be extended to disk space.  Users must drop in a quarter
for an increase in disk quota.  Of course, if we follow the governments
example, we must pay users who do not use space just like Uncle Sam pays
farmers not to grow produce.  (Can we export surplus disk space to the USSR?)
The refund for turning in disk space will have to be less than that paid
for it since it is now "used".
 I also have a limited quantity of hardware that you might find useful. It
is a new Double Density Null Device.  If you order before midnight you get a
set of valuable Ginsu knives and a Veg-a-matic.
	TS

================================================================================
  NY1MM::MUSLIN            Local misinformation (NYC)        14-AUG-1984 15:05  
  Note #28.5             -{ Device for Time-Sharing }-                  5 of 5  
--------------------------------------------------------------------------------

I think Tom's ideas could be implemented with new SYSGEN parameters (such as
COPB_INTERESTRATE). After all, what's a new VMS feature without SYSGEN
parameters?

				- Victor "in real VMS spirit" Muslin -

T.RTitleUserPersonal
Name
DateLines
49.1ROYCE::KENNEDYThu Aug 23 1984 21:428
Great Idea, but can it charge against cost centres?

Also, back in the days of old, I used an Atlas computer (the first paged
machine!) under the Titan operating system. If you wanted to run programs
interactively, you had to log in with /MODE=EXPENSIVE. Your charge centre
was debited accordingly.

Hugh
49.2REX::MINOWThu Aug 23 1984 18:4317
Of course, RSTS/E did it first -- the development system had
a coin slot (borrowed from a pin-ball machine?) with the label
"Insert 25 cents for 15 small buffers."

But seriously folks, something quite similar was proposed in the
'60's for allocating stand-alone time:  every researcher was
given some fixed "credit" at the beginning of the month, and
could bid on machine time.  Late-night time was cheap, so you
could get a lot of it, while prime-time was expensive, so you
got much less for your budget.

Actually, instead of coin slots and sysgen parameters, you need
agressive system managers who can provide sufficient computing
resources for you to get your work done in reasonable fashion.
but that's another story.

Martin.
49.3RANI::LEICHTERJThu Aug 23 1984 22:069
Some IBM 370 plug-compatible (maybe an Amdahl) had a "speed" switch on the
front.  You could have it at the normal or the fast setting.  At the fast
setting, the clock ran 50% or so faster.  The catch:  The machines were
leased, and the amount of time you used the machine in each of the two modes
went into your charge at the end of the month.

The theory was that you ran at normal speed most of the time, and switched to
fast mode at the end of the quarter, or whenever you had a lot to do.
						-- Jerry
49.5NY1MM::MUSLINThu Aug 23 1984 22:5613
Speaking of negative time...

	When I was in college our group found a bug in TOPS-20 batch system. 
The batch system would ignore user's diskquota limit. Not only it ignored it, 
but it screwed up user's disk space allocation altogether. We used to run 
recursive batch jobs that created huge log files in user's directory.
After deleting this file the user had plenty of space to work (needless to say 
that at college disk space was one of the most expensive resources). After 
this procedure was followed command @INFORMATION DISK showed negative disk 
pages used. We reported the bug to our computer center, so no one was 
expelled...

					- Victor "innocent" Muslin -
49.6VIKING::WASSER_1Fri Aug 24 1984 15:2226
	More time and space hacks:

	On a Xerox Sigma-6 at college a friend of mine wrote a FORTRAN callable
	subroutine that set up a service routine for the "almost out of CPU
	time" interrupt.  The service routine reset the users CPU timer to
	give him another 10 minutes of CPU time...  this repeated every 10
	minutes of CPU.  The routine was called SUPERFLY because the theme
	song of the movie "Superfly" had the words: "time's running out and
	there's no happiness..."

	On the same machine, I discovered that the BASIC subsystem (a command
	line interpreter that looked like Dartmouth BASIC) was immune to
	running out of disk space.  When you created a large enough file
	and went back to the operating system, you had a negative available
	disk space.  By logging off and logging back in you reset your available
	disk space to zero.  Delete the file and your available space goes
	up by the size of the file.  As long as you fill all of the space
	before you log out, you could keep it!

	An interesting property of CP-V (the Xerox operating system) was that
	disk space went to the account that deleted a file even if the file
	was in another account.  When you create files, however, the space
	comes from the account the file is created in!  You could borrow space 
	from another account by writing into it and deleting the file.

			-John A. Wasser (R.I.T. class of 1980)
49.7ORPHAN::BRETTSun Aug 26 1984 02:3010
Well, VAX-Ada is on its way and IT HAS the system for you!   Time-Slicing by
AST's.    Because we run a multiple tasks in a single VMS process, we use 
AST delivery to control the basically round-robin preemptive scheduler.  But
all those AST's going off all the time boost your priority and guarantee you'll
never get outswapped!

All this, and the language of the future too - buy one now and get one ????

/Bevin
49.8ORPHAN::BAZEMOREWed Aug 29 1984 04:207
re .0 : people who need the priority buy it, while people who don't sell it...

This poses an interesting problem : those who work have to pay to get it done,
while those who just sit around logged on get paid for not wanting a high 
priority.

			Barbara
49.9NY1MM::SWEENEYWed Aug 29 1984 16:1217
re: .-1

The offset to the "people who get paid for just sitting around and not
paying for priority" is that they are accountable for their share of the
output/product/service in order to continue to be paid.  Their rational
behavior is to demand exactly enough resources to produce the output
required.  Another name for this concept is efficiency.

Besides the joking around about this, my point is that there is "no free
lunch" when it comes to this business of priorities and access to computer
resources. It's a zero sum game with all incentives matched by disincentives.

A lot of hate that's directed at computers is a reflection not of the
computer or technology-based decisions but of local politics masked by a lot
of obscure computer-babel.

Pat Sweeney
49.10RHODES::CRESSEYWed Aug 29 1984 20:5320
Way back in 1965, the CTSS system at MIT was altered to allow users
to swap prime-time CPU cycles, off-time CPU cycles, disk-space, 
connect time, and any other resource that the system enforced quotas
for,  AT ANY RATE OF EXCHANGE AGREEABLE TO BOTH PARTIES!  Thus it
"made a market" of futures in CPU, ports, disks etc.


Someone familiar with both computer usage, and some techniques for
analyzing the commodities market, wrote an "arbitrage" program that
tried to buy low and sell high.  He left it running in background
permanently and went to New Hampshire for a week.

When he got back, he owned 99% of all the resources on the system for
the next 2 months.  (Did this really happen?  Gee, I heard it more
than once at the time, but it could have been mythical).

Regardless of whether it happened or not, is it fair?

Comments welcome.

49.11LATOUR::AMARTINThu Aug 30 1984 12:2312
Re .9:

Not always so, Pat!

If someone is playing a CPU intensive game, and I wan't to do a few Bliss
compiles, I'll stick them in the dregs queue, and get done faster.  They'll
get done slower, and it doesn't matter.

Applying external value systems onto the work being done changes things,
and so does the existance of unused cycles on a CPU.  Perhaps timesharing
services shouldn't charge for running instead of the null job!?
				/AHM
49.12RANI::LEICHTERJFri Aug 31 1984 23:3560
An interesting example of the difficulties that complex charging policies
can run into:

Back in my hacking days, Princeton had a 360/91.  You could get time on the
thing, or you could use one of a number of free batch services.  For example,
you could run a small WATFOR (FORTRAN) job for free; that service ran - at a
fairly high priority, in fact - every 20 minutes or so.  Among the services
was one whose name now escapes me; call it X.  X allowed you to duplicate a
deck of cards, making all sorts of changes to it - move fields around, sub-
stitute characters, etc. - or to get a listing of a card deck.  X had been
installed for political reasons:  There had been a small stand-alone machine
that had for years run a simpler version of X, and users demanded access to
such a service; the computer center, however, wanted to get rid of the old
machine, which was costing them tons in maintenance.  Hence, service X had
three interesting properties:

	It was free, and had no limits on cards or lines of output;

	Jobs submitted to it ran immediately;

	Jobs submitted to it ran at super-high priority - above all
	other user level stuff.

Now, every other way of punching cards or getting stuff printed cost money,
had limits, and had priorities based on how much you wanted done.

Enter the hack.  The 360/91 ran OS/360 plus LASP.  LASP was an interesting
system:  The ASP was "Attached Processor Support".  ASP was originally a
system that ran on a small "attached processor", and essentially acted
like an OS/360 operator.  You see, OS was really terrible about doing
things like scheduling jobs, running printers, and so on.  ASP took over
all the serial devices, maintained some queues, used operator commands
to control what OS was doing, and grabbed all output destined for serial
devices, queued it, and "did the right thing".  LASP was a software-only
version of ASP:  You booted OS, then ran LASP, which took over, patched
OS so that when it tried to talk to the operator it really called LASP
back, and also took away all OS's serial devices.  Instead, it gave OS
a fake device akin to a mailbox over which "cards" and "line printer
output" flowed.

Now, programs could talk to LASP if they knew how.  Basically, all you
had to do was send properly formatted messages to the "operator's con-
sole" - which was a non-privileged operation.  Among the things you
could get LASP to do for you was take a file and submit it as a job.

Now the picture should be clear:  I want to print a file.  I build it,
leading off with a couple of lines that call up service X and send the
rest of the file to the printer.  I pass the file off to LASP to execute.
Result:  I get my output before anyone else, and I don't even get charged
for it!

Something seems wrong with the economics here, and it's easy to see what
it is:  Why do I charge people for use of line printers and cards?  Pre-
sumably, it's because paper and cards and maintenance on machines cost
money.  But they cost the same amount whether I use X to produce output,
or some other program.  Clearly, the charging policies are irrational.  In
fact, this is exactly a "government subsidy" for certain kinds of "goods" -
and the distortion it introduces in the "marketplace" is inevitable.

						-- Jerry
49.13HARE::COWANSun Sep 02 1984 23:256
	When I was in NY last, someone was selling COPB's on a corner
in central park.  Victor, was that you?  If so, mine broke and I want
my $10 back.

	KC