Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site petrus.UUCP Path: utzoo!watmath!clyde!burl!ulysses!gamma!epsilon!zeta!sabre!bellcore!petrus!hammond From: hammond@petrus.UUCP Newsgroups: net.arch,net.micro.16k,net.micro.68k Subject: Re: 24 bit vs. 32 bit address space Message-ID: <336@petrus.UUCP> Date: Thu, 25-Apr-85 08:43:15 EST Article-I.D.: petrus.336 Posted: Thu Apr 25 08:43:15 1985 Date-Received: Fri, 26-Apr-85 07:11:48 EST References: <983@watdcsu.UUCP> <2385@nsc.UUCP> <730@amdcad.UUCP> <523@inset.UUCP> <5351@utzoo.UUCP> <5522@utzoo.UUCP> <854@peora.UUCP> Organization: Bell Communications Research, Inc Lines: 37 Xref: watmath net.arch:1117 net.micro.16k:325 net.micro.68k:732 > henry@utzoo.UUCP (Henry Spencer at U of Toronto Zoology), writing about > mapping files into the address space, says: > > > The point is, you can map files into a process's address space on > > a sufficiently-cooperative machine (I doubt that the 80*86 > > qualifies), but it is very hard to make pipes and devices act > > like files if you do this. J. Eric Roskos comments: > > Why? If you make pipes do this, then what you have is equivalent to a > shared memory segment. ... No, pipes have synchronization, which you don't get with shared memory alone. Pipes also have a "stream" semantics which shared memory doesn't have without extra user level code. > > Making devices be mapped into a process's address space actually would solve > many problems. It is already done for some sequential devices, such as > serial ports, on "memory-mapped I/O" machines. Making a disk be addressable > as part of the address space would simplify access to it; ... Wait, memory-mapped I/O is not the same as viewing a device as a segment. Mapping a disk into an address space is OK, but I am planning on getting 3 Gigabyte optical disks this year, that's 1.5 x 2**31. If I want to copy from one to another by mapping them both into memory I need 33 bits of address space!!!! Does that mean we go to 64 bit address spaces? And what does that do the average program which doesn't need more than about 16 bit pointers? I submit that the stream view of the world has the useful feature that it maps onto any size of real objects, while even 32 bit addresses will soon have objects that can't be mapped entirely into the address space and thus will require 2 (TWO) views of the world, depending on the size of the real object. Rich Hammond {ucbvax, decvax, ihnp4, allegra} !bellcore!hammond