Nome do Projeto
Desenvolvimento de um ambiente para a simulação de Sistemas Operacionais com o propósito de uso educacional - Fase 2
Ênfase
Pesquisa
Data inicial - Data final
20/06/2024 - 31/05/2027
Unidade de Origem
Coordenador Atual
Área CNPq
Ciências Exatas e da Terra
Resumo
Sistema Operacional (SO) é um software essencial que atua como intermediário entre o hardware e os programas do usuário final, gerenciando a interação com todos os dispositivos do computador. Ele abrange aspectos de baixo nível, como drivers de dispositivo e gerenciamento de memória, bem como aspectos de alto nível, como programas utilitários e a interface gráfica. Esta proposta visa dar continuidade a um projeto anterior, onde foi desenvolvido um protótipo inicial de um simulador de SO, com o objetivo de facilitar a compreensão dos principais conceitos de sistemas computacionais multitarefas, como Unix e Windows, de maneira simples e intuitiva. Inicialmente, realizou-se a modelagem do ambiente computacional de um Sistema Operacional e implementou-se um protótipo inicial do gerenciador de processos. Nesta nova fase, busca-se expandir o simulador para permitir a visualização de conceitos como multiprogramação, estados de processos, gerenciamento do processador e memória virtual. Além disso, o simulador permitirá a alteração de estratégias e processos, possibilitando a simulação de diferentes cenários que ocorrem em ambientes reais.

Objetivo Geral

De forma geral, o projeto propõe:
- Validar a modelagem de classes desenvolvida na fase anterior, assegurando sua robustez e capacidade de expansão.
- Validar o ambiente de simulação de Sistema Operacional desenvolvido anteriormente, garantindo seu funcionamento correto e eficiente.
- Modelar e implementar a capacidade de simular diferentes políticas de escalonamento de processos, proporcionando maior flexibilidade e realismo ao simulador.
- Desenvolver um conjunto de classes para gerenciar a memória utilizada pelos processos, aprimorando a precisão e a funcionalidade do simulador.

Justificativa

O funcionamento de um Sistema Operacional (SO) é um tema central de estudo em todos os cursos de graduação na área de computação, pois proporciona aos alunos o conhecimento da arquitetura dos sistemas operacionais e a forma de gerenciamento dos recursos computacionais envolvidos. Essa base de conhecimento é essencial para que os discentes possam desenvolver aplicações que aproveitem ao máximo todos os recursos disponíveis.
Diversos trabalhos propõem a criação de simuladores de SO para auxiliar no estudo e compreensão dos conceitos envolvidos (1, 2, 3, 4, 5). Estas ferramentas visam simular as principais funcionalidades de um sistema operacional, permitindo interação com o usuário/discente e facilitando a assimilação dos conceitos abordados nas disciplinas de SO. No entanto, a maioria desses trabalhos não disponibiliza uma forma acessível de utilizar os simuladores desenvolvidos. Apenas em [1] foi possível acessar e executar o simulador, mas o projeto não acompanhou a evolução dos computadores (por exemplo, considera um ambiente monocore), não permite configurações personalizadas das estratégias de gerenciamento, apresenta diversas falhas e foi descontinuado.
Diante disso, este projeto de pesquisa se justifica pela necessidade de desenvolver um simulador de SO mais avançado e atualizado, que acompanhe a evolução tecnológica e ofereça maior flexibilidade e funcionalidade. Com esta pesquisa, busca-se:
• Validar o modelo de classes que contempla as principais características de um Sistema Operacional, visando à manutenção e adição de novos módulos no futuro (desenvolvido na Fase 1);
• Validar o protótipo funcional do simulador de Sistema Operacional, capaz de gerenciar processos, desenvolvido na Fase 1;
• Implantar o uso de diferentes políticas de escalonamento de processos;
• Especificar um módulo para gerenciar a memória dos processos em execução no simulador;
• Desenvolver e integrar o módulo de gerenciamento de memória ao protótipo do simulador criado na Fase 1.
Este projeto busca preencher as lacunas deixadas por trabalhos anteriores, oferecendo uma ferramenta robusta e flexível para o estudo dos sistemas operacionais, que possa ser utilizada de maneira prática e efetiva por discentes e pesquisadores da área.

