domingo, 26 de marzo de 2017

Distribuciones de Linux

La semana pasada publiqué una entrada, en la cual hablaba de un tipo de distribución de Linux, el cual es muy conocido, pero en si que es una distribución de linux?

Una distribución no es otra cosa, que una recopilación de programas y ficheros, organizados y preparados para su instalación. Estas distribuciones se pueden obtener a través de Internet, o comprando los CDs de las mismas, los cuales contendrán todo lo necesario para instalar un sistema Linux bastante completo y en la mayoría de los casos un programa de instalación que nos ayudará en la tarea de una primera instalación. Casi todos los principales distribuidores de Linux, ofrecen la posibilidad de bajarse sus distribuciones, via FTP (sin cargo alguno).

Existen muchas y variadas distribuciones creadas por diferentes empresas y organizaciones a unos precios bastantes asequibles (si se compran los CDs, en vez de bajársela via FTP), las cuales se pueden encontrar en tiendas de informática ó librerías. En el peor de los casos siempre puedes encargarlas directamente por Internet a las empresas y organizaciones que las crean. A veces, las revistas de informática sacan una edición bastante aceptable de alguna distribución.

Les dejo un poco de información de algunas de las distribuciones de linux:


REDHAT ENTERPRISE
Esta es una distribución que tiene muy buena calidad, contenidos y soporte a los usuarios por parte de la empresa que la distribuye. Es necesario el pago de una licencia de soporte. Enfocada a empresas.
FEDORA
Esta es una distribución patrocinada por RedHat y soportada por la comunidad. Fácil de instalar y buena calidad.
DEBIANOtra distribución con muy buena calidad. El proceso de instalacion es quizas un poco mas complicado, pero sin mayores problemas. Gran estabilidad antes que últimos avances.
OpenSuSE
Otra de las grandes, fácil de instalar. Versión libre de la distribucion comercial SuSE.
SLACKWARE
Esta distribución es de las primeras que existio. Tuvo un periodo en el cual no se actualizo muy a menudo, pero eso es historia. Es raro encontrar usuarios de los que empezaron en el mundo linux hace tiempo, que no hayan tenido esta distribución instalada en su ordenador en algún momento
BIBLIOGRAFÍA 
Martinez, R. (26 de Marzo de 2017) Obtenido de: http://www.linux-es.org/distribuciones

lunes, 20 de marzo de 2017

Distribución de linux: Ubuntu
Ubuntu es una distribución Linux que ofrece un sistema operativo predominantemente enfocado a ordenadores de escritorio aunque también proporciona soporte para servidores.
Basada en Debian GNU/Linux, Ubuntu concentra su objetivo en la facilidad de uso, la libertad en la restricción de uso, los lanzamientos regulares (cada 6 meses) y la facilidad en la instalación. Ubuntu es patrocinado por Canonical Ltd., una empresa privada fundada y financiada por el empresario sudafricano Mark Shuttleworth.
El nombre de la distribución proviene del concepto zulú y xhosa de ubuntu, que significa “humanidad hacia otros” o “yo soy porque nosotros somos”. Ubuntu es un movimiento sudafricano encabezado por el obispo Desmond Tutu, quien ganó el Premio Nobel de la Paz en 1984 por sus luchas en contra del Apartheid en Sudáfrica. El sudafricano Mark Shuttleworth, mecenas del proyecto, se encontraba muy familiarizado con la corriente. Tras ver similitudes entre los ideales de los proyectos GNU, Debian y en general con el movimiento del software libre, decidió aprovechar la ocasión para difundir los ideales de Ubuntu. El eslogan de Ubuntu – “Linux para seres humanos” (en inglés “Linux for Human Beings”) – resume una de sus metas principales: hacer de Linux un sistema operativo más accesible y fácil de usar.
La versión más reciente la versión 7.04 (Feisty Fawn) fue lanzada el 19 de abril de 2007.

