miércoles, 22 de septiembre de 2010

SISTEMA OPERATIVO

SISTEMA OPERATIVO

1) QUE ES SISTEMA OPERATIVO

Un Sistema operativo (SO) es un software que actúa de interfaz entre los dispositivos de hardware y los programas usados por el usuario para utilizar un computador. Es responsable de gestionar, coordinar las actividades y llevar a cabo el intercambio de los recursos y actúa como estación para las aplicaciones que se ejecutan en la máquina.

Nótese que es un error común muy extendido denominar al conjunto completo de herramienta sistema operativo, pues este, es sólo el núcleo y no necesita de entorno operador para estar operativo y funcional. Uno de los más prominentes ejemplos de esta diferencia, es el SO linux, el cual junto a las herramientas, forman las llamadas distribuciones Linux.

Este error de precisión, se debe a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadoresse rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más sencillo de gestionar. (Véase amigaOS , beOS oMacOS como los pioneros de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters por su capacidad para la edición de vídeo en entorno multitarearound robin, congestión de miles de colores e interfaces intuitivos para diseño en 3D con programas como imagine o Scala multimedia, entre muchos otros.)

Uno de los propósitos de un sistema operativo como programa estación principal, consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (teléfonos móviles, reproductores de DVD, computadoras, radios, etc.)

Parte de la infraestructura de la World Wide web está compuesta por el sistema operativo de Internet, creado por cisco systems para gestionar equipos de interconexión como los conmutadores y los enrutadores

2) FUNCIONES DE UN SISTEMA OPERATIVO

Las funciones más importantes que debe cumplir un sistema operativo son las siguientes:

-Aceptar los trabajos y conservarlos hasta su finalizacion

-Detectar errores y actuar de modo apropiado en caso de que se produzcan.

-Controlar las operaciones de E/S.

-Controlar las interrupciones.

-Planificar la ejecución de tareas.

-Entregar recursos a las tareas.

-Retirar recursos de las tareas.

-Proteger la memoria contra el acceso indebido de los programas.

-Soportar el multiacceso.

-Proporcionar al usuario un sencillo manejo de todo el sistema.

-Aprovechar los tiempos muertos del procesador.

-Compartir los recursos de la máquina entre varios procesos al mismo tiempo.

-Administrar eficientemente el sistema de cómputo como un todo armónico.

-Permitir que los diferentes usuarios se comuniquen entre sí, así como protegerlos unos de otros.

-Permitir a los usuarios almacenar información durante plazos medianos o largos.

-Dar a los usuarios la facilidad de utilizar de manera sencilla todos los recursos, facilidades y lenguajes de que dispone la computadora.

-Administrar y organizar los recursos de que dispone una computadora para la mejor utilización de la misma, en beneficio del mayor número posible de usuarios.

-Controlar el acceso a los recursos de un sistema de computadoras.


3) CARACTERÍSTICAS DE LOS SISTEMAS OPERATIVOS

Las características deseables más importantes de un sistema operativo son:

-Permitir la concurrencia de procesos, traslapándose eltiempo de entrada/salida (E/S) con el de cálculo y ocupando la memoria con varios programas.

-Posibilitar la ejecución de cualquier proceso en el momento que se solicite siempre y cuando haya suficientes recursos libres para él.

-Ser eficiente en cuanto a reducir: el tiempo medio que ocupa cadatrabajo, el tiempo que no se usa la CPU, el tiempo de respuesta en sistemas multiacceso y el plazo entre dos asignaciones de CPU a un mismo programa.

-Ser eficiente en cuanto a aumentar la utilización de recursos en general, tales como memoria, procesadores, dispositivos de E/S,discos magnéticos, datos, etc.

-Ser fiable, es decir, un sistema operativo no debe tener errores y debe prever todas las posibles situaciones.

-Ser de tamaño pequeño.

-Posibilitar y facilitar en lo posible el "diálogo" entre computadora y usuario de la misma.

-Permitir compartir entre varios usuarios los recursos de hardware con que cuenta una computadora.

-Permitir a los usuarios compartir datos entre ellos, en caso necesario.

