Please enable JavaScript.
Coggle requires JavaScript to display documents.
relación del sistema operativo con el hardware - Coggle Diagram
relación del sistema operativo con el hardware
Las terminales
Son dispositivos electrónicos utilizados para ingresar datos y emitir resultados dentro de un sistema de cómputo.
unidad de procesamiento
Esta es la encargada de ejecutar tanto los programas del usuario como el sistema operativo en
sí mismo.
jerarquía de almacenamiento
registros
caché
memoria principal
disco electronico
discos magnéticos
disco óptico
cintas magnéticas
registros
La memoria más rápida de la computadora son los registros, ubicados en
cada uno de los núcleos de cada CPU
Interrupciones y excepciones
Interrupciones hardware, son causadas cuando un dispositivo hardware requiere la atención de la CPU para que se ejecute su manejador. Excepciones, son interrupciones causadas por la propia CPU, cuando ocurre algún suceso, por ejemplo una división por cero.
funciones del sistema operativo respecto a las interrupciones son
Administrar el hardware manejador de interrupciones
Abstraer las interrupciones
Abstraer las interrupciones
Punto de entrada al sistema operativo
Atender excepciones y fallas
dispositivos de almacenamiento
es un conjunto de componentes electrónicos habilitados para leer o grabar datos en el soporte de almacenamiento de datos de forma temporal o permanente.
Relojes y temporizadores
todas las computadoras incluyen uno o mas relojes y temporizadores que son utilizados para funciones varias como mantener la hora del sistema actualizada, implementar alarmas tanto para los programas de usuario como para el sistema operativo, ejecutar tareas de mantenimiento periódicas, cumplir con requisitos temporales de aplicaciones de tiempo real, entre otros.
canales y puentes
los distintos componentes de un sistema ce computo se comunican mediante los diferentes canales. .
contención
puede saturarse el ancho de banda máximo que alcanza uno de los canales y, aun si los dispositivos tienen información lista, tendrán que esperar a que los demás dispositivos desocupen el canal
Acceso directo a memoria (DMA)
permite a cierto tipo de componentes de una computadora acceder a la memoria del sistema para leer o escribir independientemente de la unidad central de procesamiento (CPU) principal.
coherencia de caché
implementan mecanismos en hardware que notifican a los controladores de cache que las paginas que alojan están sucias y deben ser vueltas a cargar para ser empleadas
Interfaz del sistema operativo: llamadas al sistema
De forma análoga a las interrupciones, se puede hablar de las llamadas al
sistema. Cuando un proceso requiere de alguna acción privilegiada. accede a ellas realizando una llamada al sistema. Estas pueden agruparse en:
Control de procesos
Manipulación de archivos
Manipulación de dispositivos
Mantenimiento de la información
Comunicaciones
Protección
Llamadas al sistema, arquitecturas y API
Cada familia de sistemas operativos provee distintas llamadas al sistema,
y sus lenguajes/bibliotecas implementan distintos API.
referencia a los componentes
si bien el sistema operativo tiene por misión abstraer y ocultar los detalles de los dispositivos, también debe exponer una interfaz para poder emplearlos y administrarlos.
Cuando dos cabezas piensan mejor que una
Multiprocesamiento
El multiprocesamiento es todo entorno donde hay más de un procesador
(CPU).Un sistema multiprocesador tiene la capacidad de estar atendiendo simultáneamente a
diversos procesos.
Cómputo distribuido
se denomina cómputo distribuido a un proceso de cómputo realizado entre computadoras independientes, o, más formalmente, entre procesadores que no comparten memoria(almacenamiento primario).
Hay diferentes modelos para implementar el cómputo distribuido, siempre
basados en la transmisión de datos sobre una red. Éstos son principalmente:
Infraestructura como servicio
Plataforma como servicio
Software como servicio
Servicios Web
Cómputo en la nube
Mallas (Grids)
Cúmulos (clusters)
Amdahl y Gustafson: ¿qué esperar del paralelismo?
al programar una aplicación de forma que aproveche al paralelismo(esto es, diseñarla para que realice en distintos procesadores o nodos sus porciones paralelizables)