Características

  • Basada en la distribución Debian.
  • Disponible en 4 arquitecturas: Intel x86, AMD64, SPARC (para esta última sólo existe la versión servidor).
  • Los desarrolladores de Ubuntu se basan en gran medida en el trabajo de las comunidades de Debian y GNOME.
  • Las versiones estables se liberan cada 6 meses y se mantienen actualizadas en materia de seguridad hasta 18 meses después de su lanzamiento.
  • La nomenclatura de las versiones no obedece principalmente a un orden de desarrollo, se compone del dígito del año de emisión y del mes en que esto ocurre. La versión 4.10 es de octubre de 2004, la 5.04 es de abril de 2005, la 5.10 de octubre de 2005, la 6.06 es de junio de 2006, la 6.10 es de octubre de 2006 y la 7.04 es de abril de 2007.
  • El entorno de escritorio oficial es Gnome y se sincronizan con sus liberaciones.
  • Para centrarse en solucionar rápidamente los bugs, conflictos de paquetes, etc. se decidió eliminar ciertos paquetes del componente main, ya que no son populares o simplemente se escogieron de forma arbitraria por gusto o sus bases de apoyo al software libre. Por tales motivos inicialmente KDE no se encontraba con más soporte de lo que entregaban los mantenedores de Debian en sus repositorios, razón por la que se sumó la comunidad de KDE distribuyendo la distro llamada Kubuntu.
  • De forma sincronizada a la versión 6.06 de Ubuntu, apareció por primera vez la distribución Xubuntu, basada en el entorno de escritorio XFce.
  • El navegador web oficial es Mozilla Firefox.
  • El sistema incluye funciones avanzadas de seguridad y entre sus políticas se encuentra el no activar, de forma predeterminada, procesos latentes al momento de instalarse. Por eso mismo, no hay un firewall predeterminado, ya que no existen servicios que puedan atentar a la seguridad del sistema.
  • Para labores/tareas administrativas en terminal incluye una herramienta llamada sudo (similar al Mac OS X), con la que se evita el uso del usuario root (administrador).
  • Mejora la accesibilidad y la internacionalización, de modo que el software está disponible para tanta gente como sea posible. En la versión 5.04, el UTF-8 es la codificación de caracteres en forma predeterminada.
  • No sólo se relaciona con Debian por el uso del mismo formato de paquetes deb, también tiene uniones muy fuertes con esa comunidad, contribuyendo con cualquier cambio directa e inmediatamente, y no solo anunciándolos. Esto sucede en los tiempos de lanzamiento. Muchos de los desarrolladores de Ubuntu son también responsables de los paquetes importantes dentro de la distribución de Debian.
  • Todos los lanzamientos de Ubuntu se proporcionan sin costo alguno. Los CDs de la distribución se envían de forma gratuita a cualquier persona que los solicite mediante el servicio ShipIt (la versión 6.10 no se llegó a distribuir de forma gratuita en CD, pero la versión 7.04 sí). También es posible descargar las imágenes ISO de los discos por transferencia directa o bajo la tecnología Bittorrent.
  • Ubuntu no cobra honorarios por la suscripción de mejoras de la “Edición Enterprise”.

BIBLIOGRAFÍA
Linux Zone (20 de marzo de 2017) obtenido de: https://linuxzone.es/distribuciones-principales/ubuntu/

domingo, 12 de marzo de 2017

Kernel de Windows 

Windows es un Sistema Operativo serio, capaz de competir en el mercado con otros como Unix que ya tienen una posición privilegiada, en cuanto a resultados, debe tener una serie de características que le permitan ganarse ese lugar.

Modo Kernel: Capa de Abstracción de Hardware (HAL).Conocido por sus siglas en inglés HAL (Hardware AbstractionLayer) es una interfaz entre el hardware y el resto del Sistema Operativo, está implementada como una biblioteca de enlace dinámico (dll) y es responsable de proteger el resto del sistema de las especificaciones del hardware, tales como controladores de interrupción e interfaces de entrada/salida. Esta abstracción hace al sistema más portable ya que el resto del sistema no tiene que preocuparse sobre que plataforma está corriendo.

Cada plataforma en que el sistema corre necesita un HAL específico. El diseño intenta que cuando Windows sea portado a una nueva arquitectura de procesador, el HAL sea reescrito para el nuevo procesador, pero el resto del sistema simplemente debe ser recopilado.

