Bob Armstrong wrote:
It also forks of separate processes
Yeah, but John Wilson is famous for writing E11 all in assembly language
and for DOS. It runs right on the bare metal, or silicon in this case. If
there's any multi-processing going on, he must have implemented his own.
Yup. Didn't say he was using the C library. However, MIM is running on a Linux box. And yes, he is rolling his own code to make the system calls to Linux from assembler.
Actually, I believe the different hardware instances are threads, and not forks.
Johnny
Pontus Pihlgren wrote:
Makes you wish you had a real PDP-11/74 around... :-)
Hmm, we have several 11/70 you know. Could we build one? Or would we have to rebuild the whole cache/memory tingies?
Hehe. Yes, we have three PDP-11/70 machines.
But sadly, no. It is not an easy task. The MMU needs modifications to implement the cache bypass bit in the PDR, which a normal PDP-11/70 don't have. Then we need a modification to the core instruction set of the machine, as the ASRB instruction in an 11/74 always bypass the cache unconditionally.
And then we need a different type of memory boxes, that accept cables from up to four CPUs into the memory box, do the arbitration between requests from several CPUs, and also support a read-modify-write cycle interlocked.
And then we need a new piece of hardware called the IIST (Interprocessor Interrupt and Sanity Timer), which is what the CPUs use to interrupt each other, boot each other, and also make sure that a CPU isn't hung.
So, while possible in theory, it would require quite a lot of engineering to actually produce an 11/74 from a few 11/70 machines.
But all the pieces are documented, and the documents are available on the internet...
Johnny
It also forks of separate processes
Yeah, but John Wilson is famous for writing E11 all in assembly language
and for DOS. It runs right on the bare metal, or silicon in this case. If
there's any multi-processing going on, he must have implemented his own.
Bob
Bob Armstrong wrote:
Makes you wish you had a real PDP-11/74 around... :-)
So can E11 actually use multiple processors on the host (aka Intel) side
so that the emulated 11/74 CPUs can really run in parallel?
Yes.
It also forks of separate processes for controllers and the like, so they can run on different processors, if possible. So it will, as much as possibly allowed by the host, act like the real machine.
Johnny
On Mon, Oct 19, 2009 at 04:19:27PM +0100, Sampsa Laine wrote:
Probably because we're building a distributed directory :)
Ah ha! I knew it was something like that. :)
In any case, yes, eventually a central X.500 directory would be
wonderful - however the INFO.TXT + demon-spawn-of-CSV-infofields is
probably a nice and quick hack to throw together in an afternoon.
Hell, we can populate the X.500 dir from the textfiles eventually.
That's a good point. I think you've just motivated me to finally get
around to getting the VAX 4000/500 cluster set back up. I should really
find the DSSI cables I need to use the HSD30 (I *think* it's one of those,
I really need to check, I forget now) in place to start using that.
Although I lack the correct SCSI disks to put on it. Eh, maybe I'll get
the FDDI boards setup and get a FDDI interface into the fileserver and
just use NFS.
-brian
--
"Coding in C is like sending a 3 year old to do groceries. You gotta
tell them exactly what you want or you'll end up with a cupboard full of
pop tarts and pancake mix." -- IRC User (http://www.bash.org/?841435)
Makes you wish you had a real PDP-11/74 around... :-)
Hmm, we have several 11/70 you know. Could we build one? Or would we
have to rebuild the whole cache/memory tingies?
/P
The ground floor flat is mine (i.e. the home of CHIMPY, CHIMP, RHESUS, FIDOGW, SAMDEV and GORVAX):
http://maps.google.co.uk/maps?f=q&source=s_q&hl=en&geocode=&q=W14+0ST&sll=5…
On 19 Oct 2009, at 16:23, Bob Armstrong wrote:
so we can look at satellite map and see real location of node :)
I'm not sure I want to tell :-)
Bob
Makes you wish you had a real PDP-11/74 around... :-)
So can E11 actually use multiple processors on the host (aka Intel) side
so that the emulated 11/74 CPUs can really run in parallel?
Bob
Brian Hechinger wrote:
On Mon, Oct 19, 2009 at 04:52:51PM +0200, Johnny Billquist wrote:
Ah, and it might be fun to point out that MIM:: is actually an emulated PDP-11/74.
Yes, that is the multi-CPU PDP-11 that DEC never sold.
I'm usually running MIM:: with only two CPUs online. There is still some debugging to be done of E11 to make it work a little more stable.
How's that working for you? I've been meaning to set that up myself.
The machine is usually running just fine. There are a few bugs somewhere in E11 that occasionally can bite you, but usually it keeps up and running several weeks between crashes, and I abuse that machine pretty heavily.
One thing that should be noted is that performance can be hurt pretty bad for some applications that map a shared region read/write. RSX turns off caching for those APRs, to avoid cache coherency problems, and E11 do something in reponse to that which can be very visible performance wise. However, not many programs are plying with that, so it's not a big problem. I usually see it when I use my own symbolic debugger for RSX, which are using various tricks to be efficient... :-)
Also, some privileged programs might need recompiling, since RSX with multiprocessor support change the layout of some kernel structures, where offsets move around. If a privileged program is playing around with those structures, it needs recompiling or possibly just re-taskbuilding.
I've learned to write my programs to actually handle the case dynamically, but most programmers never faced the situation, so chances are that programs that to magic things in the kernel might break.
But if you like to play with something a bit different, then I'd recommend you to try it. There is nothing like bringing up a second CPU in RSX. :-)
In fact, the dynamic configuration tool in RSX would make any OS developer today envious. RSX really looks good here. It's an undisclosed marvel. You can take CPUs on- and offline during operation without even blinking. The original idea was that you could then diagnose, repair, and bring the CPUs back online while the machine kept running.
Same goes for memory, buses, disks, controllers, and what else there is.
Makes you wish you had a real PDP-11/74 around... :-)
Johnny