Finding an opensource GNU Unix kernel to install from scratch for low memory systems?
Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Finding an opensource GNU Unix kernel to install from scratch for low memory systems?
Hello,
Quote:
"Here I start really from zero operating system. Hopefully opensource kernels and source will give me light."
First, I am glad to post. I am look for an opensource Unix kernel for low memory systems.
Linux is too large to compile. FreeBSD, Netbsd, Openbsd are not intended for scratch. GNU Hurd is not for me. FreeDOS, no no. Secondly, I would like to find a kernel which is not LINUX, which is not Netbsd, not Openbsd, and not FreeBSD.
I would like to install it directly from scratch, using a small C compiler. I would like to unroll it only from source. I don't want Linux, but something else, if the kernel is small, reliable and opensource. In other words, the kernel shall be C programmed, available in a tarball, and it shall be GNU.
I would be happy to boot for instance an SD, USB-pendrive,... get a small system, and to run a compiler to compile GRUB (512 bytes) boot, the holy kernel, the binaries, and to compile the small shell interpreter.
Would you know such a dreamt kernel or Unix system?
Thank you for your help !
Last edited by bsdrootkit; 12-26-2017 at 01:45 AM.
You seem to be confusing some things in your post. You want "an opensource Unix kernel" but say "Linux is too large to compile" In what sense is it "too large"?
You also say "the kernel shall be C programmed, available in a tarball, and it shall be GNU" after having just said "GNU Hurd is not for me."
GNU Hurd is about your best option if you are opposed to linux.
You seem to be confusing some things in your post. You want "an opensource Unix kernel" but say "Linux is too large to compile" In what sense is it "too large"?
You also say "the kernel shall be C programmed, available in a tarball, and it shall be GNU" after having just said "GNU Hurd is not for me."
GNU Hurd is about your best option if you are opposed to linux.
The Linux kernel takes too long to compile (meaning of too large). I would dream if it could take few minutes only (<2-3 min) to be compiled.
FreeBSD takes at least 1GB of space.
Without X: 1.1G disk, 64M RAM, Pentium II or newer.
With X: 6G disk, 256M RAM, Pentium II or newer.
With X plus hungry desktop environment: 12G disk, 512M RAM, Pentium 4 or newer.
I would have a dream to have a minimum installation using less than 300Mb (kernel + unix directories + init + SH/CSH shell).
Sorry my mistake concerning GNU. I meant that I want Opensource. I meant that I would like Opensource /Free /... i.e. with source code of kernel which would be freely available (public license).
Low memory systems: about 500M or less if possible.
Low harddisk space : 4 GB only (max) !!
Last edited by bsdrootkit; 12-26-2017 at 06:31 AM.
Linux can be compiled for much smaller image than you have in your desktop. It requires configuring the kernel to fit your system/needs. This is routinely done on ARM and other embedded platforms. 500MB of memory and 4GB is a standard ARM embedded system. You can look at the Yocto project to have a way to compile a configurable Linux distro for your platform.
Linux can be compiled for much smaller image than you have in your desktop. It requires configuring the kernel to fit your system/needs. This is routinely done on ARM and other embedded platforms. 500MB of memory and 4GB is a standard ARM embedded system. You can look at the Yocto project to have a way to compile a configurable Linux distro for your platform.
The kernel of Linux takes too much time to compile. I would like to find a small portable kernel (UNIX-like).
you need to configure your kernel before build and you can exclude every piece (driver) you do not need. portable means it will "almost" work everywhere, so will contain "almost" everything imaginable.
If you want to speed up the build process you need to optimize it for your own system.
you need to configure your kernel before build and you can exclude every piece (driver) you do not need. portable means it will "almost" work everywhere, so will contain "almost" everything imaginable.
If you want to speed up the build process you need to optimize it for your own system.
I am not so much interested by Linux kernel, because of numerous reasons. Alternative to Linux would be perfect.
maybe you want to look at micro OSs like kolibri, minix...
Thank you. I had a look.
- Kolibri isn't that much Unix like (architectures?).
- Minix looks to me a sort of Linux system, with X11, startx,...
Further, I looked at :
- RISC OS (Cambridge origin), good for ARM, Beagle...
- HAIKU OS (BeOS Origin), excellent for desktop, but it does only support x86-32.
Linux kernel has a variable build time and size, check out tiny core, you can get it as small as 10mb or 16mb for gui version. http://tinycorelinux.net
Quote:
The Core Project is a highly modular based system with community build extensions.
It starts with a recent Linux kernel, vmlinuz, and our root filesystem and start-up scripts packaged with a basic set of kernel modules in core.gz. Core (11MB) is simply the kernel + core.gz - this is the foundation for user created desktops, servers, or appliances. TinyCore is Core + Xvesa.tcz + Xprogs.tcz + aterm.tcz + fltk-1.3.tcz + flwm.tcz + wbar.tcz
TinyCore becomes simply an example of what the Core Project can produce, an 16MB FLTK/FLWM desktop.
CorePlus ofers a simple way to get started using the Core philosophy with its included community packaged extensions enabling easy embedded frugal or pendrive installation of the user's choice of supported desktop, while maintaining the Core principal of mounted extensions with full package management.
It is not a complete desktop nor is all hardware completely supported. It represents only the core needed to boot into a very minimal X desktop typically with wired internet access.
The user has complete control over which applications and/or additional hardware to have supported, be it for a desktop, a netbook, an appliance, or server, selectable by the user by installing additional applications from online repositories, or easily compiling most anything you desire using tools provided.
However you seem set against Linux so check out these... And please announce your release when you get done
Linux kernel has a variable build time and size, check out tiny core, you can get it as small as 10mb or 16mb for gui version. http://tinycorelinux.net
However you seem set against Linux so check out these... And please announce your release when you get done
To build own kernel is likely not necessary since there are already many opensource OSes.
Linux is not my favorite OS. Sorry. TinyCore Linux is not intended to be built from scratch. Besides, it is Linux. Haiku is mostly for x86. Haiku is not yet mature enough for various architectures: MIPS, m86k, ARM, ...
You keep referring to linux as if it is an Operating System. Linux IS NOT an Operating System, it is ONLY A KERNEL. The Operating System of most any "Linux" distro is, GNU with Linux as the kernel
To build own kernel is likely not necessary since there are already many opensource OSes.
Linux is not my favorite OS. Sorry. TinyCore Linux is not intended to be built from scratch. Besides, it is Linux. Haiku is mostly for x86. Haiku is not yet mature enough for various architectures: MIPS, m86k, ARM, ...
You keep asking for things and shooting down solutions.
"To build own kernel is likely not necessary" when specifically asking the ability "to install it directly from scratch, using a small C compiler. I would like to unroll it only from source." is entirely contradictory and makes no sense whatsoever.
You also say "The kernel of Linux takes too much time to compile" when there are entire "linux" distros under 10mb! Unless you are including every possible driver and compiling on a very resource limited system, your claim makes no sense!
The statement "Haiku is not yet mature enough for various architectures: MIPS, m86k, ARM, ..." is irrelevant. (BTW, HAIKU supports IA-32, ARM, and x86-64) If it supports your architecture, that's all you need! The ability to support architectures you're not running benefits you in no way whatsoever!
So, that being said, what is your opposition to linux?
Last edited by TheEzekielProject; 12-27-2017 at 12:39 AM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.