Relocating application architecture and compiler support

In , on 01/25/05 at 07:39 PM, Anne & Lynn Wheeler may have used oatmeal boxes, old string, and new, used, and recycled electrons to say (at least in part):

The /50 emulated only the 1410/7010 and the 7070/74. No 709x (with a 4 byte wide memory, performance projections were dismal) and no 1401 (left to the /30 and /40).

There was no microcode assist for memory swapping in these emulators. There might have been (I don't know one way or the other) in a microcode RPQ that was done for a timesharing company (AB).

--
 Julian Thomas:   jt@jt-mj.net    http://jt-mj.net
 In the beautiful Finger Lakes Wine Country of New York State!
 Boardmember of POSSI.org - Phoenix OS/2 Society, Inc  http://www.possi.org
 -- --
 The cost of feathers has risen...  Now even DOWN is up!
Reply to
Julian Thomas
Loading thread data ...

I'm convinced. I will never understand OS/360 relocation without getting loaded on gin swizzles.

--
Nicholas O. Lindan, Cleveland, Ohio
Consulting Engineer:  Electronics; Informatics; Photonics.
To reply, remove spaces: n o lindan at ix  . netcom . com
psst.. want to buy an f-stop timer? nolindan.com/da/fstop/
Reply to
Nicholas O. Lindan

this is really vague recollection .. there was something about partitioning some memory (using base&bound specification) and invoking emulation using diagnose instruction ... and the gimick was how to specify base&bound (with diagnose) while still staying in 360 mode (aka it wasn't originally intended for swapping or time-sharing ... I have vague recollection it had something to do with emulation).

there is a small off-chance that i have a page or two write-up in some pile of paper someplace. if i get this scanning stuff down ... i'll try and find it.

on the other hand ... microcode RPQs weren't that uncommon.

--
Anne & Lynn Wheeler | http://www.garlic.com/~lynn/
Reply to
Anne & Lynn Wheeler

. .

I was under the impression that we are discussing relocation in the context of changing virtual (or real, in a non VM machine) addresses of both the program *and* the data the program is using. Thus, at an interruption, we can swap a user's context (program and data) at will to another location in memory. Relocation of just the program is not difficult- just make it reentrant without adcons. But the data, to be relocateable, also cannot contain addresses.

But perhaps I'm confused, in which case please elaborate.

Edward Wolfgram

Reply to
Edward Wolfgram

(snip)

That is one of the forms being discussed.

To add another, consider the U option of the OS/360 DSORG DCB parameter: unmovable. There were files that contained absolute disk addresses (cylinder, track, record), and so couldn't be moved to a different location on the disk. If a backup was made it had to be able to be restored to the same position on the new disk.

Relocation isn't just for running programs stored in real or virtual storage.

-- glen

Reply to
glen herrmannsfeldt

... snip ...

This is all OT on comp.arch.embedded. Please set followups on any further entries in this thread to eliminate c.a.e.

--
"If you want to post a followup via groups.google.com, don't use
 the broken "Reply" link at the bottom of the article.  Click on 
 "show options" at the top of the article, then click on the 
 "Reply" at the bottom of the article headers." - Keith Thompson
Reply to
CBFalconer

Where are you posting from? There's been a complaint about posting this to c.a.e. And I always get kicked out of c.a.

It appears that sometimes you all are discussing this flavor. It also appears that you're discussing other flavors. Note that what I know about hardware and how OSes do this stuff is miniscule.

Changing addresses of data over a course of execution shouldn't matter if it's the user program. In certain cases it does matter if this data is the OS's data it needs when it's executing in exec mode.

I'm using TOPS-10 terminology here because I don't know how to speaketh in Unix nor IBM tongues.

Nope that (swap) takes too long. At monitor that knows its job will store the address of the user's page map page on its stack. If the data and/or program needs to be moved or swapped for any reason, this work is done once the interrupt is dismissed.

I don't think it's ever done at interrupt level...I can't think of a scenario when swap and/or moving is done. In the computing biz, there is always an exception to every rule...including this one :-).

It can't contain absolute addresses without special handling, where special only means very careful handling.

I don't think you're confused but I do think each person is talking about a different side of an eight-sided coin. IME, when this happens everybody thinks they're talking about the same problem and are conveying information about the problem, but aren't.

/BAH

Subtract a hundred and four for e-mail.

Reply to
jmfbahciv

This is all OT on comp.arch.embedded. Please set followups on any further entries in this thread to eliminate c.a.e.

--
"If you want to post a followup via groups.google.com, don't use
 the broken "Reply" link at the bottom of the article.  Click on 
 "show options" at the top of the article, then click on the 
 "Reply" at the bottom of the article headers." - Keith Thompson
Reply to
CBFalconer

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.