[TUHS] If not Linux, then what?
George Michaelson
ggm at algebras.org
Wed Aug 28 08:30:01 AEST 2019
BSD, but with the original STREAMS semantics, not sockets.
DARPA did us no favours accepting sockets in place of simple file I/O
semantics for networks.
Newcastle connection put the namespace into
/.../remote-part/path/to/thing which I felt was also good.
So for me, 7 -> BSD -> got worse for some values of worse
On Wed, Aug 28, 2019 at 12:56 AM Larry McVoy <lm at mcvoy.com> wrote:
>
> On Mon, Aug 26, 2019 at 11:14:45PM -0400, Arthur Krewat wrote:
> > On 8/26/2019 10:45 PM, Larry McVoy wrote:
> > > Which was that the page cache is
> > >*the* cache. There is nothing else.
> > Yeah, I re-read what you wrote a few times after I replied, and realized
> > what you meant ... eventually ;)
>
> I might be making too big of a deal about it. mmap semantics mattered
> a lot when SMPs first showed up and main memory was small. It meant
> that you could have multiple CPUs seeing and working on the same chunk
> of data at the same time.
>
> It's very similar to way that IOMMUs are exposed to user space these
> days, enabling virtual machines direct access to the I/O devices.
>
> ZFS breaks that model, the data is all in the ARC and if you mmap
> it they have to bcopy the data out of the ARC, into the page cache
> and now they have a consistency problem, you could modify stuff
> via mmap or write and they have to manage that.
>
> That consistency problem is the main reason that Sun almost completely
> killed the buffer cache (it still was used for inodes and directories
> but that was it). That consistency problem is a pain in the rear,
> all sorts of race conditions and it tended to bit rot.
>
> Jeff and Bill are smart people so I suspect they got it right but I'm
> still stunned that they took such an architecturally bad approach.
> And even more stunned that the oversight people approved it. There
> is zero chance that the Sun I worked at would have allowed that.
>
> --lm
More information about the TUHS
mailing list