Kernel de Solaris

UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO KERNEL DE LINUX Y SOLARIS REPORTE VILLAVICENCIO PEREZ GERARDO ALEXIS 15/11/

Views 206 Downloads 35 File size 380KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO

KERNEL DE LINUX Y SOLARIS

REPORTE

VILLAVICENCIO PEREZ GERARDO ALEXIS 15/11/2012

EN EL PRESENTE TRABAJO SE REALIZARA UNA BREVE DESCRIPCION DE LOS NUCLEOS DE LOS SITEMAS OPERATIVOS SOLARIS Y LINUX.

INTRODUCCION

En Sistemas operativos, un núcleo o kernel es un software que constituye la parte más importante del sistema. 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.

El motivo de este trabajo es describir a grandes rasgos el kernel de Linux y de Solaris, hacer notar sus principales características además del funcionamiento básico de cada uno de estos.

Cabe destacar que el núcleo de Linux es libre basado en Unix, Es uno de los principales ejemplos de software libre. Linux está licenciado bajo la GPL v2 y está desarrollado por colaboradores de todo el mundo, en pocas palabras es libre.

Solaris es un sistema operativo de tipo Unix desarrollado desde 1992 inicialmente por Sun Microsystems y actualmente por Oracle Corporation como sucesor de SunOS. Es un sistema certificado oficialmente como versión de Unix

Objetivo principal

Se tiene como objetivo principal conocer los núcleos de ambos sistemas operativos para obtener un punto de diferencia entre ambos, además de conocer características esenciales que distinguen a uno de otro.

Kernel de Solaris

Visión general del núcleo de Solaris y la manera en que se representa a dispositivos como los nodos de un árbol de dispositivos. Cubre estructura del núcleo general y la función y la versión de Solaris 10.

El núcleo de Solaris es un programa que administra los recursos del sistema. Aísla las aplicaciones del hardware del sistema y les proporciona servicios esenciales del sistema, como la gestión de entrada / salida (I / O), memoria virtual, y la programación. El núcleo se compone de módulos de objetos que se cargan dinámicamente en la memoria cuando sea necesario.

El núcleo de Solaris se puede dividir en dos partes: la primera parte, llamada el núcleo, gestiona los sistemas de archivos, programación y memoria virtual.

La segunda parte, que se refiere como el subsistema de E / S, gestiona los componentes físicos. El núcleo proporciona un conjunto de interfaces para aplicaciones que utilizan llamadas del sistema. La función de algunas llamadas al sistema es invocar un controlador de dispositivo para realizar I / O. Los controladores de dispositivos son módulos cargables del kernel que aíslan del resto del núcleo de los dispositivos de hardware y gestión de transferencias de datos.

Información de alto nivel sobre el entorno operativo Solaris.



Entorno de ejecución multiproceso.

El núcleo de Solaris es multiproceso, el multithreading del kernel impone algunas restricciones adicionales en los controladores de dispositivo. 

Memoria virtual

Dirección virtual - Una dirección virtual es una dirección que se asigna a la unidad de gestión de memoria (MMU) a una dirección de hardware físico.

Todas las

direcciones directamente accesibles para el conductor son direcciones virtuales del núcleo, que se refieren al espacio de direcciones del kernel.

Espacio de direcciones - Un espacio de direcciones es un conjunto de segmentos de direcciones virtuales. El núcleo tiene su propio espacio de direcciones llamado el espacio de direcciones del kernel.



Archivos especiales

Los archivos especiales pueden ser de tipo bloque o carácter, Asociado con cada archivo especial es un número de dispositivo



Árbol de Dispositivos

Los dispositivos de Solaris se representa como un árbol de nodos de dispositivos interconectados. The tree begins at the 'root' device node, which represents the platform. El árbol comienza en el nodo de dispositivo "raíz", que representa la plataforma. Below the root node are 'branches' of the device tree, where a branch consists of one or more bus nexus devices and a terminating leaf device. A continuación el nodo raíz son "ramas" del árbol de dispositivos, donde una rama se compone de uno o más dispositivos de bus nexo y un dispositivo de hoja de terminación.

Kernel de Linux El kernel de linux es el encargado de que el software y el hardware de una PC puedan trabajar juntos.

Las funciones más importantes del mismo, aunque no las únicas, son: 

Administración de la memoria para todos los programas y procesos en ejecución.

