Breve prólogo: Este resumen sólo sirve para aquel que haya leído

Transcripción

Breve prólogo: Este resumen sólo sirve para aquel que haya leído
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Breve prólogo:
Este resumen sólo sirve para aquel que haya leído el Stallings a conciencia, por lo
menos una vez. Resume los puntos más importantes de la teoría (a entender del autor) y
además provee de las respuestas a las preguntas más clásicas sobre teoría de la materia.
Es importante hacer hincapié en temas de ALGORITMOS de reemplazo de páginas,
DISCO, etc, que aquí no están tratados porque se asume que la persona que utilice este
resumen tiene conocimiento por la parte práctica de la materia. Lamentablemente esta
materia no está correctamente evaluada ni brindada a nivel académico, con lo cual esto
es una minúscula ayuda para quienes estén cursando el final.
Espero que le sea tan útil a quien la use, como a quien la redactó, para la aprobación de
la materia.
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 3 – PROCESS CONTROL
PROCESS SWITCH: El SO toma control de la ejecución luego de sacar al proceso que se está
ejecutando.
-
CAUSAS
o INTERRUPCIÓN: Externo al proceso
o TRAP: Error o excepción en la ejecución
MODE SWITCH: Salva el contexto, posiciona el PROGRAM COUNTER en la instrucción de I/O al
handler de I/O y SWITCHEA a modo KERNEL por si hay instrucciones privilegiadas.
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 4 – THREADS, SMP Y MICROKERNELS
MULTITHREADS
1) Dirección virtual para la imagen del proceso
2) Acceso protegido a los recursos
Thread compuesto por:
-
Estado del Thread
Status del Thread
Stack de Ejecución
- Almacenamiento estático de variables
- Acceso a Recursos
BENEFICIOS
1
2
3
Más rápida creación/eliminación del thread
Más rápida velocidad de switch entre threads
Comunicación mejorada entre programas en ejecución
ESTADOS
READY
sus Threads)
RUNNING
BLOQUED
(Si se suspende el proceso, también todos
Sincronización: Todos los elementos son compartidos por todos los threads con lo cual deben
sincronizarse.
ULT
Ventajas:
-
No utilizan privilegios del modo KERNEL (No hay OVERHEAD por SWITCH)
Application specific.
Portables entre S.O´s
Desventajas:
-
Los SYSCALLS son bloqueantes en varios SO´s (Y por lo tanto se bloquean todos los
threads)
No toma ventajas del multiprocesamiento
KLT
Ventajas:
-
El KERNEL schedulea muchos threads
Si se bloquea un thread, se ejecuta otro del mismo proceso
Las rutinas del KERNEL pueden ser multithread
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Desventajas:
-
Switcheo entre Threads del mismo proceso requiere MODE SWITCH
SMP: Varios CPU con una memoria para todos, el KERNEL se puede ejecutar en cualquier micro.
Consideraciones del SO:
-
Procesos simultáneos concurrentes
SCHEDULEO
SINCRONIZACION
MANEJO DE MEMORIA
RELIABILIDAD (CONFIANZA)
TOLERANCIA AL FALLO
MICROKERNEL: Pasa mensajes a los servicios
Beneficios
-
INTERFAZ UNIFICADA
EXTENSIBILIDAD
FLEXIBILIDAD
PORTABILIDAD
CONFIABILIDAD
SOPORTE DISTRIBUIDO
SOPORTE DE O.O.O.I
Desventaja
-
La performance es baja por el pasaje de mensajes
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 5 – CONCURRENCIA, EXCLUSION Y SINCRONIZACION
DEFINICIONES
- MULTIPROGRAMACION : Muchos procesos en un solo procesador
- MULTIPROCESAMIENTO: Muchos procesos en muchos procesadores
- DISTRIBUIDO: Clusters
- SHARE MEMORY: SMP / Master-Slave
CONCURRENCIA
- INTERACCION
o Desconocidos: Competición
o Indirectamente Conocidos: Cooperación
o Directamente Conocidos: Cooperación
- COMPETICION
o EXCLUSION MUTUA
o DEADLOCK
o STARVATION
- COOPERACION
o SHARING (Leer/escribir)
o COMUNICACIÓN (Pasaje de mensajes)
REQUERIMIENTOS
- PARA EXCLUSION MUTUA
o Debe poder entrar a la RC
o Nadie más puede entrar mientras ya entró otro
o Debe salir
- MECANISMO DE DEKKER (Tiene Busy Waiting, espera preguntando y no puede hacer
nada más mientras tanto)
- HARDWARE:
o DESACTIVAR LAS INTERRUPCIONES
 Ventajas
 Aplicable a 1 o muchos procesos
 Fácil verificación
 Soporta múltiples secciones criticas
 Desventajas
 Utiliza Busy Waiting que consume microprocesador
 Provocaría posible starvation
 Provocaría posible Deadlock
- SEMAFOROS
o Observaciones:
 Arranca en NO negativo
 Wait (--)
 Signal (++)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
-
o EXCLUSION MUTUA
 STRONG: Utiliza FIFO en la cola propia de BLOCKED (Evitar
STARVATION)
 WEAK: Usa cualquier otro ALG para la cola (No lo asegura)
MONITORES: Lenguaje de programación con PROCEDIMIENTOS, secuencia de
inicialización y datos locales.
o Características:
 Solo accesible por el monitor
 El proceso ingresa al monitor invocando sus procedimientos
 Solo un proceso ingresa al monitor, otros se suspenden aguardando
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 6 – CONCURRENCIA: DEADLOCK Y STARVATION
DEADLOCK: Bloqueo por competencia (CAP. 5) de recursos o comunicación.
- Recursos REHUSABLES: DISCO, CPU, Etc.
- Recursos CONSUMIBLES: Creado y destruido (I/O, Signals)
CONDICIONES
1
EXCLUSION MUTUA: 1 PROCESO UTILIZA UN RECURSO A LA VEZ
2
HOLD & WAIT: TOMA RECURSOS MIENTRAS ESPERA LA ASIGNACION DE OTROS
3
NO EXPULSABLE: NO SE LE PUEDEN SACAR RECURSOS ASIGNADOS
4
ESPERA CIRCULAR: UN PROCES ESPERA UN RECURSO QUE OTRO TIENE ASIGNADO
Y VICEVERSA.
DEADLOCK PREVENCION:
o INDIRECTA: Prevenir la ocurrencia de items 1,2 y 3o DIRECTA: Prevenir la ocurrencia de la 4ta condición.
DEADLOCK EVITACION: La decisión es tomada dinámicamente
o No iniciar procesos cuya demanda pueda llevar a DL
o No permitir solicitud incremental de recursos al proceso si este otorgamiento
puede llevar a DL.
 ESTADO SEGURO: Existe al menos 1 secuencia en la que se pueden
ejecutar los procesos y terminan sin DL
DEADLOCK DETECCION: No limita el otorgamiento, busca si sucede la condición 4 a través
de un algoritmo
o RECUPERACION:
 Abortar todos los procesos en DL (Más común)
 Backupear los procesos a un checkpoint anterior y reevaluar.
 Abortar en secuencia los procesos en DL para ver si los restantes
continúan en DL, evaluando nuevamente.
 Quitar y re otorgar recursos, y reevaluar cada vez. (Aprovecha que no
son determinísticos)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 7 – MANEJO DE MEMORIA
PARTICION
FIJA: Fragmentación interna
DINAMICA: Fragmentación externa (Se soluciona con compactación)
BUDDY SYSTEM: Divide en 2 el espacio, y así sucesivamente
PAGINACION: Invisible al programador, presenta FRAG INTERNA (NO EXTERNA) y de tamaño 2n
PAGINAS: Pedazo de proceso de tamaño fijo
MARCOS: Pedazo de memoria de tamaño fijo
PAGE TABLE: Por cada proceso el SO mantiene una tabla para saber en qué frame está
cada página.
SEGMENTACION: Visible al programador, presenta FRAG EXTERNA (NO INTERNA)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 8 – MEMORIA VIRTUAL
IMPLICANCIAS
1
Se puede mantener más procesos en memoria que el tamaño total de la misma.
2
Los procesos pueden ser más grandes que la memoria
THRASHING: Sacar la pieza de memoria que justo se iba a utilizar después de la actual. Perder más
tiempo swappeando que ejecutando.
TRANSLATION LOOK-A-SIDE BUFFER (TLB):
EVITA:
o 2 accesos a memoria (Uno para la PAG y otro para DATOS)
o Se utiliza la cache con los últimos pages utilizados
SEGMENTACION:
Beneficios
o Simplifica el manejo de las estructura de datos
o Permite alterar y recompilar independientemente
o Permite compartir entre procesos
o Más protección
PAGE FAULT: Cuando no se encuentra la PAGE en ningún FRAME asignado al proceso (Genera
OVERHEAD de SOFTWARE)
FETCH POLICY:
- BAJO DEMANDA: Trae la página pedida en ese momento
- PREPAGINADA: Toma los contiguos al pedido también
MANEJO DEL SET RESIDENTE:
- CANTIDAD FIJA: Cada proceso tiene X frames asignados
- CANTIDAD VARIABLE: Se le asigna dinámicamente MAS o MENOS frames
REEMPLAZO DEL SET:
- LOCAL: De los frames que se le asignaron al proceso
- GLOBAL: De todos los frames disponibles en la memoria para PROCESOS.
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 10 – MULTIPROCESSOR SCHEDULING
CLASIFICACIONES:
- Clúster (CPU + Memoria)
- ESPECIALIZADOS (CPU para cada utilidad)
REAL TIME SCHEDULING:
- HARD: Tiene fecha tope obligatoria
- SOFT: Tiene fecha tope deseable
CARACTERISTICAS:
- DETERMINISTICOS: Predefine secuencia, tiempos y resultados
- RESPUESTA: Tiempo de respuesta a un evento
- CONTROL DE USUARIO:
- CONFIABILIDAD: en caso de falla
- FAIL SOFT: Seguir cumpliendo a pesar de fallar.
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 11 – I/O Y SCHEDULEO DE DISCO
ORGANIZACIÓN:
- I/O PROGRAMADA: El micro lo hace por el proceso, y luego Busy Waiting
- I/O POR INTERRUPCION: Lo hace por el proceso, sigue ejecutando y lo interrumpe
cuando termina. Suspende el proceso mientras tanto.
- DMA: El módulo realiza el trabajo de intercambio entre el modula y la memoria. Se
interrumpe cuando termina.
DISEÑO:
- EFICIENCIA: Reducir el tiempo y cuello de botella
- GENERALIDAD: Manejo uniforme de las I/O
RAID
0
1
2
3
4
5
6
No hay redundancia de datos (Alta velocidad de TX)
Espejada (Alta velocidad de TX)
Redundancia por HAMMING (Tolerancia al fallo, acceso PARALELO)
1 solo disco redundante (Alta velocidad de TX, acceso PARALELO)
Paridad dividida (Alta velocidad de I/O, accesos INDEPENDIENTE)
1 disco de paridad (Alta velocidad de I/O, acceso INDEPENDIENTE)
Ídem anterior (Alta velocidad de I/O, acceso INDEPENDIENTE)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 12 – FILE MANAGEMENT
ALOCACION:
- CONTIGUA: Se pre alocan los bloques contiguos en la creación (Mayor velocidad de
transferencia, Fragmentación EXTERNA)
- ENCADENADA: Se enlazan con punteros en cada bloque (Acceso secuencial y menor
fragmentación externa, se pierde el principio de localidad)
- INDEXADA: Con punteros a bloques (Permite el acceso secuencial y directo)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 13 – PROCESAMIENTO DISTRIBUIDO, CLIENTE/SERVIDOR, CLUSTERES
CLIENTE/SERVIDOR:
RPC:
o SINCRO: Espera la respuesta del procedimiento llamado.
o ASINCRONO: La respuesta llega en cualquier momento, mientras el proceso
continúa trabajando.
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
CAPITULO 15 – SEGURIDAD
AMENAZAS DE SEGURIDAD:
- CONFIDENCIALIDAD: Algo es accedido por alguien autorizado
- INTEGRIDAD: Solo modificado por alguien autorizado
- DISPONIBILIDAD: solo disponible para alguien autorizado
- AUTENTICIDAD: El equipo verifica la identidad del usuario.
TIPOS DE AMENAZAS:
o INTERRUPCCIÓN
o MODIFICACION
o INTERCEPCIÓN
o FABRICACION
PROTECCIÓN:
ACL
TICKET DE CAPACIDADES
- PASSWORDS:
o SELECCIÓN:
 EDUCAR AL USUARIO (POCO PROBABLE)
 PASSWORD GENERADA POR PC (POCO SEGURA, DIFICIL DE RECORDAR
PARA EL USER)
 CHEQUEO PROACTIVO (CUANDO EL USUARIO INGRESA SU
CONTRASEÑA EL SISTEMA SE LA VALIDA CONTRA CIERTOS
PARAMETROS)
 CHEQUEO REACTIVO (UN SISTEMA VALIDA LAS CONTRASEÑAS,
MUCHO CPU)
SOFTWARE MALICIOSO:
- BOMBA LOGICA
- VIRUS (REPRODUCCIÓN)
- CABALLO DE TROYA
- GUSANO (REPLICACION)
- ZOMBIE (BOTNET)
ANTIVIRUS:
DETECCIÓN
IDENTIFICACION
REMOCION
TRUSTED SYSTEMS:
- SEGURIDAD MULTINIVEL: Solo acceso a cierto tipo de información
o NO READ UP
o NO WRITE DOWN
- SECURITY KERNEL DATABASE: Lista los privilegios y niveles de clasificación

Documentos relacionados