MicroKernel: es el responsable de todas las acciones que se realizan sobre le sistema y casi todas las funciones del sistema pasan a través de él.El microkernel está situado en el corazón de Windows, trabaja muy estrechamente con el HAL (Nivel de Abstracción de Hardware), este planifica la ejecución de hilos y manipula las interrupciones y excepciones de procesos. El papel de este es mantener a los procesadores lo mas ocupado posible. En sentido general este se encarga de las funciones más básicas de todo el SO, como son: {


  • Ejecución de subprocesos.
  •  Sincronización multiprocesador. 
  • Manejo de las interrupciones de hardware. 
El Ejecutor de Windows se encarga de las tareas importantes, las que son de vital importancia para el sistema completo, ya que el microkernel está casi siempre demasiado ocupado para dirigirse directamente.

El Administrador de Objetos (Object Manager) es usado para crear, modificar y eliminar objetos (tipos de datos abstractos que son usados para representar recursos del Sistema Operativo) usados por todos los sistemas que conforman el Ejecutor de Windows. Este también proporciona información sobre el estado de los objetos a todo el Sistema Operativo. El Administrador de Procesos. El Administrador de Procesos (Process Manager) es el responsable de crear, quitar y modificar los estados de todos los procesos e hilos. Este también proporciona información sobre el estado de procesos e hilos al resto del sistema.El Administrador de Memoria Virtual. El Administrador de Memoria Virtual (Virtual Memory Manager o VMM) proporciona la gestión de memoria virtual del sistema. La memoria virtual es un esquema que permite usar los recursos del disco en lugar de la memoria física del sistema moviendo las páginas al disco cuando estas no están siendo usadas y recuperándolas cuando se les necesitan. Este es un segmento integral de Windows el cual asigna espacios de direcciones de 32 bit a cada proceso sin preocuparse de la cantidad de memoria física del sistema.

Servicios de Llamadas a Procedimientos Locales. (Local ProcedureCallFacility o LPC) se integran al diseño cliente/servidor de Windows. Este es la interfaz entre todos los procesos clientes y servidores que corren localmente en el sistema. El Monitor de Seguridad. El Monitor de Seguridad (Security Reference Monitor o SRM) es el lecho de toda la seguridad dentro del sistema WINDOWS y es el responsable de hacer cumplir todas las políticas de seguridad en la computadora local.

 El Administrador de Entrada-Salida (I/O Manager) es responsable de gestionar la comunicación entre los distintos drivers de dispositivo, para lo cual implementa una interfaz bien definida que permite el tratamiento de todos los drivers de una manera homogénea, sin que intervenga el cómo funciona específicamente cada uno. {

El Subsistema Win32: Este subsistema actúa como un servidor para todos los otros subsistemas de ambiente soportados en WINDOWS, los que actúan como clientes y traducen sus llamadas API hacia las API apropiadas de Win32. El subsistema Win32 es responsable de toda la entrada y salida. Este posee el control de la pantalla, el teclado, y el ratón. Cuando otros subsistemas, como OS/2 o POSIX, necesitan beneficiarse de estos dispositivos, ellos piden los servicios al subsistema de Win32.

 Algunos de los objetivos que se trazaron para mantener la compatibilidad con las aplicaciones hechas en versiones anteriores fueron:

  • Permitir que los programas hechos sobre DOS pudieran correr sin modificación.
  •  Suministrar la capacidad para ejecutar la mayoría de las aplicaciones Windows de 16 bits sin modificación. 
  • Proteger al sistema y otras aplicaciones de 32 bits de la interferencia de las aplicaciones de 16 bits y DOS. 
  • Permitir a las plataformas RISC (ReducedInstruction set Computer, microprocesador cuyo número de instrucciones es reducido para lograr una frecuencia más alta de trabajo) ejecutar aplicaciones Windows de 16 bits y DOS. 
El Subsistema POSIX.Microsoft prestó mucha atención a los diferentes estándares de sistemas abiertos cuando Windows NT estaba en vía de desarrollo. Ellos reconocieron el valor de soportar sistemas abiertos como un método para ganar aceptación de su nuevo sistema operativo avanzado dentro del mercado.

Uno de los estándares más frecuentemente citados soportados por Windows es el POSIX (Interfaz de Sistema operativo Portable Basado en Unix), el cual representa la interfaz del Sistema Operativo portable y fue desarrollado por el IEEE (Instituto de Ingenieros en Electricidad y Electrónica) como un método de proporcionar portabilidad a las aplicaciones hechas sobre plataformas UNIX.

No obstante, POSIX se ha integrado en muchos sistemas no UNIX.  El Subsistema OS/2. El Subsistema OS/2 igual que el subsistema POSIX proporciona un entorno para aplicaciones UNIX, este subsistema da soporte a las aplicaciones OS/2. Proporciona la interfaz gráfica y las llamadas al sistema; las llamadas son servidas con ayuda del Ejecutor de Windows.

Un núcleo no es magia, pero es completamente esencial para cualquier equipo que ejecute correctamente. El kernel de Linux es diferente a OS X y Windows, ya que incluye los controladores nivel del núcleo y hace muchas cosas mas.


Bibliografía 
EcuRed (12 de Marzo de 2017) Obtenido de: https://www.ecured.cu/Kernel

domingo, 5 de marzo de 2017

Tipos de kernel

No necesariamente se necesita un núcleo para usar una computadora. Los programas pueden cargarse y ejecutarse directamente en una computadora «vacía», siempre que sus autores quieran desarrollarlos sin usar ninguna abstracción del hardware ni ninguna ayuda del sistema operativo. Ésta era la forma normal de usar muchas de las primeras computadoras: para usar distintos programas se tenía que reiniciar y reconfigurar la computadora cada vez.

Con el tiempo, se empezó a dejar en memoria (aún entre distintas ejecuciones) pequeños programas auxiliares, como el cargador y el depurador, o se cargaban desde memoria de sólo lectura. A medida que se fueron desarrollando, se convirtieron en los fundamentos de lo que llegarían a ser los primeros núcleos de sistema operativo.

Hay cuatro grandes tipos de núcleos:

  • Los núcleos monolíticos facilitan abstracciones del hardware subyacente realmente potentes y variadas.
  • Los micronúcleos: 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: 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.

BIBLIOGRAFÍA
EcuRed (05 de Febrero de 2017) Obtenido de: https://www.ecured.cu/Kernel