-Facilitar la E/S de los diferentes dispositivos conectados a una computadora.

4) TIPOS DE SISTEMAS OPERATIVOS POR EL NUMERO DE USUARIOS, NUMERO DE TAREAS, NUMERO DE PROCESADORES

Actualmente los sistemas operativos se clasifican en tres formas:

-sistemas operativos por los servicios que ofrecen

-sistemas operativos por su estructura (visión interna)

-sistemas operativos por la forma en que ofrecen sus servicios (visión externa).

SISTEMAS OPERATIVOS POR SERVICIOS.

Esta clasificación es la más comúnmente usada y conocida desde el punto de vista del usuario final:

POR NUMERO DE USUARIOS

SISTEMA OPERATIVO MONOUSUARIO

Los sistemas operativos monousuarios son aquéllos que soportan a un usuario a la vez, sin importar el número de procesadores que tenga la computadora o el número de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Las computadoras personales típicamente se han clasificado en este renglón.

En otras palabras los sistemas monousuarios son aquellos que nada más puede atender a un solo usuario, gracias a las limitaciones creadas por el hardware, los programas o el tipo de aplicación que se este ejecutando.

SISTEMA OPERATIVO MULTIUSUARIO

Los sistemas operativos multiusuario son capaces de dar servicio a más de un usuario a la vez, ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones remotas en una red de comunicaciones. No importa el número de procesadores en la máquina ni el número de procesos que cada usuario puede ejecutar simultáneamente.

En esta categoría se encuentran todos los sistemas que cumplen simultáneamente las necesidades de dos o más usuarios, que comparten mismos recursos. Este tipo de sistemas se emplean especialmente en redes. En otras palabras consiste en el fraccionamiento del tiempo (timesharing).

POR EL NUMERO DE TAREAS

SISTEMA OPERATIVO MONOTAREA

Los sistemas monotarea son aquellos que sólo permiten una tarea a la vez por usuario. Puede darse el caso de un sistema multiusuario y monotarea, en el cual se admiten varios usuarios al mismo tiempo pero cada uno de ellos puede estar haciendo solo una tarea a la vez.

Los sistemas operativos monotareas son más primitivos y, solo pueden manejar un proceso en cada momento o que solo puede ejecutar las tareas de una en una.

SISTEMA OPERATIVO MULTITAREA

Un sistema operativo multitarea es aquél que le permite al usuario estar realizando varias labores al mismo tiempo.

Es el modo de funcionamiento disponible en algunos sistemas operativos, mediante el cual una computadora procesa varias tareas al mismo tiempo. Existen varios tipos de multitareas. La conmutación de contextos es un tipo muy simple de multitarea en el que dos o más aplicaciones se cargan al mismo tiempo, pero en el que solo se esta procesando la aplicación que se encuentra en primer plano (la que ve el usuario). En la multitarea cooperativa, la que se utiliza en el sistema operativo Macintosh, las tareas en segundo plano reciben tiempo de procesado durante los tiempos muertos de la tarea

POR EL NUMERO DE PROCESADORES

SISTEMA OPERATIVO DE UNIPROCESO

Un sistema operativo uniproceso es aquél que es capaz de manejar solamente un procesador de la computadora, de manera que si la computadora tuviese más de uno le sería inútil. El ejemplo más típico de este tipo de sistemas es el DOS y MacOS.

SISTEMA OPERATIVO DE MULTIPROCESO

Un sistema operativo multiproceso se refiere al número de procesadores del sistema, que es más de uno y éste es capaz de usarlos todos para distribuir su carga de trabajo. Generalmente estos sistemas trabajan de dos formas: simétrica o asimétricamente.

ASIMÉTRICA

Cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los procesadores el cual jugará el papel de procesador maestro y servirá como pivote para distribuir la carga a los demás procesadores, que reciben el nombre de esclavos.

SIMÉTRICA

Cuando se trabaja de manera simétrica, los procesos o partes de ellos son enviados indistintamente a cual quiera de los procesadores disponibles, teniendo, teóricamente, una mejor distribución y equilibrio en la carga de trabajo bajo este esquema.

