Re: Kernel development using linux containers (LXC ) ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jul 29, 2015 at 1:49 PM, Greg Freemyer <greg.freemyer@xxxxxxxxx> wrote:
> On Wed, Jul 29, 2015 at 4:23 PM, Manish Katiyar <mkatiyar@xxxxxxxxx> wrote:
>> On Wed, Jul 29, 2015 at 1:07 PM, Jeff Haran <Jeff.Haran@xxxxxxxxxx> wrote:
>>>>-----Original Message-----
>>>>From: kernelnewbies-bounces@xxxxxxxxxxxxxxxxx [mailto:kernelnewbies-
>>>>bounces@xxxxxxxxxxxxxxxxx] On Behalf Of Manish Katiyar
>>>>Sent: Wednesday, July 29, 2015 11:51 AM
>>>>To: kernelnewbies
>>>>Subject: Kernel development using linux containers (LXC ) ?
>>>>
>>>>Hi,
>>>>
>>>>I've been playing and reading about control groups and linux containers
>>>>recently and was wondering if there are any existing recipes on how to setup
>>>>a kernel environment in containers. Google hasn't been helpful so far (or
>>>>maybe I'm not searching properly).
>>>>
>>>>I've used VMs for dev in past (Qemu, uml etc.), but looks like it may be
>>>>interesting to have it in containers. Given that they share they same OS image
>>>>as host, I'm not sure if its possible without making the host OS crash.
>>>>
>>>>Any suggestions.
>>>>
>>>>Thanks -
>>>>Manish
>>>
>>> I'm not sure what your goal is here, but it sounds to me like you might want to be googling for "linux namespaces".
>>
>> I'm sorry. I see that my previous mail had a key word "development"
>> missing. What I was trying to find out was that is it possible to
>> setup and use linux containers/cgroups to do kernel development.
>> Things like writing and test kernel modules, debugging kernel,
>> attaching gdb etc. etc. which normally require Qemu, busybox or other
>> VM techniques since containers are much lightweight and if anyone has
>> recipes for that setup to do development without crashing the host OS.
>>
>> Any hints appreciated. I looked for "linux namespaces" but it doesn't
>> give me what I want.
>>
>
> I have no first hand experience, but I don't think containers have the
> flexibility you need.  Docker in particular shares the kernel with the
> host OS as far as I know, so it would not be of any value that I can
> see.
>
> I think a unikernel may be what you are looking for:
>
> http://www.linux.com/news/enterprise/cloud-computing/821243-unikernel-use-cases-containers
>
> My understanding is that with a unikernel you can move targeted
> portions of the Hypervisor kernel up into the unikernel.  Thus if you
> wanted to work on a network driver, you could implement it in a
> unikernel.  Then if it blew up you would fall back to the hypervisor
> level, kill the unikernel and try again.
>
> The Rump kernel (a unikernel) in particular might be a good option:
>
> ==
> Rump Kernels —  provide free, portable, componentized, kernel quality
> drivers such as file systems, POSIX system call handlers, PCI device
> drivers, a SCSI protocol stack, virtio and a TCP/IP stack. These
> drivers may be integrated into existing systems, or run as stand-alone
> unikernels on cloud hypervisors and embedded systems.
> ==
>
> I have no first hand experience with the Rump Kernel, so I don't know
> if it would work as a way to do linux kernel development or not.  It
> certainly seems like a great environment for generic kernel
> development.

Thanks a lot GregF/GregKH,

  That's what I suspected, that it might not be possible because of
both sharing the same OS. I'll have a look at Rump Kernels and see how
far it goes. Thanks for the pointers !

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies




[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux