	┌──────────────────────────────────────────────────────────┐
 	│               Creative Commons (CC BY-NC-SA)             │
 	│                                                          │
 	│               BY - Atribución (BY)                       │
 	│               NC - No uso Comercial (NC)                 │
 	│               SA - Compartir Igual (SA)                  │
 	└──────────────────────────────────────────────────────────┘
   ┌───────────────────────────────────────────────────────────────────┐
   │           Algoritmo de Gestión de Procesos:                       │
   │                 FCFS/SJF/SRPT/Prioridad Mayor y Menor,            │
   │                 Apropiativo y No Apropiativo/Round-Robin          │
   │           Algoritmo de Gestión de Memoria:                        │
   │                 Memoria Paginada (Virtual y No Virtual,           │
   │                 Continua y No Continua,                           │
   │                 Reubicable y No Reubicable)                       │
   │                                                                   │
   │                 Autores: Jaime Sáiz de la Peña                    │
   │      y los alumnos de la asignatura Sistemas Operativos del       │
   │           Grado en Ingeniería Informática (2014-2024)             │
   │                     Universidad de Burgos                         │
   │                                                                   │
   │                 Tutor: José Manuel Sáiz Diez                      │
   │                                                                   │
   │                  Versión junio 2024 (V-0.1)                       │
   │                                                                   │
   └───────────────────────────────────────────────────────────────────┘
 
 ÚLTIMA EJECUCIÓN: 10/12/2024 - 01:12

   ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 

 MENÚ DE INICIO
 
  1. Ejecutar el algoritmo - Memoria NO Virtual - Paginación Simple.
 
  2. Ejecutar el algoritmo - Memoria Virtual - Paginación - Algoritmos de Reemplazo de Páginas.
 
  3. Menú de ayuda (requiere 'evince' para los ficheros PDF, o 'mplayer' para los ficheros de vídeo).
 
  4. Crear informe de código mediante zshelldoc.
 
  5. Salir

  -->    ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 

 MENÚ DE ELECCIÓN DE ALGORITMO 

  1. FCFS 

  2. SJF 

  3. SRPT 

  4. Prioridades 

  5. Round-Robin 

  6. Salir

  --> 1

   ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 


 MENÚ DE ELECCIÓN DE CONTINUIDAD 

 La elección será aplicable sólo en caso de introducción de datos de forma manual. 

 En caso de introducción de datos a través de fichero se ejecutará tal y como allí esté definido. 

  1. Memoria No Continua 

  2. Memoria Continua 

  3. Salir

  --> 1

   ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 

 MENÚ DE ELECCIÓN DE REUBICABILIDAD 

 La elección será aplicable sólo en caso de introducción de datos de forma manual. 

 En caso de introducción de datos a través de fichero se ejecutará tal y como allí esté definido. 

  1. Memoria No Reubicable 

  2. Memoria Reubicable 

  3. Salir

  --> 1

   ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 


 MENÚ DE ELECCIÓN DEL ALGORITMO DE REEMPLAZO DE PÁGINAS 
 La elección será aplicable sólo en caso de introducción de datos de forma manual. 
 En caso de introducción de datos a través de fichero se ejecutará tal y como allí esté definido. 
  1. First In First Out (FIFO) 
  2. FIFO - Segunda Oportunidad 
  3. Reloj 
  4. Reloj - Segunda Oportunidad 
  5. Óptimo 
  6. Most Frequently Used (MFU) 
  7. Least Frequently Used (LFU) 
  8. Not Frequently Used (NFU) con límite de frecuencia en un intervalo, mediante MFU 
  9. Not Frequently Used (NFU) con límite de frecuencia en un intervalo, mediante LFU 
  10. Not Frequently Used (NFU) con clases y con límite de frecuencia en un intervalo, mediante MFU 
  11. Not Frequently Used (NFU) con clases y con límite de frecuencia en un intervalo, mediante LFU 
  12. Most Recently Used (MRU) 
  13. Least Recently Used (LRU) 
  14. Not Recently Used (NRU) con límite de antigüedad, mediante MRU 
  15. Not Recently Used (NRU) con límite de antigüedad, mediante LRU 
  16. Not Recently Used (NRU) con clases y con límite de antigüedad, mediante MRU 
  17. Not Recently Used (NRU) con clases y con límite de antigüedad, mediante LRU 
  18. Not Recently Used (NRU) con clases, mediante FIFO 
  19. Pésimo 
  20. Salir

  --> 16



 Introduce el valor máximo de la antigüedad, a partir de la cual, no será considerada: 5



 Introduce el valor máximo de unidades de tiempo de antigüedad de ejecución de un proceso, a partir de la cual, una página será considerada como NO referenciada: 3

   ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 

 MENÚ INICIO 

  1. Introducción manual de datos 

  2. Fichero de datos de última ejecución (./FLast/DatosLast.txt) 

  3. Otros ficheros de datos 

  4. Introducción manual de rangos (modo aleatorio) 

  5. Fichero de rangos de última ejecución (./FLast/RangosLast.txt) 

  6. Otros ficheros de rangos 

  7. Introducción manual de rangos amplios (modo aleatorio total) 

  8. Fichero de rangos amplios de última ejecución (./FLast/RangosAleTotalLast.txt) 

  9. Otros ficheros de rangos amplios 

  10. Salir

  --> 3


 Ficheros de datos a elegir en './FDatos/': 


 Introduce el número correspondiente al fichero a analizar:    ┌────────────────────────────────────────────────────────────────────────────┐
   │                                                                            │
   │   GESTIÓN DE PROCESOS: FCFS/SJF/SRPT/Prioridad Mayor y Menor/Round-Robin   │
   │   GESTIÓN DE MEMORIA: MEMORIA PAGINADA                                     │
   │                                                                            │
   └────────────────────────────────────────────────────────────────────────────┘ 


 MENÚ DE ELECCIÓN DEL MODO DE EJECUCIÓN: 
 

  1. Ejecución por eventos (Presionando Enter en cada evento). 

  2. Ejecución automática (Por eventos y sin pausas). 

  3. Ejecución completa (Por eventos con pausas de cierto número de segundos). 

  4. Ejecución por unidad de tiempo (Con un volcado en cada unidad de tiempo). 

  5. Ejecución completa (Sin representación de resultados intermedios).

  --> 2

 Los datos introducidos al sistema son:
 ┌───────────────┬───────────────┬───────────────┬───────────────┐
 │    Proceso    │  T.Llegada    │  T.Ejecución  │    Tamaño     │
 └───────────────┴───────────────┴───────────────┴───────────────┘
 	P01	 	1	 	25	 	4	  


 Memoria total: 40 uds.
 ---------------------------------------------

 Pulse enter para continuar...


 FCFS-Paginación-NRU/Clases/MRU-NC-NR
 Reloj=0 Mem.Total=40 Mem.Libre=40 Num.Direcciones/Marco=100
 Máx. de Antigüedad=5 - Tiempo máx. en clases 2/3 en el Periodo=3
 Ref Tll Tej Mem TEsp Tret Trej Mini Mfin Estado            Direcciones-Página-Modificación   
 ────────────────────────────────────────────────────────────────────────────────────────
 P01   1  25   4    -    -    -    -    - Fuera del Sistema 4789-47-1 743-7-0 4789-47-1 7791-77-1 4789-47-1 4789-47-1 4789-47-1 2047-20-1 4789-47-1 596-5-1 4789-47-1 596-5-1 4789-47-1 5016-50-0 4789-47-1 5016-50-0 4789-47-1 2781-27-1 4789-47-1 2250-22-0 4789-47-1 2647-26-0 4789-47-1 3047-30-0 4510-45-1
 T. espera medio: 0.0	       T. retorno medio: 0.0
 Proc.  -        -        -        -        -        -        -        -        -        -        
 Marco  M0       M1       M2       M3       M4       M5       M6       M7       M8       M9       
 Pág.   -        -        -        -        -        -        -        -        -        -        
 UsoRec -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M10      M11      M12      M13      M14      M15      M16      M17      M18      M19      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M20      M21      M22      M23      M24      M25      M26      M27      M28      M29      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M30      M31      M32      M33      M34      M35      M36      M37      M38      M39      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

    |                                                                                             
 BM |  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
    |  0                                                                                          

                                |
       -  -  -  -  -  -  -  -  -|M: 40
                                |

    |   |       
 BT |  -|T= 0  
    |  0|       

