Geschreven door studenten die geslaagd zijn Direct beschikbaar na je betaling Online lezen of als PDF Verkeerd document? Gratis ruilen 4,6 TrustPilot
logo-home
Samenvatting

Sumario Resumen- Sistemas Operativos Modernos. 3era edición- Andrew Tanenbaum

Beoordeling
-
Verkocht
-
Pagina's
33
Geüpload op
24-05-2022
Geschreven in
2021/2022

Este documento cuenta con un resumen muy completo de los conceptos más importantes de los sistemas operativos, en base al libro: "Sistemas Operativos Modernos" de Andrew Tanenbaum. Fue realizado con fines educativos.

Instelling
Vak

Voorbeeld van de inhoud

Sistemas operativos modernos
Andrew S. Tanenbaum
3era Edición
Este documento cuenta con un resumen de algunos conceptos importantes presentados en el
libro Sistemas Operativos Modernos de Tanenbaum. Fue realizado con fines educativos.




Índice
Sistema operativo 3
Modelos de sistema operativo 3
Monolítico 3
Microkernel 3
Requerimientos del software para el funcionamiento de un SO 4
Servicios y niveles de un SO 4

Proceso 5
PCB (process control block) 5
Estados de un proceso 5
Context switch 6
Hilos 6
Estados de un hilo 7
Hilo en modo usuario 7
Hilo en modo kernel 7
Hilos híbridos 8
Políticas de planeamiento 8
Objetivos de la políticas de planeamiento 8
Algoritmos de planificación 8
Comunicación entre procesos (IPC) 8
Condición de carrera 9
Región crítica 9
Soluciones para la condición de carrera 9
Semáforos 9
Tipos de semáforos 10
Bloqueo mutuo 10
Planificador del procesador 10
Proceso de asignación 11
Tipos de políticas de asignación 11
Criterios 11
ADMINISTRACIÓN DE MEMORIA 11
Estrategias para dividir la memoria principal 12

, Fragmentación 12
Estrategias de asignación de procesos a espacios de memoria 12
Primer Ajuste- first fit 12
El Siguiente Ajuste- next first fit 12
Mejor Ajuste- best fit 13
Peor Ajuste- worst fit 13
Ajuste Rápido- fast fit 13
Reubicación de un proceso al ser cargado nuevamente a memoria 13

Memoria virtual 13
Tipos de direcciones 13
Traducción de direcciones 14
Administración de sistemas de almacenamiento virtual 14
Estrategías de búsqueda 14
Estrategias de colocación 14
Estrategias de reposición 15
El principio de optimización 15
Reposición de páginas al azar 15
No usada recientemente- NRU 15
Primero en entrar - primero en salir- FIFO 15
FIFO: Segunda oportunidad 15
FIFO: Reloj 15
Menos recientemente usada -LRU 15
Menos frecuentemente usada-NFU 16
Conjuntos de trabajo 16
Conjuntos de trabajo con WSClock 16
Paginación 16
Tamaño de las páginas 17
Tabla de páginas 17
Técnicas para una traducción rápida 18
Almacenamiento de bloques libres 18
Manejo de fallos de página 18
Segmentación 19
Segmentación con paginación 19

Virtualización 20
Requisitos de Hardware 20
Tipos de máquinas virtuales 20
Máquina virtual de sistema (o de hardware) 20
Hipervisor tipo 1 20
Hipervisor tipo 2 20
Máquina virtual de proceso (o de aplicación) 21
Técnicas de virtualización 21
Virtualización completa del hardware o nativa 21
Virtualización de emulación de hardware o no nativa 21
Virtualización a nivel de Sistema Operativo 21


1

,Sistemas de archivos 22
Funciones del sistema operativo al administrar el sistema de archivos 22
Archivos 22
Directorios 22
Implementación de directorios 22
Gestión del espacio de disco 23
Asignación contigua 23
Asignación no contigua 23
Alocación indexada 23
Implementación de archivos 24
Lista enlazada 24
Lista enlazada con tabla en memoria (FAT) 24
Nodos-i 24
Métodos para llevar registro de bloques libres 25
Lista enlazada 25
Mapa de bits 25
Mejora del mapa de bits 26
Archivos compartidos 26

Entrada y salida 26
Clasificación de dispositivos 26
Periféricos 26
Dispositivos de comunicaciones 26
Dispositivos de almacenamiento 27
Dispositivos de dispositivo por cómo pueden direccionarse 27
Dispositivos de bloque 27
Dispositivos de carácter 27
Velocidad de los dispositivos 27
Funciones del Sistema operativo 27
Tipos de Entrada/Salida 28
Acceso directo a memoria (DMA) 29