Un aspecto importante a considerar en estos sistemas es la forma de crear aplicaciones para aprovechar los varios procesadores. Existen aplicaciones que fueron hechas para correr en sistemas monoproceso que no toman ninguna ventaja a menos que el sistema operativo o el compilador detecte secciones de código paralelizable, los cuales son ejecutados al mismo tiempo en procesadores diferentes. Por otro lado, el programador puede modificar sus algoritmos y aprovechar por sí mismo esta facilidad, pero esta última opción las más de las veces es costosa en horas hombre y muy tediosa, obligando al programador a ocupar tanto o más tiempo a la paralelización que a elaborar el algoritmo inicial.


5) LAS FUNCIONES DEL NÚCLEO O KERNEL

En informática, un núcleo o kernel 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

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 proporcionados 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.


6) CUAL ES LA ARQUITECTURA DE WINDOWS Y DE LINUX

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. Algunas de estas son:

-Que corra sobre múltiples arquitecturas de hardware y plataformas.

-Que sea compatible con aplicaciones hechas en plataformas anteriores, es decir que corrieran la mayoría de las aplicaciones existentes hechas sobre versiones anteriores a la actual, nos referimos en este caso particular a las de 16-bit de MS-DOS y Microsoft Windows 3.1.

-Reúna los requisitos gubernamentales para POSIX (Portable Operating System Interface for Unix).

-Reúna los requisitos de la industria y del gobierno para la seguridad del Sistema Operativo.

-Sea fácilmente adaptable al mercado global soportando código Unicode.

-Sea un sistema que corra y balancee los procesos de forma paralela en varios procesadores procesadores a la vez.

-Sea un Sistema Operativo de memoria virtual.

-Uno de los pasos más importantes que revolucionólos Sistemas Operativos de la Microsoft fue el diseño y creación de un Sistema Operativo extensible, portable, fiable, adaptable, robusto, seguro y compatible con sus versiones anteriores (Windows NT).

-Y para ello crearon la siguiente arquitectura modular:



ARQUITECTURA DE LINUX

Linux no es un bloque monolítico

-Varios componentes trabajan en conjunto, diseñados por personas diferentes y conjuntados en distribuciones

-Solo del exterior el n

úcleo Linux parece una un

idad


-Existe una diferencia entre el núcleo y las aplicaciones


7) COMPARACIÓN ENTRE EL NÚCLEO DE LINUX Y WINDOWS

NÚCLEO LINUX Y WINDOWS

El núcleo Linux es un sistema operativo libre

tipo unix. Es uno de los principales ejemplos de software libre y código abierto. Linux está licenciado bajo la GPL v2 y está desarrollado por colaboradores de todo el mundo. las técnicas del núcleo linux frente al de windows o directamente porque la mayoría de las mismas son poco técnicas y mas un me gusta por... o no me gusta por... y claro el núcleo puede ser mejor o peor pero de ahí a gustarte aunque seguro que un kernel vanilla debe estar sabroso.

Algunos datos que me llaman la atención son por ejemplo las llamadas del sistema (system calls), mientras Linux tiene 320 Windows tiene más de 1000. A simple vista no se puede sólo por el dato comparar si esto es mejor para uno u otro, pero el hecho de que los desarrolladores no se suelan quejar de las llamadas del sistema en Linux me hace pensar que “tienen lo que necesitan”. Si estoy en lo cierto, el número abultado de llamadas en el kernel de Windows debe ser por mantener la (arcaica) compatibilidad hacía atrás lo cual como ya he dicho en anteriores veces vuelve el diseño muy complejo y propenso a errores.

Otro dato interesante es el tiempo de desarrollo, cada “versión menor” (en el caso de linux los 2.6.x) dura 3 meses en linux y 31 en Windows. En las versiones mayores la cosa ya se balancea menos: Linux tarda 35 meses y Windows 38. Aquí se puede observar lo que decía Linus Torvalds lanza versiones rápidamente, continuamente.

