I’m going to give a presentation on Microsoft PowerShell in the near future. As an introduction to that I want to explain in short what a kernel and what a shell is.
Now I know a shell is a piece of software that allows you to communicate with the kernel and have it do stuff. For example Windows cmd.exe is a (command line) shell. However the Windows GUI itself is a (graphical) shell because it is also used to tell the kernel to do the things you want it to.
After explaining what a shell is I want to clarify how it is different from an application but I’m kind of stuk here. Doesn’t an application (for example Word or Serious Sam) itself tell the kernel to ‘do stuff’ as well? How would you explain the difference between an application or a shell (or do you consider an application a shell)?
This image would explain something. It’s not much in details, but would help in basic understanding. please see
Also to elaborate,
applicationsare high level components, that are built using api, system librairies, there is kind of layer betweenapplicationlayer and thekernellayer.Reference Link
Hope this helps.