Sei sulla pagina 1di 8

Reporte de

Practica- FIFO (first


int, first out)
Materia: Sistemas Operativos I

Autor: Jose Miguel Sanchez San Juan


23/04/2018
- Reporte de Practica- FIFO (first int, first out)

Valor Creativo
Contenido
INTRODUCCIÓN. .................................................................................................................................. 3
OBJETIVO. ............................................................................................................................................. 3
DESARROLLO. ....................................................................................................................................... 3
Software: ........................................................................................................................................... 3
Codigo. ............................................................................................................................................. 3
FIFONODO ..................................................................................................................................... 3
FIFOCOLA ...................................................................................................................................... 4
MAIN............................................................................................................................................... 5
RESULTADOS. ........................................................................................................................................ 7
CONCLUSIONES. .................................................................................................................................. 8

2
- Reporte de Practica- FIFO (first int, first out)
INTRODUCCIÓN.
Las estructuras de datos nos permiten resolver un problema de manera más sencilla
gracias a que las reglas que las rigen nunca cambian, así que puedes asumir que ciertas
cosas son siempre ciertas. Una cola es una estructura de datos, caracterizada por ser una
secuencia de elementos en la que la operación de inserción push se realiza por un
extremo y la operación de extracción pop por el otro. También se le llama estructura FIFO
(del inglés First In First Out), debido a que el primer elemento en entrar será también el
primero en salir.

OBJETIVO.
Desarrollar un software en base a la estructura FIFO en el cual se ingresaran los datos a
tratar en el programa, dicho programa pedira que cada proceso seceda en un tiempo
asignado por el usuario, este se hara posible por medio de la librería Thread y por medio
de la instrucción Sleep, el cual debera mostrar que el proceso esta listo para realizarse y en
base al tiempo estimado por el usuario debera mostrar un mensaje de que este proceso
ha sido completado.

DESARROLLO.

Software:
NetBeans IDE 8.0.2

Codigo.

FIFONODO
public class FIFONODO {

public int dato;

public FIFONODO siguiente;

//Contructor para insertar al final

public FIFONODO(int d){

this.dato=d;

this.siguiente=null;

//Constructor para insertar al inicio

public FIFONODO (int d, FIFONODO n){

dato=d;

3
- Reporte de Practica- FIFO (first int, first out)
siguiente=n;

FIFOCOLA
public class FIFOCOLA {

protected FIFONODO inicio,fin;

public FIFOCOLA(){

inicio=null;

fin=null;

public boolean listavacia(){

if(inicio==null)

return true;

else

return false;

public void AgregarFinal(int elemento){

if(!listavacia()){

fin.siguiente=new FIFONODO(elemento);

fin=fin.siguiente;

else{

inicio=fin=new FIFONODO(elemento);

public void MostrarLista(){

FIFONODO recorrer=inicio;

System.out.println();

4
- Reporte de Practica- FIFO (first int, first out)
while(recorrer!=null){

System.out.println("[ Proceso"+recorrer.dato+"\n");

recorrer=recorrer.siguiente;

public int BorrarInicio(){

int elemento=inicio.dato;

if(inicio==fin){

inicio=fin=null;

else{

inicio=inicio.siguiente;

return elemento;

public void MostrarInicio(){

FIFONODO recorrer=inicio;

System.out.println();

System.out.println("[ Proceso"+recorrer.dato+"\n");

recorrer=recorrer.siguiente;

MAIN
package fifo;

import static java.lang.Thread.sleep;

import static java.lang.Thread.sleep;

import java.util.Scanner;

public class FIFO {

5
- Reporte de Practica- FIFO (first int, first out)
public static void main(String[] args) throws InterruptedException {

FIFOCOLA objprueba=new FIFOCOLA();

Scanner leer=new Scanner(System.in);

int elementos,n = 0,tiempo=0;

System.out.print("Cuantos elementos desea agregar: ");

elementos=leer.nextInt();

for(int i=0;i<elementos;i++){

System.out.print("Proceso ");

n=leer.nextInt();

objprueba.AgregarFinal(n);

for(int j=0;j<elementos;j++){

objprueba.MostrarInicio();

System.out.print("Tiempo de duracion: ");

tiempo=leer.nextInt();

sleep(tiempo);

for(int k=0;k<(tiempo/1000);k++){

System.out.println(".");

System.out.println("El proceso ha finalizado");

objprueba.BorrarInicio();

6
- Reporte de Practica- FIFO (first int, first out)

RESULTADOS.

7
- Reporte de Practica- FIFO (first int, first out)
CONCLUSIONES.
En base al analisis inicial se determino que para la resolucion se necesitaba usar la
estructura FIFO, en sabe a esto se obtubo un resultado optimo, la practica no tenia un
grado de dificultad muy alto, pero en base al emtendimiento del programador se
necesitaba un diseño para lograr programar lo que necesitaba.

Potrebbero piacerti anche