Skip to content

evandrofg/EP

Repository files navigation

Aqui estão alguns trabalhos e projetos realizados ao longo de minha graduação em Ciência da Computação no IME/USP. Pretendo adicionar mais projetos a este arquivo ao longo do tempo, a medida em que recupero os trabalhos originais. Segue uma pequena descrição de cada um. Mais detalhes podem ser vistos na documentação de cada projeto.

ep-cripto

Um programa escrito em C para criptografar arquivos com uma senha. Implementa o algoritmo K128.

ep-net-ircs

Implementação de um servidor de IRC em C. Suporta os comandos básicos do protocolo e inclusive transferência de arquivos entre usuários.

ep-net-simula

Um programa em Python que cria uma rede virtual complexa e simula conexões entre as máquinas, que podem ser clientes, servidores ou roteadores. A comunicação entre elas é feita por pacotes em três camadas: camada de rede (IP), transporte (TCP ou UDP) e aplicação (DNS e IRC). O programa simula todos os níveis de comunicação e gera logs detalhados sobre o que ocorreu.

ep-net-tictactoe

Um jogo da velha em rede. Com implementação em Python, funciona em TCP e UDP. Usuários podem logar no servidor e convidar outros usuários para partidas, e podem também resumir uma partida em andamento que tenha sido interrompida. Em TCP também foi implementado TLS.

ep-opengl2

Um jogo de invasores escrito em Python e OpenGL 2.

ep-openmp

Uma simulação de ondas em um lago. Programa escrito em C com paralelismo em OpenMP.

ep-proglin

Um programa que implementa o algoritmo simplex para redes para resolver o problema do menor caminho. Escrito em C++, usa grafos para solucionar esse problema de programação linear.

ep-pthread-ep1

Programação concorrente em C. O jogo simula uma corrida de F1 onde cada carro é uma thread e o vencedor será decidido pelo escalonador do sistema operacional.

ep-pthread-ep2

Programação concorrente em C. Calcula uma aproximação do número de Euler em alta precisão usando a biblioteca GMP, de forma concorrente.

ep-pthread-ep3

Programa de concorrente em Java. Resolve o problema clássico do jantar dos selvanges, implementando Monitores em Java.

ep-smv

Alguns exercícios de lógica resolvidos em SMV.

ep-so-ep2

O xv6 é um sistema operacional estilo Unix educacional. Neste projeto, adicionei novas syscalls ao xv6 que permitem gravar a execução de um programa, funcionalidade útil na depuração.

ep-so-ep4

Neste projeto adicionei suporte a links simbólicos no xv6, o sistema operacional estilo Unix escrito para fins educacionais.

ep-so-menushell

Escrito em C, é um simples shell e gerenciador de arquivos para sistemas Unix.

ep-webgl

Um programa em WebGL (Javascript / shaders) que carrega peças de um tabuleiro de xadrez e os exibe no navegador, com implementação do controle da câmera em quatérnios.

About

Arquivo de vários programas desenvolvidos como estudante

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published