[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m2pozkppuh.wl@gmail.com>
Date: Sun, 08 Nov 2015 22:45:10 +0900
From: Hajime Tazaki <thehajime@...il.com>
To: octavian.purdila@...el.com
Cc: linux-arch@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH 00/28] Linux Kernel Library
Hello Octavian,
At Tue, 3 Nov 2015 22:20:31 +0200,
Octavian Purdila wrote:
>
>
> Q: How is LKL different from LibOS?
> A: LibOS re-implements high-level kernel APIs for timers, softirqs,
> scheduling, sysctl, SLAB/SLUB, etc. LKL behaves like any arch port,
> implementing the arch level operations requested by the Linux kernel. LKL
> also offers a host interface so that support for multiple hosts can be
> easily implemented.
I review most of code with the help of document and paper (2010).
I think LKL and LibOS are essentially the same thing.
I describe the current differences of both features, which I
believe there are no fundamental ones (i.e., both can
improve by putting some efforts).
- LKL
(beautiful) arch implementation (I like it)
fully kbuild compliant
rich fs support
host support: POSIX, win, haiku, etc
- LibOS
existing application integration
(semi-automated) system call table generation
multiple process support (via system call proxy)
various network backends (raw socket, DPDK, netmap, tap)
symbol namespace separation
host support: == rump hypercall (POSIX, xen,
qemu/kvm/baremetal(under development)), ns-3 simulator
# I can't find network support within the current patch but
there is/will be a certain code that LKL can play with
networking subsystem.
existing application integration is really important when
you want to configure network stack: since the configuration
of file systems is just a mount(), but configurations of
network stack need much userspace applications like iproute2
(ip, ss, tc) etc, which is not trivial to re-implement.
-- Hajime
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists