WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: How the heck can Core be so tiny?  (Read 1705 times)

Offline nitram

  • Hero Member
  • *****
  • Posts: 1054
How the heck can Core be so tiny?
« on: October 13, 2015, 11:15:26 PM »
Tiny Core is amazing, thanks Robert Shingledecker and those who contribute.

Core's vmlinuz (kernel) is ~3MB, core.gz (base filesystem) ~6MB.
On heavier distibutions, vmlinuz boots through bootloader then main kernel becomes available.

How can Core successfully run on >90% of hardware with only vmlinuz?

Tiny Core and Puppy articles explain the boot process but not how this is possible without the seemingly unnecessarily bloated kernel.
If i had to boot Tiny Core then proceed to install everything as an extra (eg. VGA, USB, keyboard, mouse drivers) then i would understand.

My simple brain thinks like this, someone coded a full-featured browser like Firefox. Another programmer wanted something light and stripped MB of code down to only KB. The stripped version now functions like Links or Dillo, so many stripped features (eg frames, javascript, etc) that browsing becomes limited.

Obviously there's no magic but with Core there is no apparent limitation.

Maybe this will become apparent as i learn more about kernels.

Brief explanations and informative links appreciated. Thanks.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 10957
Re: How the heck can Core be so tiny?
« Reply #1 on: October 14, 2015, 01:37:04 AM »
It's because x86 has many common subsets, and we've chosen to use them, shipping the more elaborate drivers as extensions. There are common standards for VESA resolutions, mouse/keyboard, usb chipsets, etc. allowing a standard driver to work on them all, though perhaps with a limited set of features.

Much of the common distros' 10-40mb kernels are those specialized drivers. And in turn, if you were targeting a platform with limited memory, or just for the heck of it, a kernel built just for that hardware would be even smaller.
The only barriers that can stop you are the ones you create yourself.

Offline nitram

  • Hero Member
  • *****
  • Posts: 1054
Re: How the heck can Core be so tiny?
« Reply #2 on: October 15, 2015, 07:20:32 AM »
Thanks for the explanation. The ultimate modular system. Still think it's amazing TC works as well as it does based on it's size. In regards to limited feature set, although not an advanced user i have not noticed anything plus the extras are available separately.

Smaller custom kernel would be a good learning experience. For now there's no pressing need, everything works and it's already very small. Used core-remaster to repack core.gz a while back. With very little effort it was possible to cut it down to ~1/2 size (3 vs 6mb) by removing obvious drivers my system did not require. Thanks again.

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11178
Re: How the heck can Core be so tiny?
« Reply #3 on: October 15, 2015, 10:16:38 AM »
Hi nitram
As it's currently set up, if you had a hardware failure, you could probably move your drive to another machine and be
able to boot it up. In the process of stripping unneeded items from the kernel or core, your install becomes more and
more specialized to your hardware, possibly limiting that option. Just something to keep in mind.