Baixe o app para aproveitar ainda mais
Prévia do material em texto
Unidade I - Atividades Práticas com o MINIX Prof. Sílvio Fernandes Página 1 Universidade Federal Rural do Semi Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Sistemas Operacionais Prof. Sílvio Fernandes Unidade I – Atividades Práticas com o MINIX Todas as atividades aqui propostas devem ser realizadas utilizando o MINIX na versão 3.2.1, em grupo de três alunos. No dia da apresentação deve ser entregue um relatório descritivo de como foi implementado. Informar as bibliotecas usadas, funções de cada biblioteca e arquivos do sistema modificados. Data de entrega: 28/04/2015 Descrição: Implementar um interpretador de comandos (Shell) para o MINIX (em ANSI C, uma vez que tal S.O. é implementado nessa linguagem, assim como todas as suas chamadas de sistemas). O shell deve ser capaz de executar um pequeno conjunto de comandos listados a seguir: Comando Descrição ls Lista arquivos/diretórios do diretório corrente cd [diretorio] Entra em um diretório echo [texto] Escreve na tela o texto passado como parâmetro ps Lista todos os processos que estão sendo executados kill [PID] Mata o processo indicado pelo PID exit Sai do Shell alias nome = valor Associa um nome a um valor ou comando unalias nome Desassocia o nome de um alias anterior export variavel = valor Cria variável de ambiente com um valor do caminho ao qual está associada unset variavel Desassocia a variável de ambiente de um export anterior Para execução desses comandos executando as chamadas de sistema do MINIX as seguintes bibliotecas de C devem ser incluídas: #include <sys/types.h> #include <sys/wait.h> #include <stdlib.h> #include <unistd.h> O Shell deve interpretar cada um dos comandos listados na tabela e chamar o programa adequado para sua execução. Para qualquer outro programa padrão do diretório /bin/ do MINIX deve ser usada a chamada de sistema “fork()”. Unidade I - Atividades Práticas com o MINIX Prof. Sílvio Fernandes Página 2 Quando o Shell for iniciado deve aparecer a lista dos comandos e os possíveis parâmetros correspondentes. Deve ficar em espera pelo comando do usuário. Quando o usuário digitar, se o comando existir deve executar e retornar para o prompt para esperar um novo comando, caso o comando não exista exibir uma mensagem informando que não existe e voltar para o prompt.
Compartilhar