Metodologia

Para alcançar os objetivos propostos neste projeto de pesquisa, a seguinte metodologia será adotada:
Etapa 1: Revisão e Validação do Modelo de Classes
1. Revisão Bibliográfica: Realizar uma revisão detalhada da literatura existente sobre simuladores de Sistemas Operacionais e modelos de classes relacionados.
2. Análise do Modelo Atual: Revisar o modelo de classes desenvolvido na Fase 1 do projeto anterior, identificando suas principais características e possíveis melhorias.
3. Validação do Modelo de Classes: Validar o modelo atual por meio de testes e análises comparativas com outros modelos existentes. Isso incluirá a realização de simulações de cenários típicos de um Sistema Operacional.
Etapa 2: Validação do Protótipo Funcional
1. Teste de Funcionalidade: Testar o protótipo funcional do simulador de SO desenvolvido na Fase 1, garantindo que ele seja capaz de gerenciar processos de forma eficaz.
2. Avaliação de Desempenho: Realizar testes de desempenho para avaliar a eficiência do protótipo em diferentes cenários de carga e utilização.
3. Feedback de Usuários: Coletar feedback de usuários/discentes que utilizem o protótipo, identificando pontos fortes e áreas de melhoria.
Etapa 3: Desenvolvimento e Integração de Novos Módulos
1. Especificação de Módulos Adicionais: Especificar os requisitos para novos módulos, incluindo um módulo de gerenciamento de memória e suporte a diferentes políticas de escalonamento de processos.
2. Desenvolvimento de Módulos: Implementar os novos módulos especificados, garantindo a compatibilidade com o protótipo existente.
3. Integração e Testes: Integrar os novos módulos ao protótipo e realizar testes abrangentes para assegurar que todos os componentes funcionem de maneira coesa e eficiente.
Etapa 4: Validação e Simulação de Cenários
1. Criação de Cenários de Teste: Desenvolver cenários de teste que reflitam situações reais de uso de sistemas operacionais, incluindo diferentes cargas de trabalho e configurações de hardware.
2. Simulação e Análise: Utilizar o simulador para executar os cenários de teste criados, analisando os resultados para validar o comportamento do sistema e identificar possíveis melhorias.
3. Documentação e Relatório: Documentar todos os testes realizados, resultados obtidos e análises feitas. Elaborar um relatório detalhado descrevendo as metodologias utilizadas, os resultados alcançados e as conclusões do projeto.
Etapa 5: Publicação e Disseminação dos Resultados
1. Redação de Artigos Científicos: Redigir artigos científicos com os resultados da pesquisa para submissão em conferências e periódicos da área de computação.
2. Apresentações e Workshops: Apresentar os resultados do projeto em eventos acadêmicos e workshops, compartilhando as descobertas e as contribuições com a comunidade científica.
3. Desenvolvimento de Materiais Didáticos: Criar materiais didáticos baseados no simulador desenvolvido para uso em disciplinas de Sistemas Operacionais, facilitando o ensino e aprendizado dos conceitos abordados.

Indicadores, Metas e Resultados

São metas deste projeto:
1. Obter um ambiente modular capaz de receber configurações personalizadas permitindo explorar diferentes características dos gerenciadores envolvidos.
2. Obter um ambiente que ilustre graficamente o funcionamento dos principais aspectos de um SO, permitindo melhor entendimento dos conceitos relacionados.
3. Apresentar para a comunidade científica os resultados obtidos através de publicações em eventos e periódicos da área.

Equipe do Projeto

NomeCH SemanalData inicialData final
GABRIEL LEITE BESSA
IGOR GOMES DUTRA
JOÃO ANTONIO NEVES SOARES
RAFAEL SEABRA FERRAO
Rafael Burlamaqui Amaral19
VINÍCIUS GARCIA PERUZZI

Página gerada em 18/10/2024 00:05:30 (consulta levou 0.250141s)