El tamaño en líneas de código en Windows aumenta en cada versión (actualmente 10 millones de líneas) de forma exagerada aunque Linux en cada versión mete soporte para mucho hardware sin que aumente el número tanto (4 millones actualmente) osea que no sé que pensar. El número anterior es sin drivers, si incluimos los drivers los números se disparan y la diferencia también (Windows 25 millones, Linux 8).

El tamaño resultante del kernel (sin drivers/módulos) también es exageradamente, Linux ocupa 1.3MB frente a los 4.6MB de Windows.

Seguimos con más datos, a destacar el número de

arquitecturas soportadas donde Windows literalmente es machado: Windows soporta x86 (los ordenadores de toda la vida), AMD64 y IA-64. Linux soporta ésas y además otras 14 arquitecturas sin contar consolas.

En tema de limitaciones para mucho hardware de golpe también gana el kernel linux por goleada: soporta 1024 CPUs de 32 o 64 bits frente a las 4-32 y 4-64 respectivamente de Windows. También soporta en temas de memoria 64GB de RAM de 32 bits PAE o 1024GB - 8.589.934.592GB de RAM de 64 bits frente a Windows que se queda con 1GB/<4gb>

Que por cierto, el que tenga 8.192 petabyt

es de memoria RAM de 64 bits para llegar al máximo permitido en el kernel linux que avise que ya sé a quién tengo que atracar


8 ) EXPLIQUE EL NÚCLEO DE WINDOWS 7 (Min Win)

Pero que cambia respecto a su predecersor el Kernel es el mismo, pues la respuesta es que solamente reorganizaron el Core, si realmente recortaron llamadas de alto nivel para convertir el núcleo de windows en un sistema escalable el resultado Minwin.

Pero ¿que es Minwin?, para resumir es tomar el nucleo de Windows e ir suprimiendo cosas, hasta dejar solamente lo mas esencial y funcional, (de este modo "desenpaquetando la maleta") los ingenieros de Microsoft se pudieron dar cuenta donde estaban las fallas, que tanto estaban afectando al rendimiento.

Y si "loteria" se dieron cuenta con esta "consolidación" del diseño del nucleo del S.O. que los sistemas de bajo nivel del núcleo de Windows realizaban llamadas a procesos de alto nivel.

Acto seguido y despues del recorte de estas llamadas de alto nivel, se realizo un mapa de dependencias para poder limpiar las llamadas que se realizaban fuera del nucleo.

Se reorganizaron estas llamadas y las API, y al final del dia y con todo este experimento se obtuvo como resultado el Minwin, un sistema operativo que funciona perfectamente, y sin necesidad de librerias de alto nivel.

Este Minwin ocupa de 25 a 40 megas en comparación de los 4GB de vista, y esta compuesto por 100 ficheros, mientras que un windows "normal" necesita alrrededor de 5000 para tabajar.

la diferencia entre “Core” y “kernel”. El kernel o núcleo de Wi

ndows 7 es el mismo de siempre, pero el core (el corazón) ha cambiado, se ha reorganizado.

Asi que Minwin solo es el nucleo de un kernel reorganizado

9) PORQUE LA NUEVA VERSION DE WINDOWS LO VA LLAMAR WINDOWS 7

Windows 7 es la versión más reciente de Microsoft windows, línea de sistemas operativos producida por Microsoft corporation. Es

ta versión está diseñada para uso en PC, incluyendo equipos de escritorio en hogares y oficinas, equipos portátiles , tablet PC , netbooks y equipos media center. El desarrollo de Windows 7 se completó el 22 de julio de 2009, siendo entonces confirmada su fecha de venta oficial para el 22 de octubre de 2009 junto a su equivalente para servidores windows server 2008 R2

A diferencia del gran salto arquitectónico y de características que sufrió su antecesor windows vista con respecto a windows, Windows 7 fue concebido como una actualización incremental y focalizada de Vista y su núcleo NT 6.0, lo que pe

rmitió mantener cierto grado de compatibilidad con aplicaciones y hardware en los que éste ya era compatible. Sin embargo, entre las metas de desarrollo para Windows se dio importancia a mejorar su interfaz para volverla más accesible al usuario e incluir nuevas características que permitieran hacer tareas de una manera más fácil y rápida, al mismo tiempo que se realizarían esfuerzos para lograr un sistema más ligero, estable y rápido.

