domingo, 17 de abril de 2011

QUE ES EL NUCLEO Y CUAL ES SU FUNCION

En informática, un núcleo o kernel (de la raíz germánica Kern) es un software que actúa de sistema operativo.




Es el principal responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más 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 proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso al programador




Funciones generalmente ejercidas por un núcleo


Los núcleos tienen como funciones básicas garantizar la carga y la ejecución de los procesos, las entradas/salidas y proponer una interfaz entre el espacio núcleo y los programas del espacio del usuario.
Aparte de las funcionalidades básicas, el conjunto de las funciones de los puntos siguientes (incluidos los pilotos materiales, las funciones de redes y sistemas de ficheros o los servicios) necesariamente no son proporcionadas por un núcleo de sistema de explotación. Pueden establecerse estas funciones del sistema de explotación tanto en el espacio usuario como en el propio núcleo. Su implantación en el núcleo se hace en el único objetivo de mejorar los resultados. En efecto, según la concepción del núcleo, la misma función llamada desde el espacio usuario o el espacio núcleo tiene un coste temporal obviamente diferente. Si esta llamada de función es frecuente, puede resultar útil integrar estas funciones al núcleo para mejorar los resultados.






TIPOS DE NUCLEOS





  • Los núcleos monolíticos facilitan abstracciones del hardware subyacente realmente potentes y variadas.
  • Los micronúcleos (en inglés micro-kernel) proporcionan un pequeño conjunto de abstracciones simples del hardware, y usan las aplicaciones llamadas servidores para ofrecer mayor funcionalidad.
  • Los núcleos híbridos (micro-núcleos modificados) son muy parecidos a los micronúcleos puros, excepto porque incluyen código adicional en el espacio de núcleo para que se ejecute más rápidamente.
  • Los exonúcleos no facilitan ninguna abstracción, pero permiten el uso de bibliotecas que proporcionan mayor funcionalidad gracias al acceso directo o casi directo al hardware.

KERNEL



El núcleo (también conocido en español con el anglicismo kernel, de raíces germánicas como kern) es la parte fundamental de un sistema operativo. Es el software responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más 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, el núcleo 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 proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso para el programador.






En linux convenciones para nombrar los discos


Linux usa un método para nombrar particiones no tiene en cuenta el tipo de las mismas (a diferencias de otros UNIX) y que las nombra de acuerdo al disco en el que están ubicadas.

Nombramiento de discos:
  1. Los discos del IDE primario se denominan /dev/hda y /dev/hdb (en el orden master y slave)
  2. Los discos de la interfaz secundaria se se denominan /dev/hdc y /dev/hdd (en el orden master y slave)
  3. Si posee otras interfaces IDE los dispositivos se denominarán /dev/hde, /dev/hdf, etc.
  4. Los discos SCSI o SATA se denominan /dev/sda, /dev/sdb, etc.
  5. Los CD-ROM SCSI se denominan /dev/scd0, /dev/scd1, etc.

Nombramiento de particiones: Las particiones se nombran en base al disco en el cual se encuentran.

  • Las particiones primarias o extendidas se denominan desde /dev/hdX1 a  /dev/hdX4 o /dev/sdX1 a /dev/sdX4 o
  • Las particiones lógicas, si existen, se denominan /dev/hdX5, /dev/hdX6, etc. o  /dev/sdX5, /dev/sdX6, etc.

CARGADORES DE ARRENQUE para GNU/Linux



En computación es un administrador o gestor de arranque múltiple, desarrollado por el proyecto GNU, derivado del GRand Unified Bootloader (GRUB; en español: Gran Gestor de Arranque Unificado), que se usa comúnmente para iniciar uno de dos o más sistemas operativos instalados en un mismo equipo.
Se usa principalmente en sistemas operativos GNU/Linux. El Sistema Operativo Solaris ha usado GRUB como gestor de arranque en sistemas x86 desde la revisión 10 1/06, aunque se sabe que la versión de Grub2 utilizada en la mayoria de las distribuciones no reconoce a Solaris o particiones ZFS esto se puede solucionar editando manualmente el archivo correspondiente a la lista correspondiente.

Descripción
Técnicamente, un gestor de arranque múltiple es aquel que puede cargar cualquier archivo ejecutable y que contiene un archivo de cabecera en los primeros 8 KB del archivo. Tal cabecera consiste en 32 bits de un número “mágico”, 32 de indicadores (flags), otros 32 de un número “mágico”, seguidos de información sobre la imagen ejecutable.
Una de las características más interesantes de este tipo de gestor es que no es necesario instalar una partición nueva o un núcleo nuevo, pudiendo cambiar todos los parámetros en el arranque mediante el sistema de órdenes de cónsola de GRUB.
Mientras los gestores de arranque convencionales tienen una tabla de bloques en el disco duro, GRUB es capaz de examinar el sistema de archivos. Actualmente, soporta los siguientes sistemas de archivos:
ext2/ext3/ext4 (Grub2) usado por los sistemas UNIX y su variante libre GNU/Linux.
ReiserFS.
XFS de SGI (aunque puede provocar problemas).
UFS.
VFAT, como FAT16 y FAT32 usados por Windows 9.x
NTFS usado por los sistemas Windows NT (a partir de Windows NT v.3.51).
JFS de IBM.
HFS de Apple Inc.
Otros ejemplos de cargadores multi arranque son LILO y SYSLINUX.
GRUB soporta 14 colores de fondo, siendo el negro el color por defecto. Algunas distribuciones de GNU/Linux que incluyen GRUB frecuentemente utilizan fondos personalizados con el logotipo de dicha distribución. Los usuarios de GRUB pueden también hacer y colocar sus propios fondos.
Proceso de inicio de GRUB
El BIOS busca un dispositivo de inicio (como el disco duro) y de ahí pasa el control al registro maestro de inicio conocido como Master Boot Record o MBR, que consiste en los primeros 512 bytes del disco duro y que forman la fase 1 de GRUB.
La fase 1 de GRUB carga la siguiente fase de GRUB, ubicada físicamente en cualquier parte del disco duro. La fase 1 puede cargar ya sea la fase 1.5 o, directamente, la 2.
La fase 1.5 de GRUB, ubicada en los siguientes 30 kilobytes del disco duro, carga la fase 2. En GRUB 2, esta fase ha dejado de existir.
La fase 2 de GRUB (cargada por las fases 1 ó 1.5) recibe el control, y presenta al usuario el menú de inicio.
GRUB carga el kernel seleccionado por el usuario, en la memoria y le pasa el control.

