Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <v5s173$jl70$1@dont-email.me>
Deutsch   English   Français   Italiano  
<v5s173$jl70$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!3.eu.feeder.erje.net!feeder.erje.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: "Stephen Fuld" <SFuld@alumni.cmu.edu.invalid>
Newsgroups: comp.arch
Subject: Re: ancient OS history, ARM is sort of channeling the IBM 360
Date: Sun, 30 Jun 2024 16:30:27 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 64
Message-ID: <v5s173$jl70$1@dont-email.me>
References: <v5rcui$fqgj$1@dont-email.me> <memo.20240630131648.956b@jgd.cix.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 30 Jun 2024 18:30:27 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="654a1831c01f9f66d69c6db8106c14a9";
	logging-data="644320"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX19qfozDAoh+XOMsXOwVsMcR6W90Jd+yWk8="
User-Agent: XanaNews/1.21-f3fb89f (x86; Portable ISpell)
Cancel-Lock: sha1:fdRdeXPDGjvVxlMPpBfWBQWcYFg=
Bytes: 3727

John Dallman wrote:

> In article <v5rcui$fqgj$1@dont-email.me>, tkoenig@netcologne.de
> (Thomas Koenig) wrote:
> 
> > Imagine a process which resides at a certain address.  It contains
> > code, data, and pointers to data.  Now you swap it out and want
> > to reload it.  You can use the same base address, then everything
> > is fine.  Or you can use a different one, where do the pointers
> > point, especially registers which contain addresses?
> > 
> > The /360 tried to solve this via base pointers, which all addresses
> > were supposed calculated relative to to.  Hence the RX and RS
> > instraction all had a base register + 12 bit offset for their
> > addressing modes - swapping out the base registers (if you knew
> > which ones they were, was this info in the executable?)  should have
> > worked.  But the SS instructions for decimal arithmetic did not have
> > base pointers, so that solution did not work in the general casse.
> 
> And only a 12-bit offset, to boot. I've read of systems with base and
> limit registers, where all accesses were offsets from the base (or
> separate base registers for code and data).

Yes, e.g. Univac 1108.



> Real-mode 8086 code can
> work that way, although I don't think you can limit the size of a
> segment to less than 64KB. It looks as if /360 tried to construct
> that kind of operation style from more general base register address
> modes, but didn't do the job thoroughly. 
> 
> > Going to virtual memory from the start would have saved the
> > base pointer issue, and would have allowed 16-bit displacements,
> > also saving registers in the case where 12-bit displacements were
> > not enough.
> 
> Virtual memory was pretty new technology at the time, and required a
> disk or drum. The central idea of /360 was having the same ISA across
> a wide range of machines, and virtual memory wasn't affordable at the
> low end at the time, AFAICS. 

But IIRC even low end S/360s required a disk, at least to IPL(boot)
from.  But Virtual memory is more expensive than the hidden base
registers, as you need page tables. probably a TLB, etc.

 
> So the problem wasn't with MFT memory management APIs or their
> implementation, but that a /360 site had to find a set of partition
> sizes that allowed for all the combinations of programs that they
> needed to run simultaneously. This was inevitably wasteful of memory,
> because each partition had to allow for the largest program that
> could be required to run in it. 
> 
> Is that correct?

That is correct for OS/MFT, but not for OS/MVT.



-- 
 - Stephen Fuld 
(e-mail address disguised to prevent spam)