───────────────────────────────────────────────────────────────────────
 FCFS-Paginación-NRU/Clases/MRU-NC-NR
 Reloj=1 Mem.Total=40 Mem.Libre=36 Num.Direcciones/Marco=100
 Máx. de Antigüedad=5 - Tiempo máx. en clases 2/3 en el Periodo=3
 El proceso P01 ha llegado al sitema.
 El proceso P01 ha entrado en memoria.
 El proceso P01 ha entrado en CPU.
 Ref Tll Tej Mem TEsp Tret Trej Mini Mfin Estado            Direcciones-Página-Modificación   
 ────────────────────────────────────────────────────────────────────────────────────────
 P01   1  25   4    0    0   25    0    3 En ejecución      4789-47-1 743-7-0 4789-47-1 7791-77-1 4789-47-1 4789-47-1 4789-47-1 2047-20-1 4789-47-1 596-5-1 4789-47-1 596-5-1 4789-47-1 5016-50-0 4789-47-1 5016-50-0 4789-47-1 2781-27-1 4789-47-1 2250-22-0 4789-47-1 2647-26-0 4789-47-1 3047-30-0 4510-45-1
 T. espera medio: 0	       T. retorno medio: 0
 Resumen de los Marcos/Páginas-Clase/Estadísticas de Frecuencia de Uso/Estadísticas de Antigüedad de Uso de todos los procesos en memoria en la unidad de tiempo actual (reloj:1). 
 Se muestra: Pág.:Página en el Marco-Bit de Modificación-Clase ; UsoRec:Antigüedad de uso total registrada-Antigüedad de uso en el intervalo-Antigüedad de la clase 2 o 3 en el intervalo. 
 Interpretación: Subrayado-Siguiente fallo ; Fondo de color-Uso del marco ; Negrita-Fallo de Paginación (Marco-F). 
 Proc.  P01      *        *        *        -        -        -        -        -        -        
 Marco  M0     M1       M2       M3       M4       M5       M6       M7       M8       M9       
 Pág.   47-1-1   *        *        *        -        -        -        -        -        -        
 UsoRec 0-0-0    *        *        *        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M10      M11      M12      M13      M14      M15      M16      M17      M18      M19      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M20      M21      M22      M23      M24      M25      M26      M27      M28      M29      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M30      M31      M32      M33      M34      M35      M36      M37      M38      M39      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

    |P01                                                                                          
 BM | 47  *  *  *  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
    |  0           4                                                                              

                                |
       -  -  -  -  -  -  -  -  -|M: 40
                                |

    |   P01|       
 BT |  - 47|T= 1  
    |  0  1|       

