O Sistema Operacional UNIX possuí as seguintes características:
- Interativo – O usuário requisita os comandos e obtém os resultados de sua execução através do terminal.
- Multitarefa – Um único usuário pode requisitar que sejam efetuados vários comandos ao mesmo tempo em seu terminal. É responsabilidade do sistema UNIX controlar estas execuções paralelas.
Quando um usuário executa mais de um comando ao mesmo tempo, geralmente é somente um que necessita a interação com o usuário. Os demais comandos executados são na sua maioria comandos que não exigem a atenção do usuário, sendo tarefas demoradas. Quando isto ocorre, dizemos que os programas que o usuário está executando sem a interação ficam em Background. O programa que o usuário está executando e interagindo fica em Foreground.
- Multiusuário – O UNIX pode controlar o acesso ao sistema através de vários terminais, virtuais ou reais, cada um pertencendo a um usuário. O UNIX aceita as requisições de comandos de cada um dos usuários e gera as filas de controle e prioridades para que haja uma distribuição correta dos recursos de hardware necessários a cada usuário. Devido a característica de ser um sistema multiusuário, o UNIX implementa um sistema de segurança visando impedir o acesso aos arquivos e diretórios de um usuário por outro. No módulo sobre permissões veremos como se pode liberar ou restringir o acesso entre usuários.
Para o bom prosseguimento do curso faz-se necessário o entendimento de certos termos que serão muito utilizados nas explicações e textos. Estes termos fazem parte do jargão do Unixe e Linux e devem ser conhecidos, pois toda a bibliografia e documentação se utilizam deles. São eles:
- Shell – É o termo UNIX para interpretador de comandos. O shell nada mais é que um programa que recebe os comandos do usuário e ativa o sistema operacional. Ele faz o controle do terminal, tanto na entrada como na saída. Existem várias opções de shell para o usuário, cada um com determinadas características e facilidades. Dentre os mais conhecidos podemos citar: bash, sh, rsh, csh e ksh. O interpretador de comandos padrão do Unix é o ksh e sh (AIX,HPUX) e bash (Linux).
- Kernel – É como é chamado o núcleo do sistema Unix e Linux. Este núcleo faz o gerenciamento direto dos dispositivos de E/S (device drivers), gerenciamento de memória e controle do uso da CPU pelos vários processos do sistema.
- Comando – Um comando Unix/Linux nada mais é que um arquivo (programa executável) guardado em um diretório específico do sistema. Portanto quando o usuário executa um comando, ele simplesmente está rodando um programa como qualquer outro do sistema.
- Processo – É um conceito básico do sistema. Toda vez que se executa um programa/comando é gerado um processo no sistema. Todo gerenciamento é feito sobre este processo. Os processos são, portanto, comandos/programas em execução. Todo processo é identificado por um número chamado process id (PID). Este process ID é único no sistema durante a execução do processo, portanto pode e deve ser usado para identificação do processo em caso de necessidade.
Nenhum comentário:
Postar um comentário