Views
3 years ago

EP01 – Mini-Shell - Rede Linux IME-USP

EP01 – Mini-Shell - Rede Linux IME-USP

EP01 – Mini-Shell - Rede Linux

EP01 Mini-Shell MAC0422 - Sistemas Operacionais 2o. Sem./2006 Carlos Duarte do Nascimento (Nº USP 3099351) Willian Gigliotti (Nº USP 4963454) Introdução Este documento descreve a implementação do EP01 (“Mini-Shell”), que consiste na implementação de um interpretador simplificado de comandos simplificado, conforme enunciado disponibilizado no sistema Paca/Moodle, acrescido de dois comandos extras (por ser entregue em dupla) e da execução de processos em background (comando “&”). Metodologia Separamos o projeto em unidades funcionais, atribuindo cada uma a um código-fonte (e, a cada um deles, um arquivo de header de mesmo nome, além do arquivo comum comando.h). Estes arquivos são os seguintes: ● ● ● ● main.c: funcionamento central do shell (leitura da linha de comando, fork, etc.); interpretador.c: parsing da linha de comando; cst.c: interface (e tabela de símbolos) para os comandos customizados (internos); comandos.c: implementação dos comandos customizados. O mais importante foi separar o shell em si (main.c) do interpretador de comandos (interpretador.c). A codificação foi feita usando ferramentas tradicionais (vi, gcc, make), e a depuração foi feita inicialmente no interpretador, e para cada comando à medida em que era implementado. Sendo o EP em dupla, optamos por implementar os comandos ps e chmod. Este último foi feito através das chamadas stat e chmod, enquanto que o primeiro foi feito através da leitura do pseudo-sistema de arquivos /proc 1 , selecionando um subconjunto apropriado das informações, e listando todos os processos visíveis. Durante os testes, acabamos fazendo a execução de múltiplas tarefas em background (para observar o comportamento dos dados coletados por getrusage. Isto acabou nos levando a implementar, logo nos primeiros estágios, a opção “&”, que permite a execução de tarefas em background. 1 Nossa preferência era por utilizar chamadas de sistema nesta implementação, tendo em vista o objetivo da atividade proposta. Entretanto, a única alternativa que encontramos neste sentido foi o uso de um driver de kernel como o devps, mas, por se tratar de uma alternativa não-padronizada (e possivelmente não disponível), optamos pelo parse do /proc.

Acrobat Reader - Rede Linux IME-USP
Segurança de redes com Linux - Ifes
textos acadêmicos - Rede Linux IME-USP
Linux Magazine Administração De Redes.pdf - Labjor
SEGURANÇA: APLICAÇÕES WEB p.66 REDES - Linux Magazine ...
Linux - Servidor de Redes e Monitoramento - Gerds
Formação de Administradores de Redes Linux ... - Fernando Costa
Paulo A. Neukamp Aula 04 - Laboratório Linux - Unisinos
Inicialização em um pulo - Linux New Media
Inicialização em um pulo - Linux New Media
IME-USP Trabalho de Formatura - Rede Linux IME-USP
Monografia (.pdf) - Rede Linux IME-USP
Curso de Linux Módulo Básico - Rede Linux IME-USP
Sistema Janus - USP - Rede Linux IME-USP
Versão Preliminar - Rede Linux IME-USP
monografia Patricia - Rede Linux IME-USP