Sistemas Operativos
Artigo: Sistemas Operativos. Pesquise 862.000+ trabalhos acadêmicosPor: Reynaldo1789 • 15/6/2014 • 5.079 Palavras (21 Páginas) • 686 Visualizações
I. Simulador Planificador Round robin
El algoritmo de Round Robin es uno de los más equitativos en el reparto del requerimiento de la CPU entre los procesos valido para los entornos de tiempo compartido, cada proceso tiene asignado un intervalo de tiempo de ejecución, llamado quantum.
Si el proceso agota su quantum de tiempo, se elige a otro proceso para ocupar la CPU.
Si el proceso se bloquea o termina antes de agotar su quantum también se alterna el uso de la CPU. El round robín es muy fácil de implementar, todo lo que necesita el planificador es mantener una lista de los procesos listos.
Captura de pantalla del programa.
A continuación presentaremos parte del código hecho en el lenguaje C#, con comentarios respecto a su funcionalidad.
namespace so
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
int ancho = 77;
tblprocesamiento.Columns[0].Width=ancho;
tblprocesamiento.Columns[1].Width = ancho;
tblprocesamiento.Columns[2].Width = ancho;
tblprocesamiento.Columns[3].Width = ancho;
tblprocesamiento.Columns[4].Width = ancho;
tblprocesamiento.Columns[5].Width = ancho;
tblprocesamiento.Columns[6].Width = ancho;
tblprocesamiento.Columns[7].Width = ancho;
tblprocesamiento.Columns[8].Width = ancho;
tblprocesamiento.Columns[9].Width = ancho;
tblprocesamiento.Rows.Add(100);
estado();
}
escritura s = new escritura();
//Asignacion de color a cada proceso, aleatoriamente
public String asignacion_color()
{
String color=null;
Random aleatorio=new Random();
int valor = aleatorio.Next(1, 9);
switch (valor)
{
case 1:
color = "beige";
break;
case 2:
color = "blue";
break;
case 3:
color = "yellow";
break;
case 4:
color = "brown";
break;
case 5:
color="green";
break;
case 6:
color = "gray";
break;
case 7:
color = "orange";
break;
case 8:
color = "red";
break;
case 9:
color = "violet";
break;
}
return color;
}
public void estado() //METODO QUE VALIDA EL CHEKS PARA MODIFICAR EL QUANTUM
{
if (ck_estado.CheckState == 0)
{
txtquantum.Enabled = false;
txtquantum.Text=Convert.ToString(trakbarra.Value);
trakbarra.Enabled = true;
}
else
{
txtquantum.Enabled = true;
trakbarra.Enabled = false;
trakbarra.Value = Convert.ToInt32(txtquantum.Text);
}
}
private void ck_estado_CheckedChanged(object sender, EventArgs e) //Llama al metodo de estado para el chek
{
estado();
}
//METODO que agrega NOMBRE, CANTIDAD Y COLOR
...