2. INTERPRETADOR DE COMANDOS
Principal interface entre o usuário em um terminal e o sistema
Um interpretador é iniciado sempre que um usuário usa o sistema
Ao iniciar, mostra um prompt ($) Sistema Operacional Linux que
permite executar programas
Exemplo
$date
quarta feira 13 de maio de 2015
$novo prompt após executar a tarefa
3. INTERPRETADOR DE COMANDOS
Muitas vezes o comando demora para ser executado
Para que o prompt retorne, imediatamente devemos adicionar & ao
final do comando.
Com isto o comando será executado em background
Um outro comando pode ser executado simultaneamente.
4. INTERPRETADOR DE COMANDOS
O interpretador de comandos cria um processo filho para cada programa
O terminal do usuário é a entrada e a saída padrões do programa
Entrada padrão dos programas teclado
Saída padrão dos programas Monitor
Entradas e as saídas padrão pode ser alterada
A entrada padrão pode ser lida de um arquivo usando < nome
Saída padrão pode ser escrita em um arquivo usando > nome
5. INTERPRETADOR DE COMANDOS
Exemplo de Desvio de Entrada e Saida
$date > date.txt salva a data atual para um arquivo de texto
$sort < alunos.txt > Lê o arquivo alunos.txt e salva o arquivo
ordenado em alunos.txt
6. EXEMPLO DE PIPE
Um pipe entre dois processos pode ser criado usando |
Exemplo
$cat arq1 arq2 arq3 | print concatena os arquivos arq1,arq2,arq3
e envia o resultado para o programa print
7. CHAMADAS DO SISTEMA OPERACIONAL
Definem a interface entre o Sistema Operacional e os processos
Em geral, os processos usam chamadas na bibliotecas, pois:
Podemos definir uma interface padrão
Podemos definir várias funções para facilitar o uso de uma mesma
chamada ao Sistema.
O uso direto das chamadas é dependente da máquina e de difícil
interpretação.
8. CHAMADAS DO SISTEMA
Processo do Usuário
Biblioteca
S.O
Hardware
Processo do Usuário usa
somente chamadas a uma
biblioteca, pois estas são mais
simples de usar do que
diretamente ao S.O
A biblioteca lida com
os detalhes da
chamada. Além de
fornecer vários modos
de usar uma mesma
chamada
Não é desejável que
o processo do
usuário use
diretamente uma
chamada ao S.O
pois a
implementação
desta chamada é
complicada.