Docente: ZUBIETA RAMOZ, Jimmy Darwin Ciclo: I ciclo Juliaca, 25 de mayo 2014 INDICE
1. INTRODUCCIN ____________________________________________________ 3 2. linux _____________________________________________________________ 6 2.1 Etimologa __________________________________________________________ 6 2.2 Historia _____________________________________________________________ 6 2.3 Caractersticas de Linux ________________________________________________ 7 3. Componentes ____________________________________________________ 10 3.1 Entorno grfico _____________________________________________________ 11 3.1.1 Introduccin ______________________________________________________________ 11 3.1.2 El entorno grfico ms utilizado en Unix y GNU/Linux ____________________________ 12 3.1.3 Modalidad cliente-servidor __________________________________________________ 12 3.1.4 Los manejadores de ventanas ________________________________________________ 13 3.1.5 Las aplicaciones y las libreras de widgets ______________________________________ 14 3.1.6 Los entornos integrados de escritorio _________________________________________ 15 3.2 Como sistema de programacin ________________________________________ 15 3.3 Aplicaciones de usuario _______________________________________________ 16 3.4 Software de cdigo cerrado para GNU/Linux ______________________________ 17 3.5 Cuota de mercado ___________________________________________________ 17 4. versiones ________________________________________________________ 18 5. aplicaciones______________________________________________________ 21 5.1 Supercomputadoras _________________________________________________ 21 5.2 Telfonos inteligentes ________________________________________________ 22 5.3 Distribuciones ms comunes: anlogas y diferencias _______________________ 22 6 bibiografia _______________________________________________________ 25
1. INTRODUCCIN
Como sistema operativo, Linux es muy eficiente y tiene un excelente diseo. Es multitarea, multiusuario, multiplataforma y multiprocesador; en las plataformas Intel corre en modo protegido; protege la memoria para que un programa no pueda hacer caer al resto del sistema; carga slo las partes de un programa que se usan; comparte la memoria entre programas aumentando la velocidad y disminuyendo el uso de memoria; usa un sistema de memoria virtual por pginas; utiliza toda la memoria libre para cache; permite usar bibliotecas enlazadas tanto esttica como dinmicamente; se distribuye con cdigo fuente; usa hasta 64 consolas virtuales; tiene un sistema de archivos avanzado pero puede usar los de los otros sistemas; y soporta redes tanto en TCP/IP como en otros protocolos. .Es una implementacin de libre distribucin UNIX para computadoras personales (PC), servidores, y estaciones de trabajo. Fue desarrollado para el i386 y ahora soporta los procesadores i486, Pentium, Pentium Pro y Pentium II, as como los clones AMD y Cyrix. Tambin soporta mquinas basadas en SPARC, DEC Alpha, PowerPC/PowerMac, y Mac/Amiga Motorola 680x0. En otros sistemas operativos, como Windows 95 y 98, no existe un paralelismo real, pues son los procesos los que se ceden el procesador. Por tanto, si un programa quiere acaparar el procesador no tendr excesivos problemas para hacerlo. Pero Linux no solo asigna el tiempo de procesador entre los programas sino que tambin asigna de manera eficiente la memoria evitando que dos programas intenten escribir en la misma porcin de memoria. Y en el ltimo caso de que esto ocurra, el ncleo del sistema operativo para ambos procesos y en ningn caso reiniciar la mquina. Un sistema multiusuario concurrente (o multiusuario) permite que varios usuarios utilicen la mquina simultneamente, bien sea en local o en remoto, con su propio espacio de trabajo. En Windows
95/98/Me/NT se maneja el concepto de multiusuario secuencial, esto significa que el sistema puede albergar varios usuarios pero nunca simultneamente. GNU/Linux es multiplataforma porque existen versiones para PC, PowerPC, Sparc, Macintosh, Amstrad, ARM, Motorola 68K. La filosofa de las maquinas con administrador y usuarios, bsicamente, se trata de un concepto muy sencillo: en el sistema habr un administrador (root) encargado de realizar las tareas bsicas de configuracin, mantenimiento e instalacin de nuevos programas, al servicio del resto de los usuarios. Este posee los privilegios de aadir, quitar y modificar caractersticas de cualquier otro usuario de la mquina. As mismo, como se ha dicho antes cada usuario dispone de su propio espacio de trabajo, individual e inviolable (salvo por el administrador, si se diera el caso), en el cual puede decidir si quiere compartir su trabajo con algn grupo dentro de la misma mquina o dejarlo privado para uso personal. Esto se consigue configurando los permisos del archivo. (I.P.N. C. d., 2011) 5
MARCO TERICO
6
2. LINUX 2.1 ETIMOLOGA El nombre GNU, GNU's Not Unix (GNU no es Unix), viene de las herramientas bsicas de sistema operativo creadas por el proyecto GNU, iniciado por Richard Stallman en 1983 y mantenido por la FSF. El nombre Linux viene del ncleo Linux, inicialmente escrito por Linus Torvalds en 1991.
La contribucin de GNU es la razn 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 ncleo Linux en su conjunto. (Atribucin L. C., 2014)
2.2 HISTORIA La historia de Linux comenz mucho antes de lo que la mayora de gente piensa, ya que en 1969, Ken Thompson, de AT&T Bell Laboratorios, desarroll el sistema operativo Unix, adaptndolo a las necesidades de un entorno de investigacin, sin saber la importancia que llegara a tener su trabajo. Un ao despus Dennis Ritchie (creador del lenguaje de programacin C), colabor con Ken Thompson para pasar el cdigo del sistema Unix a C. Lo que convierto a Unix en un sistema operativo transportable. Unix creci gradualmente hasta convertirse en un producto de software estndar, distribuido por muchos vendedores tales como Novell e IBM. Sus primeras versiones fueron distribuidas de forma gratuita a los departamentos cientficos de informtica de muchas universidades de renombre. En 1972, los laboratorios Bell empezaron a emitir versiones oficiales de Unix y a otorgar licencias del sistema a distintos usuarios. En 1975, Berkeley lanz su propia versin de Unix (BSD). Esta versin de Unix se convirti en la principal competidora de la versin de los laboratorios Bell de ATT&T, pero no era la nica ya que en 1980, Microsoft desarroll una versin de Unix para PC llamada Xenix. En 1991 esta organizacin desarroll el SistemaV versin4, que incorporaba casi todas las caractersticas que se encuentran en el SistemaV versin3, BSDversin4.3, SunOS y Xenix. Como respuesta a esta nueva versin, 7
varias compaas, tales como IBM y Hewlett Packard, establecieron la Open Software Foundation (OSF) para crear su propia versin estndar de Unix. Debido a la proliferacin de versiones de Unix en las dcadas anteriores, el Instituto de Ingenieros Elctricos y Electrnicos (IIEE) desarrollo un estndar del Unix independiente para el American National Institute (ANSI). Este nuevo estndar ANSI del Unix se llama Portable Operating System Interface for Computer Environments (POSIX). Este estndar define una norma universal a la cual se deben adherir todas las versiones de Unix. En esa poca, los estudiantes utilizaban un programa llamado Minix, que incorporaba diferentes caractersticas de Unix. Minix fue creado por el profesor Andrew Tannenbaum. Director del Departamento de Sistemas de la Universidad de Vrije, Amsterdam. Profesor de Arquitectura de Ordenadores y Sistemas Operativos. Licenciado en el MIT, y doctorado en la Universidad de Berkeley, California. En 1992 particip debate con Linus sobre la idea de este utilizar un ncleo monoltico en vez de los basados en un micro ncleo que Tanenbaum crea que seran la base de los sistemas operativos futuros. (masartre, 2011) 2.3 CARACTERSTICAS DE LINUX
*Multitarea: varios programas (realmente procesos) ejecutndose al mismo tiempo. *Multiusuario: varios usuarios en la misma mquina al mismo tiempo (y sin licencias para todos). *Multiplataforma: corre en muchas CPUs distintas, no slo Intel. *Funciona en modo protegido 386. *Tiene proteccin de la memoria entre procesos, de manera que uno de ellos no pueda colgar el sistema. *Carga de ejecutables por demanda: Linux slo lee de disco aquellas partes de un programa que estn siendo usadas actualmente. 8
*Poltica de copia en escritura para la comparticin de pginas entre ejecutables: esto significa que varios procesos pueden usar la misma zona de memoria para ejecutarse. Cuando alguno intenta escribir en esa memoria, la pgina (4Kb de memoria) se copia a otro lugar. Esta poltica de copia en escritura tiene dos beneficios: aumenta la velocidad y reduce el uso de memoria. *memoria virtual usando paginacin (sin intercambio de procesos completos) a disco: una particin o un archivo en el sistema de archivos, o ambos, con la posibilidad de aadir ms reas de intercambio sobre la marcha (se sigue denominando intercambio, es en realidad un intercambio de pginas). Un total de 16 zonas de intercambio de 128Mb de tamao mximo pueden ser usadas en un momento dado con un lmite terico de 2Gb para intercambio. *La memoria se gestiona como un recurso unificado para los programas de usuario y para el cach de disco, de tal forma que toda la memoria libre puede ser usada para cach y ste puede a su vez ser reducido cuando se ejecuten grandes programas. *Libreras compartidas de carga dinmica (DLL's) y libreras estticas tambin, por supuesto. *Se realizan volcados de estado (core dumps) para posibilitar los anlisis post-mortem, permitiendo el uso de depuradores sobre los programas no slo en ejecucin sino tambin tras abortar stos por cualquier motivo. *Casi totalmente compatible con POSIX, System V y BSD a nivel fuente. *Mediante un mdulo de emulacin de iBCS2, casi completamente compatible con SCO, SVR3 y SVR4 a nivel binario. *Todo el cdigo fuente est disponible, incluyendo el ncleo completo y todos los drivers, las herramientas de desarrollo y todos los programas de usuario; adems todo ello se puede distribuir libremente. Hay algunos programas comerciales que estn siendo ofrecidos para Linux 9
*actualmente sin cdigo fuente, pero todo lo que ha sido gratuito sigue *siendo gratuito. *Control de tareas POSIX. *pseudo-terminales (pty's). *Emulacin de 387 en el ncleo, de tal forma que los programas no tengan que hacer su propia emulacin matemtica. Cualquier mquina que ejecute Linux parecer dotada de coprocesador matemtico. Por supuesto, si tu ordenador ya tiene una FPU (unidad de coma flotante), ser usada en lugar de la emulacin, pudiendo incluso compilar tu propio kernel sin la emulacin matemtica y conseguir un pequeo ahorro de memoria. *Soporte para muchos teclados nacionales o adaptados y es bastante fcil aadir nuevos dinmicamente. *Consolas virtuales mltiples: varias sesiones de logan a travs de la consola entre las que se puede cambiar con las combinaciones adecuadas de teclas (totalmente independiente del hardware de video). Se crean dinmicamente y puedes tener hasta 64. *Soporte para varios sistemas de archivo comunes, incluyendo minix-1, Xenix y todos los sistemas de archivo tpicos de System V, y tiene un avanzado sistema de archivos propio con una capacidad de hasta 4 Tb y nombres de archivos de hasta 255 caracteres de longitud. *Acceso transparente a particiones MS-DOS (o a particiones OS/2 FAT) mediante un sistema de archivos especial: no necesitas ningn comando especial para usar la particin MS-DOS, parece un sistema de archivos normal de Unix (excepto por algunas graciosas restricciones en los nombres de archivo, permisos, y esas cosas). *Las particiones comprimidas de MS-DOS 6 no son accesibles en este momento, y no se espera que lo sean en el futuro. El soporte para VFAT (WNT, Windows 95) ha sido aadido al ncleo de desarrollo y estar en la prxima versin estable. 10
*Un sistema de archivos especial llamado UMSDOS que permite que Linux sea instalado en un sistema de archivos DOS. *Soporte en slo lectura de HPFS-2 del OS/2 2.1 *Sistema de archivos de CD-ROM que lee todos los formatos estndar de CD- ROM. *TCP/IP, incluyendo ftp, telnet, NFS, etc. *AppleTalk disponible en el actual ncleo de desarrollo. *Software cliente y servidor NetWare disponible en los ncleos de desarrollo.
3. COMPONENTES
El sistema operativo Linux consiste en cuatro componentes principales: el kernel o ncleo, el Shell, los comandos y el sistema de archivos. Cada componente se describe a continuacin. Kernel o ncleo El kernel es la parte del sistema operativo que interacta directamente con el hardware de la computadora. Ofrece un conjunto de servicios que asla a los programas de aplicaciones del tipo de hardware en el que se est ejecutando. Se le considera el administrador, o el ncleo del sistema operativo porque administra la memoria, el tiempo de procesamiento, mantiene el sistema de archivos, maneja las interrupciones y errores, y controla las entradas y salidas. Shell El programa Shell lee los comandos alimentados por el usuario, los interpreta y manda una peticin de ejecucin del programa. Puesto que realiza esta tarea, se le llama intrprete de comandos. Adems de ser 11
el intrprete de comandos es tambin un lenguaje de programacin que permite el controlar la ejecucin de comandos. Un Shell es asignado a cada usuario por el administrador al momento de creacin de la cuenta. El administrador puede cambiar el Shell del usuario en cualquier momento. Comandos y Aplicaciones El sistema Linux cuenta con cientos de programas de utilera o comandos. Tambin se les conoce como herramientas puesto que pueden ser usados en varias formas para completar un trabajo. Una ventaja del sistema operativo Linux es la facilidad de instalacin de nuevos comandos o aplicaciones. El Shell slo necesita saber en dnde se encuentran y estos los pueden asignar los usuarios.
3.1 ENTORNO GRFICO
3.1.1 INTRODUCCIN
ste documento surge a partir de la preparacin para una charla que iba a dar en la inauguracin del grupo de usuarios GNU/Linux de San Jos, Uruguay. La misma apunta hacia las personas que recin empiezan o piensan empezar a darle un vistazo al sistema operativo GNU/Linux, por lo tanto es de bajo contenido tcnico. Lamentablemente no pude realizar la charla debido a que hubo un atraso en los horarios y haba charlas ms importantes para hacer.
12
3.1.2 EL ENTORNO GRFICO MS UTILIZADO EN UNIX Y GNU/LINUX
XWindow es un sistema estandarizado para manejo de aplicaciones grficas en Unix y es el utilizado por GNU/Linux. Posee una arquitectura muy peculiar pensada no slo para usar aplicaciones grficas locales, sino que tambin remotas, adems de brindar una gran flexibilidad al entorno y en definitiva al usuario del mismo. El sistema XWindow se compone de varias partes bien definidas y estandarizadas, pero los conceptos ms notables y tiles de entender son (Baldo, 2012) *Funciona en modalidad cliente-servidor *Posee los denominados manejadores de ventanas *Las aplicaciones utilizan libreras de widgets *Existen entornos integrados de escritorio 3.1.3 MODALIDAD CLIENTE-SERVIDOR
Mediante sta modalidad, un usuario utilizando el sistema XWindow puede correr no solamente aplicaciones en su computadora, sino que tambin puede correr aplicaciones en otra computadora y manejarlas de la misma manera a como lo hace con las aplicaciones ejecutndose localmente. El servidor es el encargado de manejar el hardware (pantalla, teclado, mouse, etc.). Los clientes son las aplicaciones que el usuario utiliza, stas se conectan al servidor utilizando los servicios brindados por ste y la conexin puede ser remota o en la misma computadora. 13
La abstraccin del hardware brindada por el servidor permite utilizar aplicaciones ejecutadas en plataformas completamente diferentes, incluso diferentes sistemas operativos, implementaciones de XWindow y hardware. Ntese el potencial que brinda esto, ya que por ejemplo puede utilizarse para ahorrar dinero ejecutar aplicaciones en un computador de alta performance y tener terminales baratas, sencillas y prcticas para manejar dichas aplicaciones; y sta solucin tambin brinda mayor facilidad de administracin, ya que la misma se puede centralizar en el computador central (el cual desde el punto de vista de XWindow acta cmo cliente y las terminales seran los servidores). 3.1.4 LOS MANEJADORES DE VENTANAS
stos se encargan de manejar la posicin y tamao de las ventanas de las aplicaciones, as como tambin el "foco", el cambio de una ventana a otra, y varias otras cosas ms, relacionadas con las ventanas. Los manejadores de ventanas son clientes especiales, ya que puede correrse en un momento dado solamente uno por cada servidor. Por lo general los manejadores de ventanas soportan varias caractersticas avanzadas como por ejemplo varios escritorios virtuales, decoraciones muy vistosas y configurables, algunos soportan menes para lanzar aplicaciones e conos en el escritorio, etc. Los escritorios virtuales dividen la pantalla en partes o escritorios, donde se puede tener por cada escritorio un conjunto de ventanas dado, y se puede cambiar de escritorio a escritorio tan fcilmente como cambiarse de una aplicacin a otra.
14
3.1.5 LAS APLICACIONES Y LAS LIBRERAS DE WIDGETS
XWindow provee una librera de programacin estandard llamada XLib, la cual es muy bsica y no fue pensada para hacer aplicaciones directamente sobre ella (si bien las hay), sino ms bien para ser usada por otras libreras de ms alto nivel de abstraccin y proveer de las funciones bsicas de comunicacin, dibujado, etc. de XWindow. Por lo tanto las aplicaciones son desarrolladas sobre libreras que proporcionan los denominados "widgets" y otras utilidades. Los widgets son los controles con los cuales el usuario interacta con las aplicaciones, es decir, son las cajitas de texto, las etiquetas, los botones, etc., y que juntos forman la interface de las aplicaciones. Existen muchas libreras de widgets y por lo tanto hay varios estilos de interfaces y muchos programas se ven diferentes a otros debido a que usan una librera de widgets diferente. Sin embargo hay algunas libreras de widgets que son ms comnmente usadas, pero stas por lo general permiten una amplia configuracin de la visualizacin y el comportamiento al usuario, y por eso si uno observa el entorno grfico de dos usuarios, por lo general encontrar diferencias. Que halla tal variedad y flexibilidad no es algo malo, sino que esto permite al usuario estar a gusto con su entorno grfico, y hasta identificarse con l.
15
3.1.6 LOS ENTORNOS INTEGRADOS DE ESCRITORIO
stos van ms all de un manejador de ventanas y una librera para crear aplicaciones sobre ella; proveen un conjunto de aplicaciones, libreras y otros sistemas, para lograr mayor integracin entre sus aplicaciones y mayor integracin de stas con el entorno. Algunos de los aspectos que definen los entornos integrados de escritorio son: El funcionamiento del drag&drop (ej. cuando se arrastra un archivo de imagen sobre un procesador de texto). la intercomunicacin entre aplicaciones. Extensiones al manejador de ventanas para que soporte ms cosas y se integre mejor con las aplicaciones. Arquitectura de aplicaciones formadas por componentes embebidos (ej. embeber una planilla de clculo en un procesador de texto). Configuracin centralizada y compartida (ej. se cambia un seto y se refleja en todas las aplicaciones). Manejo de sesiones (ste punto tambin puede ser realizado por algunos manejadores de ventanas u otros programas y consiste en apagar el sistema en un estado dado y al reiniciarlo que vuelva al estado en que se encontraba, es decir, con todas las aplicaciones con las cuales el usuario estaba trabajando abiertas y con los documentos o datos que estaban manejando). Otras cosas que redundan en una mayor integracin entre las aplicaciones y el entorno (ej. conos estandard, teclas de acceso rpido estandard, etc.).
3.2 COMO SISTEMA DE PROGRAMACIN 16
La coleccin de utilidades para la programacin de GNU es con diferencia la familia de compiladores ms utilizada en este sistema operativo. Tiene capacidad para compilar C,C++, Java, Ada, Pascal, entre otros muchos lenguajes. Adems soporta diversas arquitecturas mediante la compilacin cruzada, lo que hace que sea un entorno adecuado para desarrollos heterogneos. Hay varios entornos de desarrollo integrados disponibles para GNU/Linux incluyendo, Anjuta, KDevelop, Lazarus, Ultimate++, Code::Blocks, NetBeans IDE y Eclipse. Tambin existen editores extensibles como Emacs o Vim. GNU/Linux tambin dispone de capacidades para lenguajes de guion (script), aparte de los clsicos lenguajes de programacin de shell, o el de procesador de textos por patrones y expresiones regulares llamado awk, la mayora de las distribuciones tienen instalado Python, Perl, PHP y Ruby
3.3 APLICACIONES DE USUARIO
Las aplicaciones para GNU/Linux se distribuyen principalmente en los formatos .deb y .rpm, los cuales fueron creados por los desarrolladores de Debian y Red Hatrespectivamente. Tambin existe la posibilidad de instalar aplicaciones a partir de cdigo fuente en todas las distribuciones.
17
3.4 SOFTWARE DE CDIGO CERRADO PARA GNU/LINUX
Durante la etapa temprana haba pocas aplicaciones de cdigo cerrado para GNU/Linux. Con el tiempo se fueron portando programas no libres al sistema GNU/Linux, entre ellosAdobe Reader, Adobe Flash, Opera, entre otros. (Atribucin C. C., 2014) Empresas que patrocinan su uso 5 Cuota de mercado Con la adopcin por numerosas empresas fabricantes, un buen nmero de computadoras se venden con distribuciones pre-instaladas, y GNU/Linux ha comenzado a tomar su lugar en el vasto mercado de las computadoras de escritorio. Algunas de las empresas que colaboran en la difusin de este sistema operativo ya sea trabajando en el ncleo Linux, proporcionando soluciones de software o preinstalando el sistema operativo, son: Intel , 11
12
13 Google, 14
15 IBM, 16 AMD, 17
18
19
20 Sun Microsystems, 21 Dell, 22
23 Lenovo, 24
25 Asus, 26 Hewlett-Packard (HP), 27
28
29 Silicon Graphics International (SGI), 30 Renesas Technology, 31 Fujitsu, 32 Analog Devices, 33 Freescale, 34 VIA Technologies, 35 Oracle, 36 Novell 37 y RedHat, 38 entre otras. 39
El respaldo de compaas de software tambin est presente, ya que, entre otras aplicaciones, Nero, Java, Google Earth, Google Desktop, Adobe Reader, Flash, RealPlayer y Yahoo! Messenger estn disponibles para GNU/Linux. Al haber software equivalente, es innecesario instalar los precisamente mencionados con anterioridad. 3.5 CUOTA DE MERCADO
Numerosos estudios cuantitativos sobre software de cdigo abierto estn orientados a temas como la cuota de mercado y la fiabilidad, y ciertamente muchos de estos estudios examinan especficamente a GNU/Linux. 40
La medicin "cuota de mercado" puede resultar inservible ya que es un concepto basado en ventas comerciales (unidades materiales vendidas). Por otro lado Linux es utilizado frecuentemente en servidores 18
con acceso pblico desde Internet por lo que la cuota de mercado es extremadamente inferior a la cuota de uso. Baste notar, p.ej, que Facebook, Gmail, LinkedIn o Yahoo funcionan sobre servidores GNU/Linux, de forma que aun cuando estemos accediendo desde un navegador ejecutndose en Windows/Mac, la aplicacin real se est ejecutando en servidores Linux y los datos estn almacenndose igualmente en dichos servidores.
IBM Roadrunner, lasupercomputadora ms potente de 2008, funciona bajo una distribucin GNU/Linux Red Hat Enterprise Linux. Hay varias empresas que comercializan soluciones basadas en GNU/Linux: IBM, Novell (SuSE), Red Hat (RHEL), Mandriva (Mandriva Linux), Rxart, Canonical Ltd. (Ubuntu), as como miles de PYMES que ofrecen productos o servicios basados en esta tecnologa.
4. VERSIONES
UBUNTU Distribucin basada en Debian, con lo que esto conlleva y centrada en el usuario final y facilidad de uso. Muy popular y con mucho soporte en la comunidad. El entorno de escritorio por defecto es GNOME. Pgina Web de Ubuntu
REDHAT ENTERPRISE 19
Esta es una distribucin 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. Pgina Web de Red Hat
FEDORA Esta es una distribucin patrocinada por RedHat y soportada por la comunidad. Facil de instalar y buena calidad. Pgina Web de Fedora
DEBIAN Otra distribucin con muy buena calidad. El proceso de instalacion es quizas un poco ms complicado, pero sin mayores problemas. Gran estabilidad antes que ltimos avances. Pgina Web de Debian
Opens use Otra de las grandes. Facil de instalar. Versin libre de la distribucion comercial SuSE. Pgina Web de OpenSuSE
SuSE LINUX ENTERPRISE Otra de las grandes. Muy buena calidad, contenidos y soporte a los usuarios por parte de la empresa que la distribuye, Novell. Es necesario el pago de una licencia de soporte. Enfocada a empresas. 20
Pgina Web de SuSE Linux Enterprise
SLACKWARE Esta distribucin 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 distribucion instalada en su ordenador en algun momento. Pgina Web de Slackware
GENTOO Esta distribucin es una de las unicas que incorporaron un concepto totalmente nuevo en Linux. Es un sistema inspirado en BSD-ports. Podeis compilar/optimizar vuestro sistema completamente desde cero. No es recomendable adentrarse en esta distribucion sin una buena conexion a internet, un ordenador medianamente potente (si quereis terminar de compilar en un tiempo prudencial) y cierta experiencia en sistemas Unix. Pgina Web de Gentoo
KUBUNTU Distribucin basada en Ubuntu, con lo que esto conlleva y centrada en el usuario final y facilidad de uso. La gran diferencia con Ubuntu es que el entorno de escritorio por defecto es KDE. Pgina Web de Kubuntu
MANDRIVA Esta distribucin fue creada en 1998 con el objetivo de acercar el uso de Linux a todos los usuarios, en un principio se llam Mandrake Linux. Facilidad de uso 21
para todos los usuarios. Pgina Web de mandriva (MARTINEZ, 2012)
5. APLICACIONES
5.1 SUPERCOMPUTADORAS Dentro del segmento de supercomputadoras, a noviembre de 2012, el uso de este sistema ascendi al 93,8% de las computadoras ms potentes del mundo por su confiabilidad, seguridad y libertad para modificar el cdigo. 41 De acuerdo con TOP500.org, que lleva estadsticas sobre las 500 principales supercomputadoras del mundo, a noviembre de 2012: 469 usaban una distribucin basada en GNU/Linux, 20 Unix, 7 mezclas, 1 BSD y 3 Windows. Las primeras 37 supercomputadoras, incluidas la nmero 1, la Titan - Cray XK7 con 560.640 procesadores, utilizan distribuciones basadas en GNU/Linux. 42
GNU/Linux, adems de liderar el mercado de servidores de Internet debido, entre otras cosas, a la gran cantidad de soluciones que tiene para este segmento, tiene un crecimiento progresivo en computadoras de escritorio y porttiles. Adems, es el sistema base que se ha elegido para el proyecto OLPC: One Laptop Per Child. 43
22
Para saber ms sobre las arquitecturas soportadas, lea el artculo "Portabilidad del ncleo Linux y arquitecturas soportadas".
5.2 TELFONOS INTELIGENTES
Linux tiene un papel imprescindible en el territorio de los telfonos inteligentes debido a que Android y meego lo utilizan. Actualmente Android es el sistema operativo predominante en los nuevos telfonos inteligentes y su cuota de mercado mundial supera a iOS de Apple. 5.3 DISTRIBUCIONES MS COMUNES: ANLOGAS Y DIFERENCIAS Clasificar a las distintas distribuciones que hay es una ardua tarea, pues hay que tener en cuenta que actualmente existen ms de 160 distribuciones distintas activamente en desarrollo y 7 grandes distribuciones con la mayor parte de los usuarios (Puede consultarse una extensa lista en http://www.linux.org/dist/index.html). Sin embargo todas ellas tratan de seguir un estndar comn que contribuya a una uniformidad en las distribuciones. As un usuario que sepa manejar Red Hat, tambin sabr manejar SuSE, Mandrake, Debian, etc. Este estndar es el LSB (Linux Standard Base - www.linuxbase.org), que est desarrollado por el "Free Standards Group" y apoyado por distintas empresas. No es obligatorio seguir estas directivas para que un sistema sea considerado una distribucin de Linux, pero en ese caso perder compatibilidades con ciertos programas diseados para Linux. En el LSB se tratan muchos aspectos: 1) Tratan de conseguir un API (Application Program Interface) unificado. De este modo un programa sabe de qu componentes dispone y el programador puede reutilizar cdigo. Y no slo se trata especificar una serie de libreras o programas base, sino que adems espeficica como debe ser el rbol de directorios para que el programa sepa en que sitio ha de instalar sus componentes. Hay que aclarar que en Linux los programas no suelen disponer de espacio propio (es decir, no dispone de un directorio propio), sino que las libreras se instalan en directorios 23
comunes, los ejecutables en otros directorios, los ficheros de configuracin en otros. 2) Adems para cada uno de los componentes de la API se ha de escribir un documento detallado que refleje exctamente su comportamiento. 3) Aadir nuevos componentes que se hayan convertido en estndares de facto. 4) Aadir elementos que permitan una mayor compatibilidad entre las distintas plataformas. Adems hay que recordar, que como GNU/Linux es un sistema operativo diseado para ser compatible con UNIX hay muchas analogas entre ambos sistemas. Por ejemplo, hay muchos programas comunes y la forma de estructurarlo es muy similar. Las principales diferencias entre distribuciones se encuentran en los sistemas de paquetes que utilizan y los programas propios que incluyen. Tambin existen ligeras diferencias en la forma en la que se guardan los ficheros en el rbol de directorios. Un paquete, de forma general, puede definirse como un programa ya compilado y listo para su uso. Adems existe un gestor de paquetes que sabe cmo instalar el paquete y cmo desinstalarlo. Esto es equivalente al asistente de instalacin de Windows, pues recordemos que el programa se "disparse" por todo el disco duro. Tambin hay paquetes que contienen las fuentes del programa, que se utilizan para compilar el programa en s, pero manteniendo la estructura del paquete, de modo que mantiene ordenado a todo el sistema. Aunque hay otros sistemas de paquetes, los mas avanzados y extendidos son: RPM (RedHat Package Manager) y DEB (paquetes de Debian). El problema con los RPM's (que en distribuciones ms actuales se est desarrollando) son las dependencias. Un paquete puede necesitar de otros antes de instalarse. Los sistemas RPMs no resuelven eso 24
automticamente, de forma que al instalar un paquete, si necesitamos alguna librera, tendremos que buscar el paquete que la contiene, instalarla ... y as hasta terminar. Este problema no existe con el sistema de paquetes DEB, pues incluye programas que realizan el anlisis de dependencias y descargan los paquetes requeridos automticamente. Otro punto de diferencia entre distribuciones es el sistema de instalacin. Como todo programa, cuanto ms sencilla es la instalacin ms decisiones toma el programa en nombre del usuario. De este modo nos podemos encontrar con instalaciones muy sencillas que preguntan lo mnimo para ser instalado (Mandrake, Suse, RedHat, ...) o bien otras que demandan al usuario que elija entre distintas opciones (Debian, Slackware, ...). Adems existen an algunas distribuciones cuya instalacin es en modo texto (Debian y Slackware, por ejemplo) que hacen que sea desconcertante e incluso "desagradable"
25
6 BIBIOGRAFIA
Atribucin, C. C. (21 de mayo de 2014). http://es.wikipedia.org/?title=GNU/Linux#Como_sistema_de_programaci.C3.B3n. Obtenido de http://es.wikipedia.org/?title=GNU/Linux#Como_sistema_de_programaci.C3.B3n. Atribucin, L. C. (20 de febrero de 2014). http://es.wikipedia.org/wiki/Wikipedia:Contacto. Obtenido de http://es.wikipedia.org/wiki/Wikipedia:Contacto. Baldo, I. (10 de abril de 2012). http://ibaldo.codigolibre.net/index.php. Obtenido de http://ibaldo.codigolibre.net/index.php. I.P.N., C. d. (23 de 04 de 2011). http://www.cs.cinvestav.mx/~EVOCINV/tutorials/linux.htm. Obtenido de http://www.cs.cinvestav.mx/~EVOCINV/tutorials/linux.htm. I.P.N., C. d. (13 de abril de 2011). http://www.cs.cinvestav.mx/~EVOCINV/tutorials/linux.htm. Obtenido de http://www.cs.cinvestav.mx/~EVOCINV/tutorials/linux.htm. Martinez, R. (21 de junio de 2012). http://www.linux-es.org/distribuciones. Obtenido de http://www.linux-es.org/distribuciones. masartre. (23 de septiembre de 2011). http://histinf.blogs.upv.es/author/masartre/. Obtenido de http://histinf.blogs.upv.es/author/masartre/.