On Fri, Jan 17, 2020 at 05:01:47PM +0100, Arrigo Triulzi wrote:
I was recently wondering about the origins of Linux,
i.e. Linux Torvalds
doing his MSc and deciding to write Linux (the kernel) for the i386
because Minix did not support the i386 properly.
If I remember correctly from those days as a student, that was not the
starting point for Linux.
He did not 'decide' to write Linux at the start.. He initially didn't even
decide to write an OS at all..
As I recall he actually got an i386 based machine and wanted to explore
the features of that CPU compared to the 286 and the like. To do that he
decided to basically write (if I remember right..) an editor that ran
directly on the hardware and made use of the new i386 features.
But of course that meant he had to do his own filesystem code to read/write
stuff, do some sort of memory management, have some sort of internal
'task' scheduler, etc.
At some point, in hindsight probably crucial, he came to the conclusion that
it was starting to look more like an OS kernel and looked for something
that he could fairly easily run the userland binaries from.
MINIX was the obvious one as a userland 'donor' here. Code AND installation
media were easily available on discs to us in europe at the time, unlike
many of the others out there.
At the time Linus was in Finland and most European universities and colleges
in those days (late 80's start 90's) were very, very wary of any legal
implications even before all the lawsuits. So as a result anything with a
big license text on it (even 'kinda free' ones like BSD) were classed as
'risky' and access kept to a bare minimum.
Add fledgeling internet access that was also highly restricted because the
telco costs in europe were usually massively higher than in the US, so
learning about new stuff was harder and then getting it from 'somewhere'
was often a painful process.
At the time I suspect he just wanted to 'finish' the little i386
learing project with a 'look what I made!' and move on once he did that.
So chasing after some other, more esoteric OS, just wasn't worth the effort
at the time.
However, once he did publish it the MINIX userland basically became the
'incubator' for this new little (monolithic! :P ) kernel broke out when
GCC and slowly the other GNU tools became available so it could self-host.
Somehow Linus at that time found so much fun from getting all these
patches and code to stick into his funny little kernel and watching it
grow and evolve that he stuck with it and didn't move to other projects.
So all in all.. As I remember it, there was never really a decision to 'make
this great new OS!'.. It kinda happened with right place, right time, right
people, etc.
I vaguely remeber that Linus did give such a timeline in an interview once..
Bye, Arno.