Slashdot Mirror


Calling for Smaller Kernel Sources?

FrozedSolid asks: "I can understand that the kernel contains many drivers and support for a lot of platforms, but the fact that the full kernel download can amount to 32mb doesn't make it any easier to download with a 56k modem. Kernel patches are nice, but obviously only apply when you have access to an entire kernel tree beforehand. Is there a way you can download a leaner linux kernel source? Is there a place that carries sources for x86 only or possibly sources without some of the less popular drivers?"

7 of 69 comments (clear)

  1. Actually, by GreyWolf3000 · · Score: 5, Interesting
    32MB is not too much to ask. On 56k, that amounts to like a few hours of download. Let's assume 5K/s (I used to get 2 in Windows, but 7 is Linux for some reason). That's 300K/min. That's 1 MB every 3.5 minutes. That's 32MB in ~120 minutes, or 2 hours.

    If you haven't gotten cable, and you're using Linux, the distros themselves are at a magnitude greater in size; I doubt that kernel sources are the real problem.

    --
    Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    1. Re:Actually, by King+of+the+World · · Score: 4, Funny
      You do realise that you're turning your back on the potentially brilliant kernel developers who are physically unable to leave a download going overnight and start "hacking" the next day, don't you?!?

      What sane person would ask such a thing.

  2. Part already answered by gmhowell · · Score: 4, Informative

    Part of this has already been answered. If you just pick x86 (or PPC or Alpha etc.) the size does not change that much. The vast majority of the kernel is not architecture specific. That's a good thing!

    I don't know of any sites, but let me say a few things. First, your distro probably has a binary package with almost everything either compiled in or a module. Barring that, when I used to be stuck on dialup, I'd get the most recent kernel and then download the patch each time. It was a pain in the butt, but not as bad as downloading the full sources each time.

    --
    Jesus was all right but his disciples were thick and ordinary. -John Lennon
  3. RSYNC!!! by Jeremiah+Cornelius · · Score: 5, Informative
    You need rsync.

    It was devised to combat just the problem you cite.

    rsync://rsync.kernel.org/pub/[wherever you want to go]

    Thank you, TRIDGE!

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  4. Online make menuconfig by cybermace5 · · Score: 4, Interesting

    Seems like a person could set up a few webservers, let people select kernel configuration options, and send the much smaller bzImage (and compiled modules) through email. Sure, the size would vary wildly based on how many modules were selected, the architechture, etc., but on average I'd say it would be much smaller.

    The benefit is less bandwidth wasted for people downloading 35 megs of source to recompile a 900K kernel image. The disadvantage is processor time required, well, how many Athlons do you have to buy to serve the same number of kernels per day, and how does it compare to bandwidth costs?

    Yes, *I* would like to have the sources to myself, I have a few source files I need to tweak to get my machine working properly. But many people just have the burned CD from the friend of a friend, and would appreciate a recent kernel without a mammoth download.

    Maybe someone's already doing this, I don't know.

    --
    ...
    1. Re:Online make menuconfig by FueledByRamen · · Score: 5, Interesting

      Hey, this does sound interesting. I have a few spare computers around and a little knowledge of PERL... I think that I'll look into this tomorrow. That would be _really_ neat. If I do manage to get something working, I (of course) will insure that it won't remain that way for long by posting it back up here...

      It really shouldn't be too hard. I've been staring at your post thinking for a bit, and the best way to do it that I can think of is to read in the config template file from the kernel source tree (have several selectable versions) and generate a huge page full of radio-select buttons. Once that is submitted, an MD5 hash is applied to the generated config file. If it matches an existing package (unlikely at best), simply serve that up. Otherwise, make a new build tree named "builds/$VERSION/$MDSUM" and copy the config file into it. Build the kernel, tar.gz the resulting modules and kernel image, and email the links to the person.

      This would require quite a bit of CPU horsepower, but it would make for a nice, small kernel download and a sort of set-and-forget build. Set the options and press the button on your lunch break, and have the link sitting in your inbox when you get home (unless it's slashdotted, in which case I'll come home to a hole melted in my floor where a server and accompanying cable modem used to be).

      --
      Every cloud has a silver lining (except for the mushroom shaped ones, which have a lining of Iridium & Strontium 90)
  5. Seek bandwidth elsewhere. by toybuilder · · Score: 5, Insightful

    Never under-estimate the bandwidth of a plane full of CD's... ...or the CD-RW drive at your nearest Internet Cafe.