El documento describe varios temas relacionados con sistemas operativos, incluyendo los límites de la programación multiprocesada según Amdahl, métodos para medir la aceleración de sistemas, tipos de procesos, estructura del bloque de control de proceso, concurrencia, bloqueos mutuos, estrategias para enfrentar bloqueos, algoritmos de planificación de procesos, balanceo de cargas en sistemas multiprocesador, y componentes de almacenamiento como discos, RAID y gestores de volúmenes lógic
25. MEDIO FÍSICO
A lo largo de los últimos 40
años, el término genérico
de disco se ha empleado
prácticamente como
sinónimo de medio de
almacenamiento a largo
plazo
la razón de separar este
contenido hacia un apéndice es
que, si bien estas funciones
resultan relevantes para los
sistemas operativos
y éstos cada vez más van
asumiendo las funciones siendo
implementadas por hardware
especializado
26. los discos
duros
los flexibles
(floppies).
DISCOS MAGNÉTICOS ROTATIVOS
La principal diferencia entre
éstos es que, los primeros,
son almacenamiento
interno en los equipos de
cómputo y, los segundos,
fueron pensados para ser
almacenamiento
transportable.
mayor
capacidad y son mucho
más rápidos
velocidades
de rotación 300 y 400
revoluciones por minuto
27. ALMACENAMIENTO EN ESTADO
SÓLIDO
un esfuerzo para ser utilizados pronto y
sin tener que esperar a que los
desarrolladores de sistemas operativos
adecuaran los controladores, se
conectan mediante la misma interfaz y
empleando la misma semántica que un
disco rotativo. Esto no sólo evita que se
aprovechen sus características únicas,
Memoria flash presentan una gran variabilidad tanto en su
tiempo de acceso como en su durabilidad
bajo costo y capacidad.
NVRAM Unidades RAM No Volátil. Almacenan la
información en chips de RAM estándar, con un respaldo
de batería para mantener la información cuando se
desconecta la corriente externa.
Velocidad y durabilidad
Precio.
28. RAID: MÁS ALLÁ DE LOS LÍMITES FÍSICOS .
Arreglo Redundante de Discos
Baratos (Redundant Array of
Inexpensive Disks)
Especifica un conjunto
de niveles, cada uno de
ellos diseñado para
mejorar distintos
aspectos del
almacenamiento en
discos.
29. RAID NIVEL 0: DIVISIÓN EN FRANJAS
las lecturas y escrituras al
volumen ya no estarán sujetas al
movimiento de una sola cabeza
cada uno de los discos se
manejara por separado
30. RAID NIVEL 1: ESPEJO .
basta con obtener los
datos de uno de los
discos; el controlador
puede incluso
programar las
solicitudes de lectura.
los datos son grabados
de forma simultánea e
idéntica en todos los
discos que formen
parte del volumen
31. LOS NIVELES 2, 3 Y 4 DE RAID
Los siguientes tres niveles
de RAID combinan
propiedades de los
primeros junto con un
algoritmo de verificación
de integridad y corrección
de errores.
RAID NIVEL 5: PARIDAD DIVIDIDA POR BLOQUES
Buen equilibrio: brinda el espacio
total de almacenamiento de todos
los discos
32. RAID NIVEL 6: PARIDAD POR REDUNDANCIA P+Q
Cinco discos organizados en RAID 6. Al igual
que bajo RAID 5, las franjas de paridad se
van alternando entre todos los discos.
33. NIVELES COMBINADOS DE RAID .
• Seis discos organizados en RAID 0+1, ilustrando cómo una combinación errónea puede
reducir la tolerancia máxima a fallos del arreglo.
34.
35. ¿QUÉ ES UN PROCESO?
• Es una abstracción de un
programa en ejecución y es la
unidad de trabajo del sistema.
36. Los estados de un proceso obedecen a su
participación y disponibilidad dentro del sistema
operativo y surgen de la necesidad de controlar la
ejecución de cada proceso.NUEVO
LISTO EN
EJECUCIÓN
BLOQUEADO
TERMINADO
Proceso creado
Interrumpido
Asignando procesador
Pedidos completados Pedidos a componentes E/S
Salida
37. TIPOS DE PROCESOS
TIPOS DE PROCESOS:
Son aquellos que por mucho
tiempo han estado listos o en
ejecución, esto es, procesos
que estén en una larga ráfaga
limitada por CPU.
Los que en este momento
estén en una ráfaga limitada
por entrada-salida y requieran
atención meramente ocasional
del procesador, o tienden a
estar bloqueados esperando a
eventos (como los procesos
interactivos).
LARGOS
CORTOS
38. BLOQUE DE CONTROL DE PROCESO (PCB)
Estado del proceso
Contador de programa
Registros de CPU
Información de planificación
(scheduling)
Información de administración
de memoria
Información de contabilidad
Estado de E/S
39. CONCURRENCIA
Son dos o más eventos cuyo orden no se puede predecir el momento en el que
ocurrirán.
• Problema productor-consumidor
• Problema de los lectores y los escritores
• La cena de los filósofos
• Los fumadores compulsivos
40. BLOQUEOS MUTUOS
Cuatro procesos (líneas azules) compiten por un recurso
(círculo gris), siguiendo una política de derecha-antes que-
izquierda. Un bloqueo mutuo aparece cuando todos los
procesos bloquean el recurso simultáneamente (líneas
negras). El bloqueo puede resolverse rompiendo la
simetría.
41. • En el siguiente ejemplo, dos procesos compiten
por dos recursos que necesitan para funcionar,
que solo pueden ser utilizados por un proceso a
la vez. El primer proceso obtiene el permiso de
utilizar uno de los recursos (adquiere el lock
sobre ese recurso). El segundo proceso toma el
lock del otro recurso, y luego intenta utilizar el
recurso ya utilizado por el primer proceso, por lo
tanto queda en espera. Cuando el primer
proceso a su vez intenta utilizar el otro recurso,
se produce un interbloqueo, donde los dos
procesos esperan la liberación del recurso que
utiliza el otro proceso.
42. ESTRATEGIAS PARA ENFRENTAR SITUACIONES DE
BLOQUEO:
Prevención
Evasión
Detección y recuperación
Algoritmo del avestruz
43. La Planificación de procesos tiene como objetivos:
Ser justo
Maximizar el rendimiento
Ser predecible
Minimizar la sobrecarga
Equilibrar el uso de recursos
Evitar la postergación indefinida
Favorecer el uso esperado del sistema
Dar preferencia a los procesos que podrían causar bloqueo
Favorecer los procesos con un comportamiento deseable
Degradarse suavemente
44. El esquema más simple de planificación es el primero llegado, primero
servido
(first come, first serve, FCFS)
ALGORITMO FCFS (FIFO)
48. BALANCEO DE CARGAS
En un sistema multiprocesador, la situación
ideal es que todos los procesadores estén
despachando trabajos a 100% de su
capacidad.
La divergencia entre la carga de cada uno de
los procesadores debe ser lo más pequeña
posible.
49. La migración activa o migración por empuje
(push migration)
Consiste en una tarea que ejecuta como parte del núcleo y
periódicamente revisa el estado de los procesadores, y en
caso de encontrar un desbalance mayor a cierto umbral,
empuja a uno o más procesos de la cola del procesador más
ocupado a la del procesador más libre.
50. la migración pasiva o migración por jalón
(pull migration)
Cuando algún procesador
queda sin tareas pendientes,
ejecuta al proceso especial
desocupado. Ahora, el proceso
desocupado no significa que el
procesador detenga su
actividad, ese tiempo puede
utilizarse para ejecutar tareas.
51.
52. MEDIO FÍSICO
A lo largo de los últimos 40
años, el término genérico
de disco se ha empleado
prácticamente como
sinónimo de medio de
almacenamiento a largo
plazo
la razón de separar este
contenido hacia un apéndice es
que, si bien estas funciones
resultan relevantes para los
sistemas operativos
y éstos cada vez más van
asumiendo las funciones siendo
implementadas por hardware
especializado
53. los discos
duros
los flexibles
(floppies).
DISCOS MAGNÉTICOS ROTATIVOS
La principal diferencia entre
éstos es que, los primeros,
son almacenamiento
interno en los equipos de
cómputo y, los segundos,
fueron pensados para ser
almacenamiento
transportable.
mayor
capacidad y son mucho
más rápidos
velocidades
de rotación 300 y 400
revoluciones por minuto
54. ALMACENAMIENTO EN
ESTADO SÓLIDO
un esfuerzo para ser utilizados
pronto y sin tener que esperar
a que los desarrolladores de
sistemas operativos adecuaran
los controladores, se conectan
mediante la misma interfaz y
empleando la misma
semántica que un disco
rotativo. Esto no sólo evita
que se aprovechen sus
características únicas,
Memoria flash presentan una gran variabilidad tanto en su
tiempo de acceso como en su durabilidad
bajo costo y capacidad.
NVRAM Unidades RAM No Volátil. Almacenan la
información en chips de RAM estándar, con un respaldo
de batería para mantener la información cuando se
desconecta la corriente externa.
Velocidad y durabilidad
Precio.
55. RAID: MÁS ALLÁ DE LOS LÍMITES FÍSICOS .
Arreglo Redundante de Discos
Baratos (Redundant Array of
Inexpensive Disks)
Especifica un conjunto
de niveles, cada uno de
ellos diseñado para
mejorar distintos
aspectos del
almacenamiento en
discos.
56. RAID NIVEL 0: DIVISIÓN EN FRANJAS
las lecturas y escrituras al
volumen ya no estarán sujetas al
movimiento de una sola cabeza
cada uno de los discos se
manejara por separado
57. RAID NIVEL 1: ESPEJO .
basta con obtener los
datos de uno de los
discos; el controlador
puede incluso
programar las
solicitudes de lectura.
los datos son grabados
de forma simultánea e
idéntica en todos los
discos que formen
parte del volumen
58. VELES 2, 3 Y 4 DE RAID
Los siguientes tres niveles
de RAID combinan
propiedades de los
primeros junto con un
algoritmo de verificación
de integridad y corrección
de errores.
RAID NIVEL 5: PARIDAD DIVIDIDA POR BLOQUES
Buen equilibrio: brinda el espacio
total de almacenamiento de todos
los discos
59. RAID NIVEL 6: PARIDAD POR REDUNDANCIA P+Q
Cinco discos organizados en RAID 6. Al igual
que bajo RAID 5, las franjas de paridad se
van alternando entre todos los discos.
60. NIVELES COMBINADOS DE RAID .
• Seis discos organizados en RAID 0+1, ilustrando cómo una combinación errónea
puede reducir la tolerancia máxima a fallos del arreglo.
61. LVM: el Gestor
de Volúmenes
Lógicos
ZFS .
MANEJO
AVANZADO DE
VOLÚMENES
Permite agregar
volúmenes físicos a un grupo de
volúmenes, para crear las unidades
lógicas, donde se alojarán los sistemas
de archivos propiamente.
simplificación en la administración del
sistema, su operación sigue siendo
orientada a bloques