Linux.com

Home Linux Community Forums New to Linux Getting Started with Linux Source code - compiler - hardware - kernel OS

Source code - compiler - hardware - kernel OS

Link to this post 20 Dec 12

I apologize in advance for the "simple" questions I'm going to do and I hope do not irritate the experts so please have patience .... even I read linux's articles on the internet I'm lost about this concepts ....

How you have realised I am just a beginner and I would like to get myself in the linux world ... but .... first to try with the command line, etc. ... I was trying to understand what happens when I install a Distro via CD. I read that the kernal [core] that is created comes from the interaction of sources code and the work of the compiler that fits them to the hardware present on the machine .... Is it correct?

I was wondering, what really happens when I insert the CD and install a distro? What files are in the cd?

Aware that it is very complicated >> How can I create a custom distro's cd for a server?

What means compile a program?

thanks in advance

Link to this post 22 Dec 12

The kernel is a compiled collection of drivers that control how your hardware interacts and how software is to interact with the hardware. When you load a LiveCD it loads the kernel and all included applications just as it would in a physical installations. Now, when you install the distro, it installed the kernel, libraries and applications in there workable forms which may or may not be compiled (based upon the development core). Some distros ship the source code in the installation disks, but many do not as the requirement is to have it available and accessible and they keep it online until you download it.

Compiling a program is when you use a code compiler to convert the human-readable source code to the machine readable binary instructions.

Are you wanting to just build a liveCD or are you truly looking at having a custom operating system with specific components installed on your server(s)?

Link to this post 23 Dec 12

Many Thanks ...
No... I am not interested in a Live cd. I just would like to go in deep about a distro installation. For example when I install a windows OS after I need the drivers. With a linux distro it seems that I don't need to do that. For this reason I was thinking that maybe it was possible thanks to a compiler present on the distro install CD...I was wrong!

Yes, I am also looking at how can I build a custom operating system with specific components installed on a server. I know it is very very complicate matter.... :)

Thanks

Link to this post 23 Dec 12

The key difference between windows and Linux kernels installations is that the Linux kernel contains nearly every device driver that is needed and the windows kernel contains basic drivers which required the users to locate and install the more advanced drivers themselves.

Most Linux distros ship their installation kernel with most device drivers installed to simplify setup, however you can always customer compile or recompile the installed kernel to include only the drivers that are specific to you system. The same can be said for the installed applications, you can always trim a distro down to the bare elements and install apps that you need.

An example is that I took my cr-48 chromebook and installed a minimal slackware base, recompiled the kernel for necessary drivers, setup the environment to be CLI only and installed specific network services that I want active. Now my cr-48 is the time, dns and proxy server for my home network. Now the device runs on an average load of .2%, has an extended battery life and has among the best availability of any server you can find.

If you wish to learn how a distro is built and truly make a custom distro you can always try Linux From Scratch which will make you build everything from the source code and choose only the software that you want.

Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Join / Linux Training / Board