Seguridad 29
Objetivos de la seguridad 29
Intrusos 30
Pérdida accidental de datos 30
Dominios 30
Dominios de protección 30
Dominios de UNIX 30
Implementación de los dominios 31
Listas de control de acceso 31
Acceso por grupo 31
Capacidades 32
Tipos de permisos 32




2

,Sistema operativo
Un sistema operativo es un conjunto de programas que permite manejar la memoria, disco,
medios de almacenamiento de información y los diferentes periféricos o recursos. Es una capa de
software cuyo trabajo es proporcionar a los programas de usuario un modelo de computadora
mejor, más simple y pulcro, así como encargarse de la administración de todos los recursos.
Tareas que realiza el sistema operativo:
★ SO como administrador de recursos: Administra todas las piezas de un sistema complejo
de hardware. Proporciona una asignación ordenada y controlada de los procesadores,
memorias y dispositivos de E/S, entre los diversos programas que compiten por estos.
★ SO como máquina extendida: Proporciona a los programadores de aplicaciones un
conjunto abstracto de recursos simples. Crea buenas abstracciones agradables, elegantes,
simples y consistentes para después implementar y administrar los objetos abstractos
creados. Oculta el hardware.



Modelos de sistema operativo

Monolítico
Todo el sistema operativo se encuentra en un único espacio de memoria y se ejecuta como un
único programa en modo kernel. Se organiza en: ● Programa principal. ● Procedimientos de
servicio. ● Procedimientos utilitarios.
❏ Ventajas: Eficiencia en tiempo y en memoria, cada procedimiento en el sistema tiene la
libertad de llamar a cualquier otro, si éste proporciona cierto cómputo útil que el primero
necesita.
❏ Desventajas: Al estar todo junto es difícil su mantenimiento y actualización, además, un
error podría ocasionar que todos los módulos se vean afectados poniendo en riesgo el
funcionamiento del sistema.

Microkernel
El núcleo del sistema operativo tan pequeño como sea posible (debido a que la densidad de los
errores depende del tamaño del módulo), ejecutando parte del propio sistema operativo como
procesos de usuario. Almacena la directiva pero no el mecanismo. Su núcleo se encarga de: ●
Gestión de la multiprogramación. ● Administración de bajo nivel de memoria ● E/S ●
Comunicación entre procesos. ● Atención de interrupciones
Ventajas:
❏ Alta confiabilidad: Al modularizar el SO en módulos pequeños y definidos. Fácil
depuración. (solo un módulo se ejecuta en modo kernel).
❏ Flexibilidad: Fácil adición de nuevas características y eliminación de las obsoletas.
❏ Extensibilidad: Facilita la adición de nuevos servicios. Se modifican solo los servidores, el
microkernel no).
❏ Interfaz uniforme para pedir servicios por los procesos: Todos los servicios se proveen
mediante paso de mensajes.
❏ Portabilidad: Los cambios para trasladar el SO a una nueva arquitectura, se realizan sólo
en el microkernel, no en los servicios.




3

, ★ Modo kernel: Tiene la capacidad de ejecutar cualquier instrucción de su conjunto de
instrucciones y tiene acceso a todo el hardware.
★ Modo usuario: Puede ejecutar un subconjunto de las instrucciones y le da acceso a un
subconjunto de las características de hardware (no se permiten instrucciones de
operaciones E/S y las que impliquen protección a memoria). Para obtener servicios del SO,
el programa usuario debe lanzar un SystemCall que se atrapa en el kernel.




Requerimientos del software para el funcionamiento de un SO
● Set de instrucciones de CPU: privilegiadas y no privilegiadas ● Modo dual de ejecución: modo
kernel/modo usuario. Protección de memoria, CPU y dispositivos de I/O. ● Interrupciones: de SW
y de HW (internas y externas) ● DMA proceso que tiene acceso directo a la memoria, con una
capa de seguridad.



Servicios y niveles de un SO
(estructura de minix)
★ Micronúcleo: gestión de la multiprogramación, así como del tratamiento mínimo de
interrupciones y excepciones.
★ Gestores de tareas: son procesos (uno por cada tipo de dispositivo) que realizan la gestión
a bajo nivel de cada dispositivo. Contienen todo el código dependiente del dispositivo.
★ Administradores de memoria y de archivos: El 1ro implementa todas las llamadas al
sistema que impliquen gestión de memoria. Y el 2do contiene todo el código de
entrada/salida independiente de dispositivos, realizando todas las llamadas relativas al
sistema de archivo.
★ Procesos de usuario: Entre ellos se encuentra el 1er proceso que se ejecuta una vez ha
arrancado la máquina, y que tiene como función crear los demás procesos del sistema.