Diversas presentaciones ofrecidas por la compañía en 2008 se enfocaron en demostrar capacidades multitactiles, una interfaz redise

ñada junto con una nueva barra de tareas y un sistema de redes domésticas fácil de usar denominado Grupo en el Hogar, además de importantes mejoras en el rendimiento general del sistema operativo.


10 )EXPLIQUE LA NOMENCLATURA DEL KERNEL EN LINUX

El kernel de Linux (Linux) está escrito en C y es código abierto licenciado bajo licencia GNU/GPL (excepto el planificador de recursos, el cual pertenece a Linus Torvalds y al resto de programadores que se han ocupado de dicha parte), con lo cual tenemos acceso al código para su estudio y/o modificación.

Lo podemos encontrar en diferentes versiones, ahora explicaremos la nomenclatura de éste.
La nomenclatura del Kernel se divide en 3 campos separados por un punto (.), estos son:

Primer campo: Número de la versión, actualmente a fecha de este documento es la 2.

Segundo campo: Numero de "sub-versión", por llamarlo de algun modo, es la version dentro de la propia versión, si este numero es par, la versión sera estable, si por el contrario es impar, ésta sera inestable.

Tercer campo: Nivel de corrección el en que se encuentra.
Asi pues el primer paso para configurar nuestro propio Kernel será bajarnoslo, lo podreis encontrar en ftp://ftp.kernel.org/pub/linux/kernel/En esta dirección de ftp encontrareis varios directorios, los que nos atañen son los del tipo v2.4 (última versión estable hasta el momento).En dicho directorio podemos encontrar tanto las sources del kernel con los parches aplicados (linux-x.y.z), como las propias aplicaciones (patch-x.y.z). Recomendamos descargar la última versión estable con la ultima aplicacion aplicada, en el momento que fue escrito este documento era la ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.18.tar.bz2 2.4.18, y es la que vamos a tratar a lo largo de este documento, no os preocupeis si la vuestra otra, ya que será bastante parecido.Una vez hemos descargado las sources del kernel, las metemos en un directorio, el más común es /usr/src. Hecho esto procedemos a descomprimir y desempaquetar las fuentes.

Si lo habeis descargado en tar.gz o tgz, la sintaxis para descomprimir y desempaquear es la siguiente:# tar xvfz linux-x.y.z.tar.gz (substituid los campos x, y, z por lo que proceda)Por el contrario, si lo teneis en tar.bz2, la sintaxis puede variar según la distribución, pero ha de ser una de estas tres (debeis tener constancia de que bunzip2 esta instalado en el sistema, de lo contrario no podreis descomprimir el archivo).# tar xvfj linux-x.y.z.tar.bz2# tar xvfI linux-x.y.z.tar.bz2# tar xvfy linux-x.y.z.tar.bz2En caso de que ninguna de estas maneras funcione, haced lo siguiente:# bunzip2 linux-x.y.z.tar.bz2 | tar xvf linux-x.y.z.tarEsto nos generará un directorio llamado linux, para una mayor organización, deberiamos renombrar el directorio linux como linux-x.y.z, para saber con que versión estamos trabajando, esto es muy util para cuando vayamos a configurar otro kernel.# mv /usr/src/linux /usr/src/linux-x.y.zHecho esto, para mayor comodidad podemos crear un enlace simbólico llamado linux.# ln -s /usr/src/linux-x.y.z /usr/src/linuxAhora entramos en el directorio /usr/src/linux y estamos preparados para dar el siguiente paso.

11) ¿ CUAL ES LA VULNERABILIDAD DEL NÚCLEO VISTA?

se acaba de descubrir una vulnerabilidad de seguridad en windows vista que afecta a la capa de red. este problema de seguridad en vista puede corromper la memoria mediante un buffer overflow provocando sendos pantallazos azules.