───────────────────────────────────────────────────────────────────────
 FCFS-Paginación-NRU/Clases/MRU-NC-NR
 Reloj=26 Mem.Total=40 Mem.Libre=40 Num.Direcciones/Marco=100
 Máx. de Antigüedad=5 - Tiempo máx. en clases 2/3 en el Periodo=3
 El proceso P01 ha salido de memoria.
 Ref Tll Tej Mem TEsp Tret Trej Mini Mfin Estado            Direcciones-Página-Modificación   
 ────────────────────────────────────────────────────────────────────────────────────────
 P01   1  25   4    0   25    -    -    - Finalizado        4789-47-1 743-7-0 4789-47-1 7791-77-1 4789-47-1 4789-47-1 4789-47-1 2047-20-1 4789-47-1 596-5-1 4789-47-1 596-5-1 4789-47-1 5016-50-0 4789-47-1 5016-50-0 4789-47-1 2781-27-1 4789-47-1 2250-22-0 4789-47-1 2647-26-0 4789-47-1 3047-30-0 4510-45-1
 T. espera medio: 0	       T. retorno medio: 25.00

Resumen de los fallos de página del proceso finalizado P01 a lo largo del tiempo. 
Se muestra: Número de Marco Real-Página del Proceso en el Marco-Antigüedad de Uso Total-Antigüedad de Uso en el Intervalo-Antigüedad como clase 2 o 3-Bit de Página Modificada-Clase. 
Interpretación: Subrayado-Siguiente fallo ; Fondo de color-Uso del marco ; Negrita-Fallo de Paginación. 
 Tiempo     1                 2                 3                 4                 
 Página     47                7                 47                77                
 M0(Orden)  0-47-0-0-0-1-1    0-47-1-1-0-1-1    0-47-0-0-0-1-3    0-47-1-1-1-1-3    
 M1(Orden)  1-----            1-7-0-0-0-0-0     1-7-1-1-0-0-0     1-7-2-2-0-0-0     
 M2(Orden)  2-----            2-----            2-----            2-77-0-0-0-1-1    
 M3(Orden)  3-----            3-----            3-----            3-----            
 Fallos (F) F                 F                 -                 F                 

            5                 6                 7                 8                 
            47                47                47                20                
            0-47-0-0-0-1-3    0-47-0-0-0-1-3    0-47-0-0-0-1-3    0-47-1-1-1-1-3    
            1-7-3-3-0-0-0     1-7-4-4-0-0-0     1-7-5-5-0-0-0     1-7-6-5-0-0-0     
            2-77-1-1-0-1-1    2-77-2-2-0-1-1    2-77-3-3-0-1-1    2-77-4-4-0-1-1    
            3-----            3-----            3-----            3-20-0-0-0-1-1    
            -                 -                 -                 F                 

            9                 10                11                12                
            47                5                 47                5                 
            0-47-0-0-0-1-3    0-47-1-1-1-1-3    0-47-0-0-0-1-3    0-47-1-1-1-1-3    
            1-7-7-5-0-0-0     1-5-0-0-0-1-1     1-5-1-1-0-1-1     1-5-0-0-0-1-3     
            2-77-5-5-0-1-1    2-77-6-5-0-1-1    2-77-7-5-0-1-1    2-77-8-5-0-1-1    
            3-20-1-1-0-1-1    3-20-2-2-0-1-1    3-20-3-3-0-1-1    3-20-4-4-0-1-1    
            -                 F                 -                 -                 

            13                14                15                16                
            47                50                47                50                
            0-47-0-0-0-1-3    0-47-1-1-1-1-3    0-47-0-0-0-1-3    0-47-1-1-1-1-3    
            1-5-1-1-1-1-3     1-5-2-2-2-1-3     1-5-3-3-3-1-3     1-5-4-4-0-1-1     
            2-77-9-5-0-1-1    2-50-0-0-0-0-0    2-50-1-1-0-0-0    2-50-0-0-0-0-2    
            3-20-5-5-0-1-1    3-20-6-5-0-1-1    3-20-7-5-0-1-1    3-20-8-5-0-1-1    
            -                 F                 -                 -                 

            17                18                19                20                
            47                27                47                22                
            0-47-0-0-0-1-3    0-47-1-1-1-1-3    0-47-0-0-0-1-3    0-47-1-1-1-1-3    
            1-5-5-5-0-1-1     1-27-0-0-0-1-1    1-27-1-1-0-1-1    1-22-0-0-0-0-0    
            2-50-1-1-1-0-2    2-50-2-2-2-0-2    2-50-3-3-3-0-2    2-50-4-4-0-0-0    
            3-20-9-5-0-1-1    3-20-10-5-0-1-1   3-20-11-5-0-1-1   3-20-12-5-0-1-1   
            -                 F                 -                 F                 

            21                22                23                24                
            47                26                47                30                
            0-47-0-0-0-1-3    0-47-1-1-1-1-3    0-47-0-0-0-1-3    0-47-1-1-1-1-3    
            1-22-1-1-0-0-0    1-26-0-0-0-0-0    1-26-1-1-0-0-0    1-30-0-0-0-0-0    
            2-50-5-5-0-0-0    2-50-6-5-0-0-0    2-50-7-5-0-0-0    2-50-8-5-0-0-0    
            3-20-13-5-0-1-1   3-20-14-5-0-1-1   3-20-15-5-0-1-1   3-20-16-5-0-1-1   
            -                 F                 -                 F                 

            25                
            45                
            0-47-2-2-2-1-3    
            1-45-0-0-0-1-1    
            2-50-9-5-0-0-0    
            3-20-17-5-0-1-1   
            F                 
 Total de Fallos de Página del Proceso P01: 11
 Proc.  -        -        -        -        -        -        -        -        -        -        
 Marco  M0       M1       M2       M3       M4       M5       M6       M7       M8       M9       
 Pág.   -        -        -        -        -        -        -        -        -        -        
 UsoRec -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M10      M11      M12      M13      M14      M15      M16      M17      M18      M19      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M20      M21      M22      M23      M24      M25      M26      M27      M28      M29      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

        -        -        -        -        -        -        -        -        -        -        
        M30      M31      M32      M33      M34      M35      M36      M37      M38      M39      
        -        -        -        -        -        -        -        -        -        -        
        -        -        -        -        -        -        -        -        -        -        

    |                                                                                             
 BM |  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
    |  0                                                                                          

                                |
       -  -  -  -  -  -  -  -  -|M: 40
                                |

    |   P01                                                                           |       
 BT |  - 47  7 47 77 47 47 47 20 47  5 47  5 47 50 47 50 47 27 47 22 47 26 47 30 45   |T= 26 
    |  0  1                                                                         26|       

───────────────────────────────────────────────────────────────────────

 Tiempo: 26  
 Ejecución terminada.
 -----------------------------------------------------------

 ┌─────┬─────┬─────┬─────┬──────┬──────┐
 │ Ref │ Tll │ Tej │ Mem │ TEsp │ Tret │
 ├─────┼─────┼─────┼─────┼──────┼──────┤
 │ P01 │   1 │  25 │   4 │    0 │   25 │
 └─────┴─────┴─────┴─────┴──────┴──────┘

 ┌─────────────────────────────┬─────────────────────────────┐
 │ T. espera medio: 0          │ T. retorno medio: 25.00     │
 └─────────────────────────────┴─────────────────────────────┘

 ┌───────────────────────────────────────────────────────────┐
 │ Total de Fallos de Página: 11                             │
 └───────────────────────────────────────────────────────────┘
