Posts Tagged ‘UNIX’

I watch mainly Linux people on YouTube.  I have even played with the idea of starting a YouTube channel to do videos concerning Linux.  Recently, one person I watched has run up against the driver wall of Linux.  By this I mean the inability of Linux to match driver quality and compatibility for hardware.  Linux has this trouble for a few reasons, first, the desktop computer world is Microsoft centric.  Now I know there is the idea that the concept of desktop computers are dead.  I guess this means laptops as well.  I am not sure about that.  Businesses still need desktops to produce documents for communication and presentations.  I would hate to have to produce a PowerPoint presentation all on a tablet.  I don’t see Microsoft allowing Apple total access to MSOffice software for their digital devices.

This has caused others repeating hard feelings about Linux and Linux developers in general.  The developers that build the basic components for Linux are mostly rooted in the non-proprietary software camp.  If you research even FOSS and Open Source camps have some fundamentally different views.  Linux has worked up hill for years.  Hardware people have consistently refused to make good drivers for Linux.  I wonder how much the FOSS and Open Source developers have not cooperated with these hardware people.  I think Ubuntu and Linux Mint could offset that if they worked with these hardware companies.  That might in the end be the biggest problem with Linux.  While I have been a Ubuntu avoider, I must say they have brought in some very good things to Linux.  I now wonder if they could be a solution to drivers and other problems.

Linux is not MS Windows!!!! It never will be.  It was, and is, being developed with an entirely different philosophy.  A different goal.  I heard one person say Linux is less stable than MS Windows.  That is an unsupportable argument.  Linux is very stable.  It just has crappy drivers and some of the software pieces for Linux get bogged down due to roll over in their staff.  You see, most of the developers for Linux are doing it in their spare time and do it for the Love of the project.  Linux has some bugs and holes.  Some of the desktop environments need tightening up in a big way.  Some distros just need to close shop and join other distros so that we get a higher quality from each of the distros left.  Linux also requires some knowledge on the users part.  MSWindows wants users to just point and click.  Linux is a system that generally requires the user to know some information and some technical knowledge.  That is how it is….

Anyway. . . . Linux is what it is. . . .  a project designed to be free and the software open for all to mess with, to collaborate on and do something new.  Linux is freedom from proprietary ideas and monitization.  Those who come into Linux thinking it has no problems have been fooled.  For all those computer users who just want to point and click.  Stay with MSWindows or Apple.  If you want to grow in your technical knowledge, then come to Linux.

It was the best of times, it was the worst of times . . .  I never actually read the book “A Tale of Two Cities” by Charles Dickens, but a book covering these three kernels and how they interrelate would be fascinating.  A few years ago I heard of the Hurd, and I wanted to see what was up today. (Yes, I couldn’t resist that play on words.)  I then decided to see how BSD and its derivatives related to GNU/Linux.  Here’s the tale . . .

It all started with Bell Lab’s product called UNIX, which stands for Uniplexed Information and Computing Service.  The unique trait with UNIX is that you got the source code for the OS as well as other things.  That way you could modify it and recompile it if you wanted.  The compiler for C was the new thing because for the first time, source code was portable because you just needed the pcode to assembler part of the compiler in order to take source code written in C to compile for your machine.  A group from the University of California, at Berkeley got really aggressive and heavily modified and ‘fixed’ some issues they saw with UNIX.  In fact, their fixes and adjustments to UNIX were so popular, they made it available.  Computer Scientists really studied the code and the methodology behind this new and powerful system.  UNIX was made available to Universities at a lower cost so that people would be hitting the market trained to operate and maintain the UNIX system.

About the same time, a new computer innovation hit, the 16 bit home computer.  Computer Scientists wondered if they could bring the UNIX system to the PC.  There were many in Berkeley, who tried this kind of project.  They called themselves Berkeley Software Distribution (BSD).  Many used the letters BSD (Berkeley Software Distribution) in their project’s name.  The Berkeley modifications to UNIX had the letters BSD associated with it.  Soon AT&T sued the Berkeley group because they were worried about their intellectual property rights and wanted to make sure Berkeley wasn’t taking code that was constructed by AT&T and using for their own purposes.  This lawsuit put a hold on everything that had BSD in its name.

A man by the name of Richard Stallman announced on Usenet the founding of a project he called GNU.  It stood for Gnu is Not Unix.  Its goal was to make a version of Unix, following Open Source standards.  It was, as I understand it, to be in the spirit of Unix, but not a dedicated port of Unix.

What is a kernel? As I currently understand it, it is the program that interfaces with the physical hardware and the applications that a user wants to run.  BASH, Firefox, apt-get, and almost all commands from the terminal, as well as your desktop apps are just that apps that the kernel runs in coordination with other things.  All operating systems need a kernel.  Kernels are designed with a certain philosophy in mind.  One type is a monolithic structure where everything is together.  Another type is a distributed kernel where the different tasks are run concurrently and they communicate with each other.  This, from my understanding, is called a micro kernel structure.  Unix, from Bell Labs, has a micro kernel structure.   Back to our story . . .

Stallman wanted a micro kernel structure due to some perceived advantages.  Just before the GNU project was announced.  One of the BSD projects, which became known as FreeBSD was coming along nicely.  The FreeBSD OS is a ‘port’ of Unix without ripping off AT&T’s intellectual’s rights.  FreeBSD is developed and maintained as an entity.  Stallman’s GNU project was to be a community effort.  This means there would be many maintainers and developers.  This is one of the BIG differences between GNU and FreeBSD projects.  Stallman was tempted to choose the BSD kernel, but due to the lawsuit, he stayed clear and started the Hurd kernel project which would be the center of the GNU operating system he proposed.   HURD stands for HIRD of Unix-Replacing Daemons and HIRD stands for HURD of Interfaces Representing Depth.

Somewhere in Finland, a young man who had been captivated by assembly programming on his VIC-20 computer, began a quest for this new computer, a PC running an Intel 386 processor.  He also had discovered a work called Minix.  This is another work where the UNIX foundation and design was ported to a PC.  Using an open standard, he began work on a kernel, not because of Stallman’s announcement  as I understand, but because it was in his nature to write a kernel because he was enamored with assembly programming.  His announcement totally stunned the world and drew the focus off of the HURD project.

Having a working kernel, even though it is monolithic in nature, was better than no kernel, and the dream of getting the GNU system running was very intoxicating.  So intoxicating that the GNU project became known as Linux.  Now this name change has been disturbing to Mr. Stallman.  That is why I refer to it as GNU/Linux rather than Linux.  If HURD gets to a workable state, which I understand it is to an extent, then the releases are called GNU/HURD.  Debian Project is one of the entities working on the HURD kernel.  In a very short time, Linus’ kernel was turned into a working kernel and the GNU/Linux operating system rose to life.  The HURD project has suffered from a lack of support due to most people not really caring about the architecture of the kernel in their computer’s operating system.  I believe very few people even care about such heady and intense considerations.  I also don’t think most people care about the Open Source movement or the Free Software Foundation and the philosophy behind them.  They just like the free OS and apps.

I wonder what would have happened if Mr. Stallman had chosen the BSD kernel?  What would be different today?  Would we even know about Linus Torvalds?  What do you think?  Give me some feedback.