ademas de lo comentado anteriormente, esta vulnerabilidad podría ser usada para ejecutar código (aunque parece improbable ya que se necesitaran permisos de administrador) y lo que puede ser mas peligroso aun, activar lanzar un parche para solucionar asta vulnerabilidad ya que ha comentado que implementara la solución a este problemas de vista en su próximo service pack (vista SP 2)

la razón de esta despreocupación es que no hay un exploit publico que permita explotar esta vulnerabilidad. no sera mejor prevenir que curar? luego vendrán las prisas.

12 ¿CUAL ES LA DIFERENCIA ENTRE SOFTWARE LIBRE, SOFTWARE GRATUITO Y SOFTWARE DE DOMINIO PUBLICO?

el software libre es es la denominación del software que respeta la libertad de los usuarios sobre su producto adquirido y, por tanto, una vez obtenido puede ser usado, copiado, estudiado, cambiado y redistribuido libremente. Según la Free Software Foundation, el software libre se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, modificar el software y distribuirlo modificado.

El software libre suele estar disponible gratuitamente, o al precio de costo de la distribución a través de otros medios; sin embargo no es obligatorio que sea así, por lo tanto no hay que asociar software libre a software gratuito denominado usualmente freeware, ya que, conservando su carácter de libre, puede ser distribuido comercialmente software comercial. análogamente el software gratis o gratuito incluye en ocasiones el código fuente; no obstante, este tipo de software no es libre en el mismo sentido que el software libre, a menos que se garanticen los derechos de modificación y redistribución de dichas versiones modificadas del programa.

tampoco debe confundirse libre con software de dominio publico. este ultimo es aquel software que no requiere de licencia, pues sus derechos de explotación son para toda la humanidad, porque pertenece a todos por igual. cualquiera puede hacer uso de el, siempre con fines legales y consignando su autoria original. este software seria aquel cuyo autor lo dona a la humanidad o cuyos derechos de autor han expirado, tras un plazo contado desde la muerte de este, habitualmente 70 años. si un autor condiciona su uso bajo una licencia, por muy débil que sea, ya no es del dominio publico.

13) EXPLIQUE POR QUE LINUX ES LLAMADO GNU/LINUX

el nombre GNU,GNU not unix viene de las herramientas básicas de sistema operativo creadas por el proyecto GNU, iniciado por RICHARD STALLMAN en 1993 y manteniendo por la FSF. el nombre linux viene del núcleo linux, inicialmente escrito por linus torvalds en 1991.

La contribución de GNU es la razón por la que existe controversia a la hora de utilizar linux o GNU/linux para referirse al sistema operativo formado por las herramientas de GNU y el núcleo linux en su conjunto.

es uno de los términos empleados para referirse a la combinación del núcleo o kernel libre similar a UNIX denominado linux, que es usado con herramientas de sistema GNU. su desarrollo es uno de los ejemplos mas prominentes de software libre; todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquier bajo los términos de la GPL (licencia publica general de GNU) y otra serie de licencias libres

a pesar de que linux (núcleo) es, en sentido estricto, el sistema operativo, parte fundamental de la interacción entre el núcleo y el usuario (o los programas de aplicación) se maneja usualmente con las herramientas del proyecto GNU o de otros proyectos como GNOME. sin embargo una arte significativa, prefieren utilizar el termino linux para referirse a la unión de ambos proyectos.

14) CUAL ES LA DIFERENCIA ENTRE GNU HURD Y GNU MACH

GNU hurd es un conjunto de programas servidores que simulan un núcleo unix que establece la case del sistema operativo GNU. el proyecto GNU lo ha estado desarrollando desde 1990 como software libre. distribuyendolo bajo la licencia GPL.

hurd intenta superar los núcleos tipo unix en cuanto a funcionalidad, seguridad y estabilidad, aun manteniéndose compatible con ellos. esto se logra gracias a que hurd, implementa la especificación POSIX ( entre otras), pero eliminando las restricciones arbitrarias a los usuarios.

en la actualización el GNU MACH solo funciona en maquinas de arquitectura intel de 32 bits (IA32) y su uso mas popular es servir de soporte a HURD, el proyecto que pretende reemplazar a los núcleo tipo UNIX en el sistema operativo libre GNU