4

, Proceso
➔ Un proceso no es más que una instancia de un programa en ejecución, incluyendo los
valores actuales del contador de programa, los registros y las variables. Cada proceso
tiene su propia CPU virtual; pero en realidad, la CPU real conmuta de un proceso a otro.
Esta conmutación rápida de un proceso a otro se conoce como multiprogramación.
➔ Una manera de ver un proceso es como si fuera una forma de agrupar recursos
relacionados. Un proceso tiene un espacio de direcciones que contiene texto y datos del
programa, así como otros recursos. De esta forma pueden administrarse con más facilidad.
➔ Un proceso es un hilo de ejecución, son las entidades planificadas para su ejecución en la
CPU.
La diferencia entre un programa y procesos es sutil pero crucial. La idea clave es que un proceso
es una actividad de cierto tipo: tiene un programa, una entrada, una salida y un estado. Varios
procesos pueden compartir un solo procesador mediante el uso de un algoritmo de planificación
para determinar cuándo se debe detener el trabajo en un proceso para dar servicio a otro.
❏ Ventajas: Simplicidad de programación - Velocidad (mayor rendimiento, menor latencia) -
Múltiples procesos pueden aumentar la utilización de la CPU.



PCB (process control block)
Bloque de memoria donde está alojada toda la información de todos los procesos. Un registro
especial donde el sistema operativo agrupa toda la información que necesita conocer respecto a
un proceso particular. La información que almacena sobre cada proceso es:
★ Estado del proceso ★ Registros
★ ID del proceso ★ Espacio de direcciones
★ ID del usuario ★ Prioridad
★ Contador de programa ★ Archivos abiertos
El conjunto de PCB de cada proceso es almacenado en la Tabla de procesos



Estados de un proceso
★ Nuevo: El proceso recién fue creado y todavía no fue admitido por el sistema operativo. En
general los procesos que se encuentran en este estado todavía no fueron cargados en la
memoria principal.
★ Listo: Deseoso de ejecutarse, pero no puede porque no hay CPU disponible, está
esperando que el planificador así lo disponga.
★ Listo suspendido: Es un proceso listo para la ejecución, a la espera de que el planificador
le de la posibilidad, una parte del proceso o el proceso completo se movió desde la
memoria principal al disco.
★ Ejecución: Deseoso de ejecutarse, y lo hace, está usando la CPU en ese instante.
★ Bloqueado suspendido: El proceso no se puede ejecutar hasta que no se produzca cierto
suceso externo, parte o todo el proceso fue trasladado de la memoria principal al disco.
★ Bloqueado: No puede ejecutarse aunque la CPU esté disponible, está a la espera de un
evento externo. (Como una operación de Entrada/Salida)
★ Terminado: El proceso fue expulsado del grupo de procesos ejecutables, ya sea porque
terminó o por algún fallo. (Como un error de protección o aritmético)




5

Geschreven voor

Instelling
Vak

Documentinformatie

Geüpload op
24 mei 2022
Aantal pagina's
33
Geschreven in
2021/2022
Type
SAMENVATTING

Onderwerpen

$9.99
Krijg toegang tot het volledige document:

Verkeerd document? Gratis ruilen Binnen 14 dagen na aankoop en voor het downloaden kun je een ander document kiezen. Je kunt het bedrag gewoon opnieuw besteden.
Geschreven door studenten die geslaagd zijn
Direct beschikbaar na je betaling
Online lezen of als PDF

Maak kennis met de verkoper
Seller avatar
marialuzgodoy

Maak kennis met de verkoper

Seller avatar
marialuzgodoy UCAECE
Volgen Je moet ingelogd zijn om studenten of vakken te kunnen volgen
Verkocht
-
Lid sinds
4 jaar
Aantal volgers
0
Documenten
1
Laatst verkocht
-

0.0

0 beoordelingen

5
0
4
0
3
0
2
0
1
0

Recent door jou bekeken

Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo makkelijk kan het dus zijn.”

Alisha Student

Bezig met je bronvermelding?

Maak nauwkeurige citaten in APA, MLA en Harvard met onze gratis bronnengenerator.

Bezig met je bronvermelding?

Veelgestelde vragen