[TUHS] Sockets and the true UNIX
steve at quintile.net
Fri Sep 22 05:13:50 AEST 2017
sockets and streams, but what about tli (i think) transport level interface - that exists in one of the sys-v variants.
maybe that was streams and i just didn't realise or maybe it was something else?
> On 21 Sep 2017, at 19:56, Bakul Shah <bakul at bitblocks.com> wrote:
>> On Thu, 21 Sep 2017 09:13:38 -0700 Jon Steinhart <jon at fourwinds.com> wrote:
>> Jon Steinhart writes:
>> Maybe this is naive of me, but I have never liked parts of the sockets
>> interface. I understand that at some level it was a political/legal
>> keeping the networking code independent of the rest of the kernel.
>>> From a technical and historical standpoint, I view it as the tip of
>> the iceberg bloating the number of system calls.
> In a sense the socket interface is a lower level interface
> compared to other syscalls. But complicated by the fact that
> it tries to be general.
>> In particular, I have often thought that it would have been a better
>> and more consistent with the philosophy to have it implemented as
>> open("/dev/tcp") and so on. Granted that networking added some new
>> functionality that justified some of the system calls, just not socket().
> This is more or less how plan9 networking is done. Among
> other things you can write scripts that can do networking even
> though the shell knows nothing about networking. See
> The key is to realize that each protocol defines its own
> namespace so this fits naturally in plan9. Allowing services
> (programs, kernel or drivers) to define their own namespaces
> and making them accessible via a tiny interface to any program
> is the main invention of plan9. Similarly ctl files instead
> of ioctls.
More information about the TUHS