Escalonamento de disco
Este projeto tem por objetivo implementar diferentes algoritmos de escalonamento de acessos a um disco simulado.
O problema
A política de escalonamento dos acessos a discos rígidos tem um impacto importante no throughput de um sistema (número de bytes lidos ou escritos no disco por segundo). Algumas políticas bem conhecidas são:
- First Come, First Served (FCFS): os pedidos são atendidos na ordem em que são gerados pelas tarefas; sua implementação é simples, mas não oferece um bom desempenho;
- Shortest Seek-Time First (SSTF): os acessos a disco são ordenados conforme sua distância relativa: primeiro são atendidos os pedidos mais próximos à posição atual da cabeça de leitura do disco.
- Circular Scan (CSCAN): os pedidos são atendidos sempre em ordem crescente de suas posições no disco; após tratar o pedido com a maior posição, a cabeça do disco retorna ao próximo pedido com a menor posição no disco.
A implementação
Este projeto usa como base o projeto de gerente de disco desenvolvido anteriormente. Neste projeto você deve:
- Implementar as políticas de escalonamento de disco FCFS, SSTF e CSCAN;
- para cada política, implementar uma função separada que a implementa;
- medir o número de blocos percorridos pela cabeça do disco em cada uma dessas três políticas;
- medir o tempo total de execução para cada uma das três políticas.
Use o código de teste e os conteúdos de disco do projeto de gerente de disco para efetuar seus testes e medições.
Outras informações
- Duração estimada: 8 horas.
- Dependências: