![Page 1: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/1.jpg)
![Page 2: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/2.jpg)
¿Que es un Sistema
Operativo?
![Page 3: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/3.jpg)
Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar el manejo y la utilización de la computadora, haciendolo seguro y eficiente
![Page 4: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/4.jpg)
Sist. Oper
Monotarea
Multitarea
![Page 5: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/5.jpg)
S.O. Monotarea
Un sistema se dice que es monotarea cuando divide la permite tener en un solo proceso de usuario en la memoria además del sistema operativo y hasta que este proceso de usuario no termine no permite cargar otro. programa de usuario.
![Page 6: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/6.jpg)
S.O. Multitarea
Un sistema se dice que es multitarea cuando permite que coexistan varios procesos activos a la vez
![Page 7: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/7.jpg)
Sist. Oper
Gestión de recursos
Ejecución de servicios para los programas
Ejecución de los mandatos y ordenes de los usuarios
Tareas del sistema operativo
![Page 8: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/8.jpg)
Sistema operativo como gestor de recursos
a) Asignación de recursos
b) Protección
c) Monitoreo de recursos
d) ejecución de programas
![Page 9: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/9.jpg)
Dispositivo que está a disposición para ser utilizado, generalmente es administrado por el Gestor o administrador de recursos del S.O. dependiendo de las condiciones existente
RECURSO
![Page 10: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/10.jpg)
Unidades de almacenamiento
ABC
Z
Disquetera
Disco duro Disco secundario particiones de Discos C.D. Grabadoras cintas de respaldo otros periféricos de almacenamiento
![Page 11: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/11.jpg)
![Page 12: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/12.jpg)
Proceso Lotes (Batch)
Ent./SalImpresiónAsignación de memoria
almacenamiento
![Page 13: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/13.jpg)
¿Que es un Proceso?
![Page 14: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/14.jpg)
Cualquier tarea activa es un proceso en ejecución
Estas pueden ser creadas por el usuario o responsabilidad directa del sistema operativo
![Page 15: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/15.jpg)
El proceso en general es un programa en ejecución
Este puede ser creado, ejecutado y destruido, por el Sistema Operativo de acuerdo con las ordenes que imparte el usuario
![Page 16: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/16.jpg)
Control de procesos
Ejecución de programas
Controlar las condiciones de ejecución
Comunicar y sincronizar un programa con otros
![Page 17: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/17.jpg)
Estados de los Procesos
• En estado de “ejecución” (si tiene en ese momento la CPU).
• En estado de “listo” (cuando podría usar una CPU, si hubiera una disponible).
• En estado “bloqueado” (si espera que ocurra algo).
![Page 18: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/18.jpg)
• Lista de “listos”– Se mantiene en orden de prioridades.
• Lista de “bloqueados”– Desordenada.– Los procesos se desbloquean en el
orden en que tienen lugar los eventos que están esperando.
![Page 19: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/19.jpg)
Transiciones de estado de Procesos
• Cuando un proceso es admitido, es insertado en la Lista de “listos” y se va moviendo hacia la cabeza a medida que se completan los procesos anteriores.
• Cuando llega a la cabeza y la CPU está disponible, hace una transición del estado de “listo”al de “ejecución”.
![Page 20: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/20.jpg)
• La asignación del primer proceso es llamado despacho y es ejecutado por el despachador.
• Mientras tenga la CPU, está en ejecución.
• Para evitar que un proceso monopolice el sistema, se ajusta un “reloj de interrupción”, volviéndolo al estado de listo.
![Page 21: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/21.jpg)
El Bloque de Control• Es una estructura de datos que contiene
cierta información acerca del proceso :– Estado actual del Proceso.– Identificación única del Proceso.– Prioridad del Proceso.– Apuntadores para localizar la memoria del
proceso.– Area para preservar registros.
• Mantiene la información que precisa para reiniciar el proceso cuando consiga la CPU.
![Page 22: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/22.jpg)
Operaciones sobre Procesos• Un Sist.Operativo que administre procesos por
lo menos debe ser capaz de realizar:
– Crear un Proceso– Destruir un Proceso– Reanudar un Proceso– Cambiar la prioridad de un Proceso– Bloquear un Proceso– Despertar un Proceso– Despachar un Proceso
![Page 23: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/23.jpg)
• La Creación de un Proceso implica, por lo menos :– Dar nombre al Proceso
– Insertar un Proceso en la Lista de Procesos conocidos
– Determinar la prioridad inicial del Proceso
– Crear el bloque de control de Proceso
– Asignar los recursos iniciales del Proceso
![Page 24: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/24.jpg)
• Un proceso puede crear un nuevo Proceso– Padre e hijo– Cada hijo, un solo padre– Cada padre puede tener varios hijos
• La destrucción de un proceso es mas complicada:– En algunos SO un proceso se destruye
automáticamente al destruir al padre– En otros continúan independientemente de
sus padres– Proceso 1 (uno), padre de todos ?
![Page 25: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/25.jpg)
Procesamiento de Interrupciones
• Una interrupción es el evento que altera la secuencia en que el procesador ejecuta las instrucciones.
• Cuando ocurre la interrupción(que es generada por el Hardware), entonces :– El SO obtiene el control.– El SO salva el estado del proceso
interrumpido.– El SO analiza la interrupción y pasa el
control a la rutina apropiada.
![Page 26: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/26.jpg)
• Una interrupción debe ser iniciada por un proceso en ejecución.
ó• Por un evento no relacionado con
dicho proceso.
![Page 27: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/27.jpg)
Tipos de Interrupciones
• El siguiente es el esquema de los procesadores IBM de gran porte– Interrupciones SVC (llamada al Supervisor)– Interrupciones de Entrada/Salida– Interrupciones externas– Interrupciones de reinicio– Interrupciones de verificación de programa– Interrupciones de verificación de la máquina
![Page 28: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/28.jpg)
Kernel (núcleo) del SO• Las operaciones que implican procesos son
controladas por una parte de la programación del SO, que es llamada núcleo ó kernel.
• Suele permanecer en la memoria principal.
• Una de sus funciones mas importantes es el proceso de las interrupciones ya que la rápida respuesta a ellas mide la perfomance.
![Page 29: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/29.jpg)
Funciones del Núcleo
• Manipulación de interrupciones.
• Creación y destrucción de procesos.
• Cambio de estados de procesos.
• Suspensión y reanudación de procesos.
• Sincronización de procesos.
• Comunicación entre procesos.
• Manipulación de bloques de control que se encarga de el despacho de procesos.
![Page 30: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/30.jpg)
• Soporte de las actividades de E/S
• Soporte de la asignación y liberación del almacenamiento.
• Soporte del Sistema de Archivos.
• Soporte de un mecanismo de llamada/retorno al procedimiento.
• Soporte de ciertas funciones contables del SO.
![Page 31: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/31.jpg)
Habilitación e inhabilitación de interrupciones
• Al núcleo suele entrarse mediante una interrupción.
• El núcleo inhabilita las interrupciones mientras responde a ellas.
• Una vez determinada la causa de la interrupción, el núcleo pasa su procesamiento al proceso específico del sistema diseñado para manejar ese tipo de interrupción.
![Page 32: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/32.jpg)
Administración de la memoria
![Page 33: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/33.jpg)
• La parte del Sistema Operativo que administra la utilización de la memoria se llama “ADMINISTRADOR DE LA MEMORIA”
• Sus funciones son:– Llevar un registro de la memoria que se está
utilizando.– Llevar un registro de la memoria libre.– Asignar espacio a los procesos cuando la
necesiten y liberarla al terminar.– Administrar el intercambio entre la memoria
principal (virtual) y el disco.
![Page 34: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/34.jpg)
Administración Sin Paginación:
• No desplazan los procesos de la memoria principal al disco.
• Son los mas sencillos pero mas lentos.• Con los precios de la memoria, es posible que
éste tipo de administración vuelva a utilizarse.
![Page 35: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/35.jpg)
• Monoprogramación:
– Un proceso por vez cargado en la memoria.
– La memoria se encuentra dividida entre el Sistemas Operativo y el Proceso.
– El SO podría estar al principio ó al final de la memoria.
![Page 36: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/36.jpg)
• Multiprogramación:
– Permite aprovechar los tiempos en que los procesos se encuentran esperando operaciones de ES.
– Facilita la atención de una aplicación al dividirla en dos ó mas procesos.
– Permite manejar varios usuarios en forma simultanea e interactiva.
![Page 37: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/37.jpg)
Multiprogramación con particiones fijas
![Page 38: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/38.jpg)
• Es la manera mas sencilla de dividir la memoria (partes iguales ó distintas).
• Cualquier espacio que no sea utilizado por una tarea se pierde.
• Este sistema con particiones fijas elegidas por el operador al principio del día fue utilizado durante varios años por IBM OS/360 y se llamó MFT.
![Page 39: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/39.jpg)
Reasignación y protección
• Son dos problemas esenciales a resolver en la multiprogramación.
• Una posible solución es modificar las instrucciones del programa al cargarlo a memoria.
• Lo que se hace es sumar como base de cálculo la dirección del comienzo de la partición que le toque y sumarle la dirección de la instrucción.
![Page 40: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/40.jpg)
• Esta técnica se conoce como:
– Base + Desplazamiento
• Se debe incluir en el programa una lista ó mapa de bits que indique cuales son direcciones a reasignar y cuales son elementos que no deben ser reasignados.
• Esto no resuelve que un programa escrito con maldad siempre apunte a una dirección fija.
![Page 41: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/41.jpg)
• No existe forma de evitar que un programa construya una instrucción de lectura ó escritura en una dirección de memoria.
• Obviamente, no es deseable que se utilice memoria del SO ó asignada a otros usuarios.
• IBM optó por colocar una contraseña de 4 bits a bloques de 2 Kb de memoria.
• La IBM/360 detenía cualquier acceso a una parte de la memoria cuyo código de protección fuera distinto.
![Page 42: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/42.jpg)
• Puesto que el Sistema Operativo era el único autorizado para modificar los códigos y las claves de protección, los procesos de los usuarios no podían interferir entre sí y con el sistema operativo.
![Page 43: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/43.jpg)
Intercambio y Paginación:
• Es denominado el traslado del disco hacia la memoria principal y viceversa.
• Se utiliza cuando se trabaja en tiempo compartido y existen mas usuarios que los que puede albergar la memoria principal.
![Page 44: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/44.jpg)
Multiprogramación con particiones variables
![Page 45: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/45.jpg)
• En la práctica las particiones fijas no son muy adecuadas ya que la mayor parte de la memoria se desperdicia con programas menores que sus particiones.
• Al utilizar particiones variables el número y tamaño de los procesos varia en forma dinámica durante el día.
• Mejora el uso de la memoria pero hace mas compleja su asignación y re-asignación.
![Page 46: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/46.jpg)
• Una técnica es compactar la memoria:
– Combinar todos los huecos en uno grande, si se mueven todos los procesos hacia la parte inferior.
– Consume mucho tiempo de CPU – Una máquina de 1Mb de memoria tardaría un segundo en realizarlo.
• Si se espera que la mayoría de los procesos crezcan a medida que se ejecutan, sería buena idea asignar memoria adicional.
![Page 47: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/47.jpg)
• Existen tres formas utilizadas por los Sistemas Operativos para registrar el uso de la memoria:
– Mapa de bits
– Listas
– Sistemas amigables
Analizaremos las listas
![Page 48: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/48.jpg)
Administración con listas ligadas:
• Se trata de una lista con punteros a los segmentos de memoria asignados ó libres, en dónde un segmento puede ser un proceso ó un hueco entre dos procesos.
• Cada entrada de a lista direcciona a un espacio libre ó a un proceso.
![Page 49: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/49.jpg)
• Cada uno de los nodos incluye:
– Dirección en donde comienza el espacio apuntado.
– Su longitud.– Un puntero a la siguiente entrada.
• Normalmente la lista de segmentos está ordenada por direcciones.
![Page 50: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/50.jpg)
• Un proceso que termina, en general tiene dos vecinos (excepto cuando se encuentra en alguno de los bordes de la memoria).
• Estos vecinos pueden ser procesos ó espacios libres, lo que produce cuatro combinaciones posibles.
![Page 51: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/51.jpg)
a) A X B A B
b) A X A
c) X B B
d) X
![Page 52: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/52.jpg)
• Cuando se mantiene una lista ordenada por direcciones, existen diferentes algoritmos para asignarle memoria a un proceso nuevo:
• Primero en ajustarse (first fit):– Se revisa toda la lista hasta encontrar un
espacio lo suficientemente grande.– El espacio se divide en dos parte:
• El proceso• La memoria no utilizada
– Es lo más rápido.
![Page 53: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/53.jpg)
• Mejor ajuste (best fit):– Se busca en toda la lista hasta encontrar
el espacio mas adecuado.– Es mas lento ya que tiene que revisar
toda la lista antes de definir la asignación.
– Tiende a definir la memoria con espacio libres pequeños, sin utilidad.
• Peor ajuste (worst fit):– Se trata de tomar siempre el espacio libre
mas grande.– Tampoco es una buena idea.
![Page 54: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/54.jpg)
• Se pueden mejorar éstos algoritmos con dos listas:
– Una para los procesos.
– Otra para los espacios libres, ordenada por tamaños.
• Ajuste rápido:
– Se mantiene una lista independiente para los tamaños utilizados mas frecuentemente.
![Page 55: ¿Que es un Sistema Operativo? Un Sistema Operativo es un programa que tiene encomendadas una serie de funciones diferentes y cuyo objetivo es simplificar](https://reader035.vdocumento.com/reader035/viewer/2022062618/54ff2aab4a7959887e8b4fce/html5/thumbnails/55.jpg)
Memoria Virtual• La idea es que la combinación de
programa, datos y necesidades de crecimiento puedan exceder la cantidad de memoria disponible para el proceso.
• El SO mantiene aquellas partes del programa que se utilizan en cada momento en la memoria principal y el resto permanece en disco.