On 1/6/21 10:24 PM, Paul via blfs-support wrote:
I am interested in the idea of LFS to better understand Unix/Linux. I
have been using Linux (Ubuntu/Debian/Arch) as my desktop for several
years and it bothers me that I still don't understand A LOT about how it
works. I like the idea of being able to simplify to the point where I
understand the whole thing. However, looking through some of the LFS
book (I haven't actually done it) I am concerned that the final system
may still not be simplified to the point where I will have time to
understand it all.
Question 1: If I thoughtfully work through LFS, will I understand what
every file on my system is for and what every process in userspace is
doing?
Probably not.At least not without a lot of work. For instance there are
three packages: gcc, glibc, and binutils that install a total of about
5000 files. Understanding every one is not practical.
That said, a base LFS system is much more lightweight than any
commercial distro.
Question 2: Is it possible to run a system using only the kernel, grub
(or other bootloader), maybe a compiler/libc if I need it, and a single
executible loaded by the kernel that I would write in C? Kind of like a
"hello world" exercise that would turn my computer into a single
text-based game, a super super super simple shell, or literally printing
"hello world" on the monitor?
You can't get down to quite that few packages. but certainly you could
do that from a base LFS system. For what you want would require bash
and gcc and vim, but those require a lot of support packages, not the
least of which include glibc, and the kernel. Building those packages
requires a lot of support packages like sed, gawk, grep, binutils,
bison, make, tar, etc.
Building LFS will help you understand how all these tools and libraries
interact, but understanding in detail everything is probably beyond any
individual.
-- Bruce
--
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page