examen2 Flashcards
¿Cuál es el algoritmo que en segmentación aprovecha mejor el espacio de memoria cuando se debe escribir un nuevo segmento o framework?
Best-Fit
¿Cuál es la técnica utilizada para acomodar los diferentes segmentos de memoria de manera que optimice el espacio que utilizan?
Compresión de segmentos
¿Cuáles son los tipos de paginación existentes a la hora de inicializar el sistema operativo?
Fijos
Tamaños desiguales (2^x)
¿Cómo se llama el mecanismo para el cual se asignan páginas dinámicas en potencias de 2?
Buddy System
¿Cuál es un algoritmo para evitar deadlock?
Algoritmo del banquero
¿Cuál es el algoritmo utilizado para realizar un reemplazo de procesos con conocimientos al futuro?
Óptimo
¿Cuál algoritmo se utiliza para escoger de forma asociativa el proceso que le falte menos tiempo para ser ejecutado?
SRT
¿Qué es el código de Hamilton? BUSCAR
Raid, es el cuatro es para hacer que sea más eficiente, tenemos que buscar respuesta3
¿RAID que realmente no es RAID? BUSCAR
JBOD (Just a Bunch of Disks): JBOD no es técnicamente un RAID, ya que no ofrece redundancia de datos ni mejora el rendimiento. En lugar de eso, simplemente agrupa varios discos en una sola unidad lógica, lo que permite un mayor espacio de almacenamiento. Sin embargo, si un disco falla, los datos almacenados en ese disco se perderán.
¿Qué es DLB?
Dynamic Load Balancing.
Técnica utilizada en sistemas informáticos para distribuir eficientemente la carga de trabajo entre múltiples recursos, como procesadores, servidores o nodos de una red.
¿Qué es la tabla de páginas invertidas?
Es una estructura de datos utilizada en sistemas operativos para gestionar la memoria virtual. Se utiliza para realizar la traducción entre las direcciones virtuales y físicas de la memoria.
Describa una técnica utilizada para prevenir el dealock BUSCAR
No dejar iniciar un proceso
Dejarse todos los recursos
algoritmos cualitativos: cualidades (fifo) SUBJETIVOS
First come first served FIFO: procesos
Round robin: Apropiativo
W = waiting time
Max(w) a partir del ultimo bloque que ejecuta
Algoritmos cuantitativos: basan en rendimiento
Shortest process next: no apropiativo
E = execution time
Hago el mas rapido de ejecutar
Shortest remaining timming:
Apropiativo: Ejecuta el mas rapido en ese momento una parte de y luego vuelve a preguntar
Highest response ratio next:
No apropiativo
¿Cuáles son los estados en los que se considera que un proceso se encuentra en calendarización larga?
Situación en la que un proceso permanece en estado de espera durante un tiempo prolongado sin poder ejecutarse. Esto puede ocurrir debido a varios factores, como la falta de recursos, bloqueo de recursos por otros procesos o una mala planificación de la calendarización.
- new
- exit
Algoritmo de banquero
El algoritmo del banquero funciona encontrando estados de este tipo. Los procesos piden recursos, y son complacidos siempre y cuando el sistema se mantenga en un estado seguro después de la concesión. De lo contrario, el proceso es suspendido hasta que otro proceso libere recursos suficientes.
evitar el interbloqueos
Diferencia entre página y segmento
Tamaño definido e indefinido, respectivamente
¿Qué es y dónde esta un frame
Bloque de tamaño fijo en la memoria principal e iguales entre si
Equivalente de una página en memoria principal
¿Qué es fragmentación interna?
El espacio sin info dentro del bloque de memoria que se desperdicia porque lo que se le dio (info) no llena, kinda
¿Qué es compactación?
Mover la memoria para que no existan huecos en el segmento
¿Qué es fragmentación externa?
Cuando en la linea hay un hueco y tengo un bloque que mas ooo menos cabe, se pone ahi
No pasa en el bloque pasa en los segmentos
Cuánto es un mega?
1024
Qué es paginación?
Dividir el proceso en la memoria secundaria en páginas
Página
Bloque de tamaño definido memoria secundaria
Segmento
Bloque de tamaño indefinido memoria secundaria
Requerimientos para gestión de memoria
Relocation: se úbica en espacio de memoria y se le ubica un espacio en la memoria
Protection: No invadir espacios que no tenga accesibilidad
Sharing: Dan una copia del programa en vez de su propia copia separada
Logical organization: donde creo que esta el proces
Physical organization: donde realmente esta el processo
Formas de dividir la memora
Tamaños fijos
-Particionamiento de igual tamaño
- Particionamiendo desigual
Particionamiendo dinámico
Buddy system
Buddy system
Bloques fijos y dinámicos: No existen bloques fijos hasta que se necesiten lo que lo vuelve dinámico
Divide el espacio de la memoria a la mitad las veces que sean necesarias hasta que esa mitad sea menor a lo que quiero guardar
Los bloques son dinámicos no la longitud
Crea páginas dinámicas no segmentos
Potencias de 2
Tamaños fijos / equal size
Mismo tamaño entre bloques: un mismo bloque se mantiene del mismo tamaño
Solo mover datos de ese tamaño
Particionamiento de igual tamaño
Los bloques mantienen su tamaño y todos tienen el mismo
Desventaja del particionamiento de igual tamaño
Fragmentación interna
Particionamiento desigual
Los bloques mantienen su tamaño pero no todos los bloques son del mismo tamaño
ejm: 2 de 10 megas, 3 de 5 megas y asi
Particionamiento dinámico
El particionamiento se crea conforme se necesite
En este ya no es con páginas es con segmentos
Deja huecos → fragmentación externa → para evitarlo se puede compactar
Algoritmos para posicionamiento
Best fit
First fit
Next fit
Best fit
Es el que mas dura porque recorre toda la memoria
Escoge donde desperdicia menos memoria
Más eficiente en memoria overall
No recorre todo si encuentra un lugar donde desperdicie 0
First fit
Escoge el primer lugar donde quepa, no importa si desperdicia
Empieza de 0
Next fit
Empieza en n, donde n es el último que se metió
si el ultimo se metió a la mitad del segmento este se mete a la derecha de el de la mitad
Mejor en tiempo computacional vs first fit
Más eficiente en memoria vs first fit
Cuál es el orden de los algoritmos para posicionamiento según el más eficiente en memoria?
Best fit
Next fit
First fit
Cuál es el mejor en tiempo computacional de los algoritmos para posicionamiento?
Next fit
Formas para calcular las derecciones de memoria
Física
- Dirección real en la memoria
- Cuando corre el programa
Relativa
- Respecto a algo, del puntero a dos a la derecha
Lógica
- En la posición de memoria del programa
NUMA
Non-Uniform Memory Access
diseño de memoria utilizado en multiprocesamiento donde toda la memoria se accede en posiciones relativas de otro proceso o memoria compartida entre procesos
Cómo se limpia x?
Por demanda: cuando se escoge como remplazo
Por rutina:
El cpu puede hablar con el disco duro?
NO
Qué es una página invertida?
Una sola tabla para todos los procesos, por eso tiene que tener un identificador
Numero de pagina
Id proceso
Bandera
Cadena de cual le sigue despues
Qué es el TLB?
Translation lookaside buffer
Memoria asociativa, es muy rápida
Le da velocidad a la memoria virtual
Principio de localidad más fuerte
Miss y hits, los miss tienen penalización de tiempo
Porqué los discos duros tiene que ser de estado sólido?
Muy cercano a una ram
La memoria virtual es mas grande que el disco duro?
A veces
Memoria virtual
Esta en el disco duro y simula ser la ram
Thrashing
El estado en el cual el sistema dura mas tiempo cambiando piezas de procesos en vez de ejecutando instrucciones
Waste of time, se gasta mas tiempo haciendo swapping que ejecutando
Borrado lógico
Es una variable de control que marca algo como basura pero no lo borra
Algoritmos de reemplazo
Óptimo: Conocimiento del futuro, deterministico
Left resent use: Usa el pasado, ve cual se uso hace mas tiempo y lo swappea por ese
FIFO: Se cambia por el primero que entra, el mas viejo en entrar
Segunda oportunidad/reloj: todos tienen dos vidas, el puntero lo sigue, si entra uno del mismo, entra otro del mismo gana una vida
Algoritmos de reemplazo: porqué no es posible fijo y global a la vez?
no se puede cambiar una pagina de un proceso porque ya no seria fixed
Algoritmos de reemplazo: local y variable
los reemplazos solo donde hay frames de los procesos de la que se quiera cambiar (frames fijos, memoria variable)
Algoritmos de reemplazo: global y variable
los reemplazos de cualquier frame de cualquier memoria de cualquier proceso