Usenet.com

www.Usenet.com

Group Index

Comp Thread Archive from Usenet.com

<-- __Chronological__ --> <-- __Thread__ -->

Re: 1teraflops cell processor possible?



Nick Maclaren wrote:

In article <[EMAIL PROTECTED]>,
Rob Warnock <[EMAIL PROTECTED]> wrote:
In 1972, at Digital Communications Associates, I designed the kernel
for a realtime embedded operating system for a networking node which was
based on *precisely* that notion: The system ran with interrupts *OFF*,
and the programmers were required to insert "@YIELD" macros[1] every
so often[2] in the code. The "@YIELD" macro was logically a no-op[3]
unless some I/O event had occurred that needed to run a task of higher
priority than the current task. Worked like a charm!!


Interesting.  It was quite popular with the networking people at about
that time, probably on the grounds that similar problems lead to
similar solutions.

I used a very similar idea to run the original IBM PC serial ports at 115 Kbit/s: Since these ports were totally unbuffered, this really couldn't be done except by polling with all interrupts off.


The way it worked was that the two endpoints started by agreeing on a basic block size N, calculated to be as large as possible without either end ending up with serious problems caused by lost interrupts.

During the actual transfers each packet was sent by splitting it up into fragments of size N, with explicit synchronization betwen each fragment.

Terje
--
- <[EMAIL PROTECTED]>
"almost all programming can be viewed as an exercise in caching"




<-- __Chronological__ --> <-- __Thread__ -->


Usenet.com



Please check out one of the premium Usenet Newsgroup Service Providers below for access to Usenet.