On 3/17/19 8:13 PM, Rob Janssen wrote:
The challenge
is that by loosing the protocol stack in the kernel,
all the existing Linux packet
applications break. Maybe if a new
libax25 library was created that could redirect all those calls to
something in userland, that would work but that doesn't exist today. By
also moving out of the kernel, we loose most of the advanced routing
abilities in playing around with AX25/Netrom/Rose, etc.
It should be possible to make a usermode program that handles socket
calls made by other programs.
I.e. you continue to use a socket interface but the protocols are not in
the kernel but in that user program.
Solutions like this are used for many exotic services that cannot live
in the kernel for maintenance reasons.
(although for technological reasons they should be in the kernel)
Btw.. I don't understand your "put only
device drivers in the
kernel". If we did that for say IPv4, IPv6, etc...
that would
dramatically reduce the functionality of Linux as it stands today. So
much would need to change to accomodate a wholesale shift to Userland.
Well of course it has been a discussion since (before) linux was first
developed. The monolithic vs microkernel discussion.
However, you should not compare it to IPv4 or IPv6.
The issue is not whether network protocols technologically belong in the
kernel, but whether it is sustainable
to keep protocols that are used by about 100 users out of a Linux user
population of billions can be kept in
the kernel and survive every restructuring of the kernel without being
damaged beyond usability because people
are making changes and don't (because they cannot) test them in real use.
Apparently not. So it is better to go for a solution that works.
I have been running my version of NET on top of the kernel SCC card
driver for quite some time, and there were
no issues like this. It had a separate IP address and was connected to
the kernel IP stack via tun/tap.
Of course that is not a solution for socket applications using AX.25 but
something similar could be done.
Rob
Since many on this group have the peculiar knowledge on AX.25,
on amateur packet radio and related stuff, it could be effective
and proficient to re-compact the efforts to support, repair,
improve and revamp the linux kernel, the NET/NOS and so on.
Unfortunately I have no knowledge on programming but have
a lot of spare time to implement and test everything you
need :)
--
73 and ciao, gustavo i0ojj/ir0aab/ir0eq
Credo quia absurdum est (Tertullianus)