NUEVO
BURG es un gestor de arranque para sistemas GNU/Linux, éste funciona de la misma forma que el tradicional GRUB, pero la diferencia radica en que BURG administra el arranque de una forma mucho más agradable a la vista ya que gracias a él podemos cambiar la apariencia del menú en el que se elige el sistema operativo que se desee arrancar. BURG cuenta además con una buena cantidad de temas para elegir, y su instalación es realmente sencilla, aunque les recomiendo que realicen los pasos con mucho cuidado para que no se carguen el sistema de arranque.

sábado, 16 de abril de 2011

SISTEMAS DE ARCHIVOS

Los sistemas de archivos o ficheros (en inglés: filesystem), estructuran la información guardada en una unidad de almacenamiento (normalmente un disco duro de una computadora), que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos manejan su propio sistema de archivos.
Lo habitual es utilizar dispositivos de almacenamiento de datos que permiten el acceso a los datos como una cadena de bloques de un mismo tamaño, a veces llamados sectores, usualmente de 512 bytes de longitud. El software del sistema de archivos es responsable de la organización de estos sectores en archivos y directorios y mantiene un registro de qué sectores pertenecen a qué archivos y cuáles no han sido utilizados. En la práctica, un sistema de archivos también puede ser utilizado para acceder a datos generados dinámicamente, como los recibidos a través de una conexión de red (sin la intervención de un dispositivo de almacenamiento).
Los sistemas de archivos tradicionales proveen métodos para crear, mover, renombrar y eliminar tanto archivos como directorios, pero carecen de métodos para crear, por ejemplo, enlaces adicionales a un directorio o archivo (enlace duro en Unix) o renombrar enlaces padres (".." en Unix).
El acceso seguro a sistemas de archivos básicos puede estar basado en los esquemas de lista de control de acceso o capacidades. Las listas de control de acceso hace décadas que demostraron ser inseguras, por lo que los sistemas operativos experimentales utilizan el acceso por capacidades. Los sistemas operativos comerciales aún funcionan con listas de control de acceso

Rutas y nombre de archivos



Normalmente los archivos y carpetas se organizan jerárquicamente.
La estructura de directorios suele ser jerárquica, ramificada o "en árbol", aunque en algún caso podría ser plana. En algunos sistemas de archivos los nombres de archivos son estructurados, con sintaxis especiales para extensiones de archivos y números de versión. En otros, los nombres de archivos son simplemente cadenas de texto y los metadatos de cada archivo son alojados separadamente.
En los sistemas de archivos jerárquicos, usualmente, se declara la ubicación precisa de un archivo con una cadena de texto llamada "ruta" —o path en inglés—. La nomenclatura para rutas varía ligeramente de sistema en sistema, pero mantienen por lo general una misma estructura. Una ruta viene dada por una sucesión de nombres de directorios y subdirectorios, ordenados jerárquicamente de izquierda a derecha y separados por algún carácter especial que suele ser una diagonal ('/') o diagonal invertida ('\') y puede terminar en el nombre de un archivo presente en la última rama de directorios especificada.

Tipo de sistemas de archivos

 

 

Sistemas de archivos de disco

Un sistema de archivo de disco está diseñado para el almacenamiento de archivos en una unidad de disco, que puede estar conectada directa o indirectamente a la computadora.
Otros sistemas de archivos
HFS. HFS es el Sistema de Archivo de Mac. Se usa en todo tipo de medio de almacenamiento, desde CD y DVD hasta el Disco Duro.
HFS+. HFS+ es la variante moderna de HFS con soporte para una mayor capacidad de almacenamiento.

Sistemas de archivos de red

Un sistema de archivos de red es el que accede a sus archivos a través de una red. Dentro de esta clasificación encontramos dos tipos de sistemas de archivos: los sistemas de archivos distribuidos (no proporcionan E/S en paralelo) y los sistemas de archivos paralelos (proporcionan una E/S de datos en paralelo).

Sistemas de archivos de propósito especial

Aquellos tipos de sistemas de archivos que no son ni sistemas de archivos de disco, ni sistemas de archivos de red. Ejemplos: acme (Plan 9), archfs, cdfs, cfs, devfs, udev, ftpfs, lnfs, nntpfs, plumber (Plan 9), procfs, ROMFS, swap, sysfs, TMPFS, wikifs, LUFS, etc.

NUCLEO O KENEL





El kernel o núcleo de Linux se puede definir como el corazón de este sistema operativo. Es el encargado de que el software y el hardware del computador puedan trabajen juntos. Las funciones del Kernel se simplifican en:
Administración de la memoria, para todos los programas en ejecución.
Administración del tiempo de procesador, que estos programas en ejecución utilizan.
Acceder a los periféricos/elementos y hardware de entrada y salida de una forma practica y cómoda.
El usuario de Linux puede adaptar el Kernel a sus necesidades configurando y compilando un nuevo Kernel o simplemente parchando y compilando el Kernel existente.