Is Linux an OS, a kernel or both? (Linux vs GNU/Linux)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey there my name's Gary Simms and this is Gary explains that I recently did a video on UNIX versus Linux and that proved me to be quite a popular video so thank you for everybody that's been watching that and sharing it on social media but I've had some comment underneath the video where people are saying I shouldn't call it Linux I should call it the gnu / linux or ganoub + Linux because Linux is just a kernel so I want to ask the question today is Linux a kernel or an operating system or is it both or another way I could say it is should you call it Linux organy / Linux well whichever way you put the question please let me explain ok so I want to tackle this in two ways first we look at the English language about how we use the English language and then let's look at some of the technical things to do with Linux and to do with the ganoub project and so on now one of these strengths and maybe one of the weaknesses of the English language is you can turn nouns into verbs for example you might say I'm going to Google something and that's a verb to Google but actually Google is a company it's a noun what we really means I could to search for something using Google's search engine now of course English professors probably hate this kind of thing but we do it all the time please pass me a Kleenex actually what you mean is can you please pass me a paper tissue you might say I'm going to go and play ping pong well actually it's table tennis and ping pong is a brand of table tennis products you might say I'm gonna use a sharpie to write something or really Sharpie is a permanent marker and permanent markers were invented before the Sharpie brand came out the real classy of course is Xerox I'm going to Xerox something using as a verb to Xerox was actually what you means I'm going to use a photocopier and there are lots more examples as post-it notes and there's a 4 micron the styrofoam and the list goes on and on we are so used to taking names and making them mean more than what they really mean and this is also true with a thinner so that we haven't turned it into a verb to Linux what we have done is extended the name of Linux the kernel that was originally written by Linus Torvalds and we've used it to incorporate a whole bunch of Linux distributions that include various components including the Linux kernel and that's what I love about the English language it is so rubber it is so flexible that we can do that and of course because it is spoken in so many nations across the world including the United Kingdom and America and Australia and Canada and so on but actually we do get these different nuances and variations coming up and actually it makes the language alive and it makes a language flexible and it makes a language relevant for today and to call the operating system Linux not good news flexion it is perfectly acceptable and there's not a problem with it now that was the language side of things but what about the technical side of things what let's ask ourselves a few questions first of all what is an operating system now the Oxford English Dictionary defines an operators is mostly low-level software that supports a computer's basic functions such as scheduling tasks and controlling peripherals so if you take that definition then the lunettes kernel is an operating system and the Encyclopedia Britannica defines an operating system as this it's a program that manages a computer's resources especially the allocation of those resources among other programs typical resources include the central processing unit computer memory file storage input/output devices and network connections and again if you use that definition then the Linux kernel is an operating system so when you say I'm using Linux that's perfectly acceptable according to how the Encyclopedia Britannica defines an operating system maybe we shouldn't be looking to dictionaries to deflate the definitions but here's a book that really is the most important book about operating system design called operating systems internals and design principles by William Stallings now if you do any kind of computer science course at university this book is a must read now stalling it defines an operating system like this an operating system uses the hardware resources of one or more processors to provide a set of services to system users the OS also manages memory and i/o devices on behalf of its users so this is the first time where we get the idea of a user of an operating system the operating system is the software and there are people that use the operating system to perform certain tasks and that does imply a user interface a way in which the user interacts with the operating system now storing this goes on further to say really there are three ways that you should look at an operating system one is from the users point of view one is from the OSS point of view and one is from an upgrade point of view now when you look at it from a user's point of view there has to be a set of services and programs that are provided to the user that implies a user interface whether that's a command line or it's got something with a mouse and Windows but it's a button you press on some kind of embedded system but there has to be a way of interacting with users and the second thing is the OS is responsible for all those resource allocations its main job is to actually make sure that everything can happen and there's enough space and there's nothing memory there's enough scheduling time to do all those things and the third key characteristic of an operating system is that it can be upgraded to support new hardware new services and of course to fix bugs so when you look at the Linux kernel is it an operating system in terms of its resource manager absolutely it is is it an operating system in terms of that it can be upgraded to support new services and bug fixes absolutely it is is it an operating some in terms of that it provides a native user interface no it isn't so out of the three definitions given by Stallings two of them are fulfilled by the Linux kernel and that leads us onto the idea of this user interface or user land tools user space tools and where the canoe project comes into this is that it provides some user land tools so there can be some interaction between the user and the kernel so for example you get GCC which is the compiler there's the C runtime library provided by canoe and most popular or most visible of course is the bash shell that shell you get when you open up a command line window on many Linux distributions and it's true to say without those interacting with a Linux kernel would be very difficult but here's the point you see there are lots and lots of ways of doing those same things without using a new tool for example if you don't want to use gnome you can use KDE that's a completely different project that isn't so provided by the canoe foundation if you don't want to use gee see well I'm now a popular one today is the LLVM or the seal and compiler which is a completely separate thing to GCC even the kernel itself has a different runtime library it doesn't use the canoe runtime library so that only use for when you're running user land programs for example if we install Alpine Linux which is a Linux distribution design for embedded systems you won't find any canoe tools whatsoever it uses busybox as its shell which doesn't come from canoe it uses open RC as its init process which doesn't come from canoe and it uses UC Lipsy as its c runtime library and that doesn't come from canoe now specifically of course this is designed for embedded systems but it is a fully working Linux distribution using a Linux kernel for embedded systems but it doesn't use ganoub so you can't call it goo news / Linux it's Linux in an embodied environment using tools from all over the place and then if you expand the sphere of what is an OS even wider to include web servers and databases and things like that and of course you've got PHP as a scripting language got MySQL as a database you've got to have a patchi's web server as the web server and none of these things come from the canoe foundations and then of course you can look at Google they provide us with Android I've got a whole video which you can find up here about is Android really just Linux and then of course they're things like chrome and this Firefox and there's OpenOffice and all these tools that we use everyday that make up part of a modern operating system to be fully usable on a desktop or on a laptop okay and they don't use very many good new tools they use some absolutely they do but to try to say that it's exclusively a new thing really is just for misinformation it's just not true so where does this idea of good news slash units come from well surprise surprise it cuz it comes from the good new project itself because they're the ones that want to try to push this idea and they doing it for two main reasons so the first reason is is that the new project has actually taken all the ideas from the UNIX philosophy and made them their own and therefore they say any system that's using their tools with a kernel like the Linux kernel is a canoe system it's not really it's a unix-like system and I don't think it's fair that the canoe project can steal everything to say if it looks like you it must be new and just depends on what kernel you're using that's absolutely not true at all and the second argument is if you use the word good news / Linux then actually or reminding people about free software and that is slightly a valid point because Linux is itself licensed under the GNU Public License the GPL and so if you are reminding people the new slash Linux you're reminding people that it is free software but beta - is free advertising they want everybody to advertise their project and their foundation by using their name every time we use the word Linnet because of course clearly we just can't do that so here is a quote from Linus himself when he was asked about his opinion on new slash Linux rather than just Linux well I think it's justified but it's justified if you actually make a new distribution of Linux the same and I think Red Hat Linux is fine or SUSE Linux is fine or Debian Linux is fine because if you actually make your own distribution of Linux you get to name it whatever you want but calling general Linux kernel Linux I think is just ridiculous so my call to all of this will you just stop calling it the gnu / linux it's linux ok linux is a kernel but it's also an operating system and it's an operating system in the sense and it's a kernel that ships on everything from raspberry pies to kind of desktop pcs right up to mainframe servers it's used in supercomputers it's the same source code that's used in all those kernels and then built around that there are a set of tools that you need to interact with that kernel and some of those tools come from you know some of those tools come from completely other places so you don't have to just give all of the credit to new we should be giving the credit to everybody and as a kind of a universal name for that whole system we call it Linux it's as simple as that it's not a problem my name is Gary Sims and this is gary explains i really hope you enjoyed this video if you did please do give it a thumbs up also don't forget to subscribe don't forget to share this on social media and you can go down the comments below and tell me what you're thinking i'll read i don't know whether i apply to everything because some people do get quite hot headed about this but if there's some interesting points I'll be happy to reply ok well that's about it I'll see you the next one
Info
Channel: Gary Explains
Views: 98,505
Rating: undefined out of 5
Keywords: Gary Explains, Tech, Explanation, Tutorial, Linux, GNU, GNU/Linux, GCC, Bash, BusyBox, Alpine Linux, Kernel, Operating System, OS, Linus Torvalds
Id: RNeKYjWx-s4
Channel Id: undefined
Length: 11min 7sec (667 seconds)
Published: Mon Jun 04 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.