viernes, 26 de febrero de 2016

Estructura del núcleo de un Sistema Operativo



CARACTERÍSTICAS


 

Constituye una parte fundamental del sistema operativo, y se define como la parte que se ejecuta en modo privilegiado (conocido también como modo núcleo).

  •  Es el principal responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es limitado, también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como multiplexado. 
  • Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del hardware. Esto permite esconder la complejidad, y proporcionar una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso al programador.
  • En algunos sistemas operativos, no existe un núcleo como tal (algo común en sistemas empotrados), debido a que en ciertas arquitecturas no hay distintos modos de ejecución.




Referencias:




Cuestionario



¿Que es la multiprogramación?
se refiere a la idea general de cargar múltiples programas dentro de uno mismo. 

¿Que es spooling?¿Cree que usted que las computadoras  personales avanzadas tendrán spooling como características estándar en el futuro?
es el proceso de transferir datos poniéndolo en un área temporal de trabajo donde otro programa puede acceder en otro momento.

En las primeras computadoras cada byte de datos leidos o escritos se manejaba mediante la CPU es decir, no habia DMA¿que implicaciones tiene esto para la multiprogramación? 
Cuando las operaciones de E/S son manejadas directamente para la CPU es decir no se dispone ni de interrupciones ni de DMA, se requiere el procesador para transferir los datos entre la memoria y el modulo de E/S.

La idea de una familia de computadoras fue introducidas fue introducida en la decada 1960 con las mainframes IBM system/360¿esta muerta ahora esta idea o sigue en pie?
sigue en pie, es  usado en el procesamiento de una gran cantidad de datos por ejemplo seria las transacciones bancarios.

Una razon por la cual las GUI no se adaptaron con rapidez en un principio fue el costo del hadware nesesarios para darle soporte¿cuanta RAM de video se nesecita para dar soporte a una pantalla?que texto monocromatico de las lineas x 80 carateres.¿cuanto se nesesita para un mapa de bits de  1024 x 788 pixeles y colores de 24 bits? ¿cual fue el costo de esta RAM con presisos de 1980?¿cuanto vale ahora?

  • Para una pantalla monocromatica se requiere de un bufer de 200 bytes 
  • 1024 x 768 pixeles de mapa de bits de color de 24 bits requiere 239.296bytes 
  • En 1980 estas dos opciones habrian costado $10 y $11, esta cantidad deRAM costaria menos de $1MB. 


Clasificación de los sistemas operativos



Tipos de Sistemas Operativos

Sistemas Monolítico
Son aquellos en los que su centro es un grupo de estructuras fijas, las cuales funcionan entre sí.

En los Sistemas Operativos Monolíticos, existen módulos grandes en el núcleo, los cuales interactúan entre sí, para poder tener esta estructura, las diferentes partes del kernel son compiladas por capas.

Los sistemas monolíticos se describen en 3 procesos principales:

- Un Programa principal que invoca el procedimiento de servicio solicitado.

- Un Conjunto de procedemientos de servicio que llevan a cabo las llamadas del sistema.

- Un Conjunto de procedimientos de utilería que ayudan a los procedimientos del servicio.

En teoría un procedimiento dado puede invocar a ciertos servicios los cuales a su vez se verán ayudados por programas de utilería los cuales extraerán información importante para este.


Sistema en capas

Consiste en organizar o estructurar por jerarquía cada una de estas capas o anillos (interfaz de usuario, drivers, Kernell), cada una constituida sobre la inmediata inferior
Es una generalización del modelo de estructura simple para un sistema monolítico. Consiste en organizar el sistema operativo como una jerarquía de capas, cada una constituida sobre la inmediata inferior.
El sistema operativo la utiliza para poder controlar los diversos aspectos del hardware, sobre ella se encuentra la capa de dispositivos. Es un conjunto de funciones denominadas controladoras de dispositivo que se encuentra dentro del Kernell del sistema operativo, acceden directamente al hardware y hacen el trabajo de escritura y lectura.
Capa 0: Asignación del procesador y multiprogramación.
Capa 1: Administración de los recursos del sistema (memoria, disco, etc...).
Capa 2: Comunicación operador-proceso.
Capa 3: Control E/S.
Capa 4: Programas de usuario.
Capa 5: El operador

Sistema con micronucleo 

Los sistemas operativos micronúcleo proveen un conjunto de llamadas mínimas al sistema, para implementar servicios básicos como lo son espacios de direcciones, comunicación entre procesos y planificación básica, en la cual el micronúcleo es el que planifica todo el código que corre en el sistema. 
El micronúcleo se encarga de la planificación de hilos (post anterior), no de procesos, esto hace posible tener varias tareas (multitarea).

Microkernels

Microkernel Sistemas operativos Software Computadoras Español.
Micronúcleo (en inglés: microkernel) es un tipo de núcleo de un sistema operativo que provee un conjunto de primitivas o llamadas al sistema mínimas, para implementar servicios básicos como espacios de direcciones, comunicación entre procesos y planificación básica.

Maquinas virtuales
Explicándolo de una forma sencilla una Máquina Virtual de Sistema es un programa que nos permite albergar un Ordenador Ficticio dentro de un Ordenador existente, es decir, un software que simula por completo el comportamiento de un Ordenador real sin que este exista, albergado virtualmente en un ordenador físico.


Este tipo de programas nos permitirán con un solo PC disponer de múltiples Sistemas Operativos funcionando simultáneamente usando tan solo una única máquina física.


Exokernels
Es eficiente debido al número limitado de operaciones primitivas sencillas que aporta.
Debido al bajo nivel de seguridad en la multiplicación de los recursos de hardware proporciona baja utilización de los recursos del sistema.
Abstracciones tradicionales como la Memoria Virtual (VM) y los Interprocesos de Comunicación (IPC) pueden ser implementados de forma eficiente a nivel de aplicación, en donde podría extenderse fácilmente, especializarse o sustituirse.

Las aplicaciones pueden crear efectos especiales de las implementaciones de las abstracciones adaptándolas a sus necesidades y funcionalidades de rendimiento.




Referencias:







Conceptos de Sistemas Operativos


Los ordenadores vienen ocupados con una etapa de software llamado s.o  cuya labor es:

  • Administrar todos los dispositivos del ordenador, ocultando sus peculiaridades.
  • Proporcionar al programador un interfaz de acceso sencillo para comunicarse con los dispositivos.

Funciones del S.O


  • Gestión de procesos 
  • Gestión de la memoria 
  • Gestión de ficheros 
  • Gestión de la red
  • Protección

Evolución de los S.O


  • Primero sistemas 
  • Sistemas por lotes 
  • Sistemas multiprogramados 
  • Sistema de tiempo compartido
  • sistema de LUNIS
  • Sistema para PC 
  • Tendencias actuales


Temario