O Shell é o limite!!!

O tema sobre sistemas operacionais, deveria ser uma base obrigatória para todo e qualquer programador. Acredito que muitos bugs poderiam ser evitados, se a galera se preocupasse um pouco mais em absorver conhecimento sobre esse tema. No artigo anterior, falei sobre o Kernel e hoje vamos falar sobre o Shell. Como algumas pessoas ainda têm dúvidas sobre a diferença entre Kernel e Shell, vou aproveitar esse artigo para sanar essa dúvida a medida que já ensino o que é Shell.

A diferença entre o Kernel e o Shell é que o Kernel é o núcleo do sistema operacional que controla todas as tarefas do sistema, enquanto o Shell é a interface que permite aos usuários se comunicarem com o Kernel

Se não lembrar o que é Kernel, veja o artigo “O que é esse tal de Kernel?”. Voltando para o Shell, a grosso modo, ele é um interpretador de comandos e é a interface entre o usuário e o kernel.

Shell, Kernel, hardware

Literalmente a palavra Shell vem de concha ou casca, e é basicamente isso que o Shell representa. Nos sistemas operacionais o Shell é literalmente a camada mais externa em torno do núcleo do sistema operacional. Por isso o trocadilho no título: O Shell é o limite!!! kkkkk 

Núcleo do Shell

Porque você precisa saber o que é um Shell?

No mundo da programação, você vai desenvolver seus programas em diversos tipos de sistemas operacionais. Dentro os mais comuns você vai utilizar o Windows e Linux. Esse segundo, sua principal característica, é o uso massivo de scripts via Interface de Linha de Comando (CLI). CLI, grave bem essa sigla e o seu significado, porque vai te acompanhar em todos os momentos de sua vida como programador ou programadora.

De uma forma resumida, o CLI é um programa que permite que os usuários digitem comandos de texto dando instruções a um computador para fazer funções específicas. Ou seja, o CLI envia comandos para e o Shell processar algo. Sacou? 

Na prática, existem muitas coisas que o Shell pode processar. Podemos sitar como exemplo:

  • Ele manipula arquivos e diretórios;
  • pode abrir ou fechar programas;
  • Gerencia processos do computador;
  • Executa ações e atividades repetitivas. Etc…

Entre muitos tipos de Shell’s existentes, os mais populares são o Windows Shell (para Windows) e o Bash (para Linux e Mac). Além desses interpretadores via texto, existem as interfaces com recursos gráficos, que são as chamadas interface gráfica de utilizador (GUI). Essa é outra sigla que você vai ver muito em vários artigos kkkk.

A principal diferença entre GUI e CLI é que a interface gráfica do usuário (GUI) permite que o usuário interaja com o sistema usando elementos gráficos, como janelas, ícones, menus, enquanto a interface de linha de comando (CLI) utiliza scripts em comandos utilizando texto. Basicamente é isso kkkk!!! A imagem a seguir retrata muito bem esse conceito e diferença entre um e outro:

Sistema Operacional GUI e CLI

Ufa!!! Agora sim! Chegamos a um alinhamento de conhecimentos necessários para você entender o que são sistemas operacionais, como são as suas arquiteturas e como um sistema operacional está organizado segundo as suas camadas. Percebe a importância de fortalecer a base dos seus estudos através do conhecimento a respeito da arquitetura dos sistemas operativos? Agora você vai entender melhor os conceitos de como desenvolver um software. Já podemos avançar para o estudo de Algoritmos.

Confiança Sempre!!!

Fontes:

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *