Skip to main content

What Is Linux and Why Should You Learn It




What does a photo of corn kernels have to do with Linux?  Typically when I hear the word kernel, I think of a kernel of corn.  When you are talking about Linux however, you are talking about the kernel of the system.  In order to understand what that means, we need to first understand what a kernel is.   

A kernel is the central or most important part of something.  When we are talking about technology, the kernel is a core component of a computer's operating system.  The kernel acts like a bridge and manager between the hardware and the software of that operating system.  It runs behind the scene and cannot be seen.  It directs, controls, monitors, and manages a system.


Linux is the central controller of everything that happens on the computer.  It is loaded when the computer is booted and it stays running until the computer is shut down.  It manages every aspect of the functioning system while that system is on.

What kind of systems is Linux on?  Embeded devices, like TV's, desktops, and servers (like a web server, email server, dns server or a file server). 

How did Linux get it's start? 

Linux got its start from Linus Torvalds in 1991.  He took a UNIX like operating system and created his own OS kernel....Linux.  The Linux name is a combination of Linus's name and UNIX.  While Linux is not UNIX, it is UNIX-like.  

Prior to the time that Linux was being developed by Linus Torvalds, the GNU Project was being created by Richard Stallman.  The GNU Project was effective at building tools that go along with a UNIX-like OS.  Since that source was freely available and the tools, such as the editors, compilers, and user interfaces that make a kernel usable were some of the tools the GNU Project built, Linux programmers were able to combine the tools from GNU with Linux to make a complete OS (all of this information is from the NetDevGroup Linux Essentials course - Chapter 1). 

Linux is written in the C language and is Open Source (Open Source means that you have the right to obtain the software source code and to modify it for your own use).  The C programming language was created at AT&T and provides the ability for portable code.  

Linux has Distributions.  Distribution refers to the kernel tools, packages, and suite of applications that come bundled together.  Examples include Debian, RedHat, and Slackware.  To learn more about Linux Distributions, goto the NetDevGroup Linux Essentials course.

Linux embraces the Command Line Interface (CLI).  Instead of clicking icons and using windows for commands like most people do, the user types the commands in the Command Line Interface.  In this way, the user is telling the computer what to do.  Many commands will have to be memorized but once you learn them, working in the CLI can be fun. It is also functional.  It gives you the ability to be productive on ANY distribution of Linux.  


        Here is an actual command on my Command Line Interface for running an xmllint command on a file I was working on.


In the above photo, you can see a command I gave in my CLI for a file I was working on.  Linux receives this command and 'behind the scenes' makes sure that what I am asking for is executed.  Remember, Linux is the controller/manager/bridge between the software and hardware, including the files (among other things).  



Why should you learn Linux?

Linux is everywhere. Knowing Linux will provide a foundation of many careers and skill-based professions for you.  Linux implementations can be found in embedded systems (like planes, phones, and cars), servers, desktops, and the majority of cloud infrastructures.

There are a few in demand career opportunities that utilize Linux.   A Linux System Admin, Cybersecurity, and a Full-Stack developer are just a few career opportunities that utilize Linux.

Stay tuned as I dive deeper into Linux....

(credit to:  NetDevGroup Linux Essentials Course and Professor Aragon from SDCCD Linux Essentials Course Notes).


















Comments

Popular posts from this blog

XPATH and XPATH Expressions In XMLLINT

XPATH And XPATH Expressions Earlier, I told you about xmllint and xmllint for html files .  Let's say you just want to parse the <span> tags within your html file or just your <span lang="el"> tags? Enter:  Xpath. Xpath is yet another option available within the xmllint language. Remember, an Xpath is used to navigate through elements and attributes in xml and html documents.  Xpath uses Xpath Expressions to select nodes or node sets within a document. Example 1 .  Looking for all of the <span> tags within an html document. xmllint -- html -- xpath " // span" StedmanLesson10.html xmllint = This tells the command line that we are going to be using the xmllint language. space = because we always have space in between commands -- = Remember, these are the two hyphen-minus characters that we need to tell the command line that we are going to use an xmllint option. html = This is the xmllint option we want to

Back To The Basics

Click photo above to see photo clearly  It's Been A LOOONG Minute since I have coded!!   Even so, I decided to give JavaScript another try.  I always seem to do good and then when I get to this one area, I always seem to hit a brick wall.  Well....nothing like getting back up and trying again right?   I decided to try Rithm School's online JavaScript Fundamentals FREE course .  I have never joined their school but their free courses tend to explain things in a way my brain understands it.  💁 To let you know how much I have forgotten in the coding world, I couldn't even remember how to write the basic commands for an HTML document! Yesterday I started the fundamentals free course and I am so glad that I did.  Because of time, I only made it through the JavaScript History and Setup chapter, but that chapter was enough to get my memory flowing again!   It started to feel familiar and I quickly remembered why I enjoyed coding so much.  Yesterday and this morning, I just erased

SCP: Secure Copy Protocol

SCP = Secure Copy Protocol.  What is it and why is it important?   SCP provides a secure way to transfer files from one computer to another. For the project that I'm working on, I needed to SCP (send a copy) the XML files, as well as the image files, from my computer to my EC2 Instance (my web server).  Once done,  my teacher was be able to view my work via my website. Here are the steps to do this: 1.  Open two command windows (the program for my computer is called Terminal). 2.  Let's say the file I want to send is called "SallysFirstDate.xml" and it is located in the "tomy" folder.  Here is where that file lives: /Documents/path/tomy/SallysFirstDate.xml I need to first issue the command to "change directory"(cd) through each folder until I reach the folder that my file is located in.   It would look like this: cd /Documents THEN I need to "cd" again into the "path" folder: cd path THEN I need to "c