Linux soporta las características de Memoria Virtual (virtual memory). Esto significa usar un disco como una extensión de la memoria RAM, de forma tal que el tamaño efectivo de memoria utilizable crezca considerablemente.

El kernel se encarga de escribir el contenido de un bloque de memoria que no está siendo utilizado al disco rígido de forma que esta porción de memoria quede disponible para otro propósito. Cuando los bloques originales vuelven a ser requeridos, son leídos y colocados nuevamente en memoria. Todo esto es realizado en forma completamente transparente para el usuario.



Administración del tiempo de procesador que los programas y procesos en ejecucion utilizan.

Si el agente de administración de hardware se inicia manualmente, es posible proporcionar opciones de línea de comandos.

Se debe utilizar las opciones de línea de comandos. Si se utiliza la opción de niveles de registro, es preciso proporcionar un número decimal (base 10) para establecer el nivel de registro que se va a aplicar. Este número decimal (base 10) se calcula a partir de un campo de bits, según el nivel de registro que se desee especificar. 

Es el encargado de que podamos acceder a los periféricos/elementos de nuestro ordenador de una manera cómoda.

Los dispositivos están divididos en dos tipos: los dispositivos de carácter y los dispositivos de bloque. La diferencia es que los dispositivos de bloque tienen un búfer para las peticiones, por lo tanto pueden escoger en qué orden las van a responder. Esto es importante en el caso de los dispositivos de almacenamiento, donde es más rápido leer o escribir sectores que están cerca entre sí, que aquellos que están más dispersos. El Kernel de Linux es de tipo monolítico básicamente es un gran programa creado como una unidad, pero conceptualmente dividido en varios componentes lógicos.Tiene soporte para carga/descarga de porciones del kernel bajo demanda, estas porciones se llaman módulos, y suelen ser características del kernel o controladores de dispositivo. Actualmente Linux es un núcleo monolítico híbrido. Los controladores de dispositivos y las extensiones del núcleo normalmente se ejecutan en un espacio privilegiado conocido como anillo 0 (ring 0), con acceso irrestricto al hardware, aunque algunos se ejecutan en espacio de usuario. A diferencia de los núcleos monolíticos tradicionales, los controladores de dispositivos y las extensiones al sistema operativo se pueden cargar y descargar fácilmente como módulos, mientras el sistema continúa funcionando sin interrupciones.

También, a diferencia de los núcleos monolíticos tradicionales, los controladores pueden ser prevolcados (detenidos momentáneamente por actividades más importantes) bajo ciertas condiciones. Esta habilidad fue agregada para gestionar correctamente interrupciones de hardware, y para mejorar el soporte de Multiprocesamiento Simétrico. Este kernel es de tipo no apropiativo esto supone que dentro del kernel no pueden pararse llamadas a sistema (en modo supervisor) mientras se está resolviendo la tarea de sistema, y cuando ésta acaba, se reasume la ejecución de la tarea anterior. Por lo tanto, el kernel dentro de una llamada no puede ser interrumpido para atender otra tarea. Normalmente, los kernels apropiativos están asociados a sistemas que trabajan en tiempo real, en que debe permitirse lo anterior para tratar eventos críticos. Hay algunas versiones especiales del kernel de Linux para tiempo real, que permiten esto por medio de la introducción de unos puntos fijos donde pueden intercambiarse.

El kernel tiene una buena arquitectura de los sistemas de ficheros, el trabajo interno se basa en una abstracción de un sistema virtual (VFS, Virtual File System), que puede ser adaptada fácilmente a cualquier sistema real. Como resultado,

Linux es quizás el operativo que más sistemas de ficheros soporta, desde los propios ext2 y ext3, hasta msdos, vfat, sistemas con journal como ReiserFS, JFS(IBM), XFS(Silicon), NTFS(sólo lectura), iso9660 (CD), udf, etc. y se van añadiendo más.

Conclusiones. Después de haber analizado algunas de las características generales de los núcleos de Solaris y Linux, se debe resaltar que ambos poseen características similares dentro de las cuales cabe destacar que ambos núcleos son multiproceso, y que están basados en Unix, además de que estos Sistemas operativos asen gran uso de la memoria virtual. Por lo tanto se debe concluir que los núcleos de estos son similares ya que ambos son basados en Unix aunque no iguales por que el desarrollo de estos está dado por diferentes empresas por llamarles de alguna manera, el desarrollo de Linux es cooperativo mientras que el de Solaris es por parte de Oracle.