Giter VIP home page Giter VIP logo

sso's People

Contributors

luizhreis avatar vitor-araujo25 avatar jvitor03 avatar

Stargazers

 avatar

Watchers

 avatar James Cloos avatar  avatar  avatar

sso's Issues

Gerar arquivo com a lista de processos criados

Cada processo deve apresentar:

  1. O instante de tempo da criação na simulação
  2. O PID alocado
  3. Tempo para ser executado
  4. O PID do processo pai

Talvez JSOM seja um bom formato para o arquivo

Corrigir alocação de PID

Corrigir a alocação para antes de alocar testar se o pid está livre.
Acredito que para resolver basta testar se manager->processList[pidPretendido] != NULL

Condição de término da simulação

Alterar o comportamento de término da simulação para que ocorra com as seguintes condições satisfeitas:

  1. Todos os processos descritos no arquivo de input tiverem sido criados
  2. Nenhum processo esteja em execução
  3. Todas as filas de execução estiverem vazias
  4. Todas as filas de I/O estejam vazias

Simulação de processos de I/O

Implementar os processos de I/O com a seguinte lógica:

  1. Tempo de requisição da operação de I/O aleatório
  2. Tipo de I/O aleatório
  3. Tempo de duração de cada I/O:
    1. Disco: fixo
    2. Impressora: fixo
    3. Fita: aleatório
    4. Teclado: aleatório

Gerar arquivo de log da simulação

Cada atividade do simulador deve ser registrada em um arquivo. Talvez o formato JSOM seja uma boa opção para esse log.

  1. Criação de processo:
    1.as mesmas informações de #1
  2. Término de processos:
    1. as mesmas informações de #2
  3. Processo em execução no momento:
    1. PID
    2. PPID
    3. Prioridade
    4. Tempo para o término
  4. Estado das filas de execução
  5. Estado das filas de I/O

Correção da lista de criação de processos

A lista de criação de processos está sendo duplicada.

./sso -i process.txt -t 4 -l 100
0 1 3 4 7 9 9 10 12 14 90 93 95 96 96 96 96 102 104 105 108 109 110 0 1 3 4 7 9 9 10 12 14 90 93 95 96 96 96 96 102 104 105 108 109 110

Deixei comentado no ultimo commit as linhas 98 e 99 que mostram esse comportamento.

parseProcessFile(inputFile, processCreation);
// show(processCreation);
// getchar();

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.