Download El software libre
Document related concepts
Transcript
Steven sosa godoy Software libre El software libre (en inglés free software, aunque esta denominación también se confunde a veces con "gratis" por la ambigüedad del término "free" en el idioma inglés, por lo que también se usa "libre software" y "logical libre") 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, modificado, 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 elsoftware 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 software libre con "software de dominio público". Éste último 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 él, siempre con fines legales y consignando su autoría original. Este software sería 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 público. Usos Ciñéndonos a la definición más sencilla y clara (fuente), podríamos describir como software libre (en inglésfree software, aunque esta denominación también se confunde a veces con “gratis” por la ambigüedad del término en el idioma inglés, por lo que también se usa “libre software”) a 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, modificado 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. Por tanto, el usuario tiene la libertad de ejecución, copia, modificación y distribución del mismo. Esos son unos principios que se vienen rompiendo en los últimos tiempos en ámbitos educativos, donde la libertad de ejecución depende de nuestra localización geográfica, ya que cada Consejería tiene su maravillosa distribución educativa (Linkat, Lliurex, Max, LinEx, etc.), la cual instalan por defecto en todos los equipos que entregan a los centros educativos que dependen de su ámbito de gestión (en algunos casos con arranque dual con Windows). Tenemos 17 distribuciones (en algunas CC.AA. alguna más, procedente de la escisión de algún grupo de docentes que trabajan “por libre” sin recibir ningún tipo de ayuda y/o subvención), muchas de las cuales difieren de la “distribución madre” (aquella a partir de la cual se originan: Ubuntu, Fedora, etc.) simplemente en poner la banderita de turno y un logotipo más o menos trabajado (ratoncitos, pingüinos más o menos simpáticos, etc.) junto con un surtido de aplicaciones educativas (fácilmente incorporable desde repositorios en cualquier distribución)… y, eso sin olvidar la traducción (también de serie en las distribuciones que nos podemos encontrar en la red). Ejempos de software libre 1. Audacity Accepting 2. Ares Galaxy 3. Shareaza 4. GTK+ and The GIMP installers for Windows 5. DC++ 6. Zip 7. Pidgin 8. Virtual Dub 9. C Dex 10. eMule Plus 11. Azureus 12. Php BB 13. Guliverkli 14. Bit Torrent 15. A MSN 16. Tight VNC 17. Win SCP 18. JBoss.org 19. File Zilla 20. PDF Creator 21. Ultra VNC 22. ZSNES 23. NASA World Wind 24. Ghost script 25. Php My Admin 26. AC3Filter 27. PortableApps.com: Portable Software/USB 28. ABC [Yet Another Bit torrent Client] 29. Dev-C++ 30. eMule Morph 31. Clam Win Free Antivirus 32. Simple Directory Listing 33. Min GW – Minimalist GNU for Windows 34. Ffd show 35. XAMPP 36. DOS Box DOS Emulator 37. Media Coder 38. eMule X treme Mod 39. Web min 40. Visual Boy Advance 41. Miranda 42. Gnu Win 43. Peer Guardian 44. Tortoise SVN 45. Virtual Dub Mod 46. Wire shark 47. Notepad++ 48. Gallery 49. Eraser Windows desatendido ¿Qué es un Windows Desatendido? Un Windows Desatendido no es otra cosa más que un windows modificado, puede ser modificado para quitarle o integrarle cosas (Drivers, programas, aplicaciones, etc.) . 50. El objetivo de modificar un windows no es otro más que facilitar u optimizar la instalación de alguno de los sistemas oparativos de microsoft. Ya que el termino "desatendido" nos dice que no tenemos que estar atendiendo la instalación mientras esta ocurre y esto nos facilita mucho dar mantenmiento a nuestro ordenador cuando requiere formatear, esto ocurre debido a que un sistema operativo desatendido nunca nos pedira insertar un serial o alguna configuración, y en caso de pedirnos algun dato sera minimo en comparación a una instalación cotidiana de un Windows ordinario. Mencione arriba que los windows desatendidos suelen integrar aplicaciones, softwares y programas y ahora explicare un poco mas acerca de la forma que esto puede llegar a facilitar aun más las cosas. 51. Como ustedes saben despues de dar formato a una pc esta queda como nueva hablando en terminos de software y ninguna de nuestras aplicaciones esta presente, cosa que nos obliga a instalarlas de una en una, esto con el fin de regresarle la utilidad a nuestra pc, esto puede resultar bastante tedioso (molesto, aburrido, tardado, etc.) porque nos quita tiempo que bien si no es demasiado si es considerable si se tienen cosas que hacer. Los desatendidos si bien no incluyen todos nuestros programas, si incluyen los basicos que cualquier usuario promedio necesita por ejemplo; Antivirus, Office, Adobe, Winrar, y algunas aplicaciones más que son de uso cotidiano (estas aplicaciones las determina el que modifico el sistema). Estas aplicaciones suelen ser de instalación desatendida al igual que el propio sistema operativo cosa que nos brinda una mayor comodidad ya que recien instalado ya podremos usarlo y de necesitar mas aplicaciones de las que instalo el sistema ya no nos tomara el mismo tiempo instalarlas porque el propio windows ya nos ayudo instalando algunas. Otro punto de esta pregunta es la integración de drivers o controladores en un windows desatendido. La integración de controladores es una de las cualidades que hacen especial a un desatendido ya que el autor del windows desatendido integra controladores para maximizar la compatiblidad del sistema y ademas para ahorrarnos la instalacion de nuestros controladores. El autor de sistema obviamente no integra los controladores de todas las maquinas ni nada por el estilo, se suelen integrar drivers por ejemplo: SATA, algunos de video, audio y un poco de todo pero como dije, no integra los drivers para todas las maquinas, por eso siempre tenganlos a la mano (El creador suele itegrar todos sus controladores a la instalación jeje lo que lo hace aun mas conveniente para el mismo). Como ultimo punto pero no menos importante es la adición, desactivación y removimiento de servicios de windows, esto con el objetivo de cuplir alguna función en específico, ya sea la de darle más velocidad al propio windows, agregarle alguna función de compatibilidad adicional o retirar servicios inutiles (El autor del desatendido debe de especificar que servicos agrego, cuales quito y tambien cuales desactivo, ya que esto suele hacerse a criterio propio del autor y con una finalidad a conveniencia, por eso el énfasis en esto ya que puede que la modificacion realizada no nos beneficie a nostros) ¿Quíen los hace? En la pregunta anterior ya mencione un poco acerca de los autores de los windows desatendidos, de sus fines y de la forma en que suelen trabajar para la creación de estos sistemas, pero ahora les explicare un poco más de esto. Los windows desatendidos se encuentran muy extendidos por toda la red con diferentes nombres y funciones, esto significa que hay bastantes creadores que modifican distintas versiones de windows empezando con Windows 95, pasando por Windows Xp, y llegando hasta el Windows 7. Esto quiza los lleve a preguntarse "¿Qué ganan los autores de esos windows desatendidos?" y esa pregunta tiene varias respuestas, entre ellas esta el reconocimiento de las personas, la gratitud de las mismas, fama (porque no?), cumplir con intereses propios y ademas de la satisfacción personal que deben sentir de que las personas usen un windows manipulado por ellos. Con esto muchos autores se sienten estimulados a mejorar sus propias versiones de windows desatendidas, a actualizarlas y a hacerlas más útiles para las personas. En esta parte entrare en algo polémico ya que como hay gente buena, hay gente mala y existen autores quagregan programas de hack dentro de el sistema operativo para poder espiar, robar y demas cosas que tienen que ver con la invación de la privacidad de los usuarios (Aclarando que un sistema operativo con esa fama no es recomendado por nadie y tengan por seguro que no veran alguno de esos por el Blog). La idea de compartirles esto no es asustarlos ni nada por el estilo, sino que sepan como son las cosas ya que en esto como en todo "nada es todo color de rosa" y es bueno que sepan esto para cuando vayan a instalar un windows desatendido se informen bien acerca de esté, busquen por la red opiniones, leean comentarios y en general informense bien para que sepan lo que estan instalando. Bueno con esto ultimo cierro la pregunta de los autores. Ahora paso a la ultima pregunta... ¿Cuál es el Mejor? Esta pregunta es facil de responder en comparación a las dos preguntas anteriores y lo digo por lo siguiente. Analizemos la pregunta" ¿Cuál es el mejor?" Esto nos deja otra pregunta... ¿El mejor que? El mejor windows desatendido!!! Ok ahora si esta claro jeje La respuesta a esa pregunta es tan variable, ya que mucha gente cree, imagina o piensa que hay un windows desatendido "Universal" recomendado como el mejor para todas las computadoras sin excepción. No se quien fue el que inculcó esta ideologia tan (con todo respeto) TONTA ya que no puede decirse que un windows desatendido es el mejor en todo hardware y para todas las necesidades de las personas (El concepto de "mejor" es relativo, lo que para mi puede ser lo mejor para ustedes no). En esta parte es donde les voy a decir que no existe el mejor windows desatendido, el mejor windows desatendido es aquel que ustedes escojen en base a sus propias necesidades, la potencia de su pc y algun otro detalle que ustedes mismos van a determinar antes de descargarlo de algun sitio de internet. Bien ahora que he contestado a esas preguntas espero que todo les quede más claro y puedan ver a los windows desatendidos de una forma mas critica y no se vayan por la apariencia llamativa que suelen tener, analizenlos a fondo, sean criticos y veran que ustedes mismos escojeran el mejor windows desatendido. Sistema libre linux Sistema licenciado Windows xp no requiere la intervención del usuario durante la instalación, solamente en la eleccion y formateo de la partición. requiere de la participación del usuario en todo el proceso de instalacion. el windows desatendido no sirve porque si tenes un error en windwows no lo podes reparar Los Windows atendidos son mejores, ya que incluyen la "Consola de Recuperación Baja estabilidad y robustez. Puesto que el producto no está abierto al uso, no suele haber muchos usuarios interesados en probar el software (sólo los clientes que han pasado por caja), por lo que la estabilidad del software en su conjunto es mucho menor Diferencias Reinvención de la rueda: Como el software privativo no puede usar componentes libres de licencia GPL, la empresa de software privativo siempre intentará escribir estos componentes desde cero, a no ser que tengan suerte de encontrar el componente bajo licencias LGPL/BSD, o estén dispuestos a sacrificarse con el siguiente inconveniente. [Mayor tiempo de desarrollo] Uso de herramientas externas de pago. En caso de no encontrar tiempo para escribir los componentes/librerías software desde cero o no encontrarlos bajo licencias más que libres, otra opción es desembolsar dinero en comprar un componente a su vez privativo o de licencia dual. [Mayor coste de desarrollo] Documentación o comunidad insuficiente. Por supuesto, hay algunas notorias excepciones a esta regla pero en ocasiones cuando se utiliza una librería o componente privativo es difícil encontrarse una comunidad de usuarios grande y activa con la que poder comunicarse e intercambiar conocimiento como ocurre con el software libre. Las librerías y componentes que se publican bajo licencia libre sin embargo suelen tener muchos más usuarios debido a ello (y si además el software es de calidad, claro) y además en caso de que hubiera escasez de documentación se podría mirar directamente el código fuente para comprobar el funcionamiento del componente, cosa que no es posible con la mayoría del software privativo. [Mayor complejidad.] Baja estabilidad y robustez. Puesto que el producto no está abierto al uso, no suele haber muchos usuarios interesados en probar el software (sólo los clientes que han pasado por caja), por lo que la estabilidad del software en su conjunto es mucho menor. En el software libre sin embargo se obtiene un feedback apabullante (y gratuito) si el proyecto es de verdad de interés.[Peor calidad.] Mayor tamaño de los programas: Puesto que el software privativo depende de librerías y componentes no libres, normalmente éstos han de ser adjuntados al programa puesto que el sistema operativo carece de ellos. Ejemplo: interfaces gráficas, librerías de propósito general de un lenguaje, máquinas virtuales, middlewares, pilas de comunicaciones, librerías de acceso a bases de datos, etc. En el software libre sin embargo, suele ocurrir que los programas dependen de componentes software muy conocidos y disponibles de serie en la mayoría de los sistemas operativos; es más, si acaso el componente no se hubiera instalado "de serie", los sistemas de gestión de paquetes actuales del software libre (uno de los puntos fuertes del software libre con respecto al propietario en cuanto aldeployment) aplicarían automáticamente las dependencias que necesitara nuestro software, de manera recursiva. [Menor eficiencia de los recursos hardware, por tanto mayores requisitos para el usuario/cliente.] Utilización de mayor tamaño de memoria (volátil o disco): Debido al anterior inconveniente, el hipotético caso en el que usasemos un sistema operativo privativo lleno de aplicaciones propietarias, cada una de ellas requeriría sus propios componentes o librerías que se instalarían en disco y se cargarían en memoria cada vez que se requiera su uso. Además, incluso aunque las aplicaciones usaran componentes comunes, es muy probable que cada aplicación necesitase una versión específica de cada uno de ellos, por lo que nunca existiría uniformidad en el uso de API's, el sistema estaría mucho más congestionado y lleno de distintas versiones de lo mismo, instaladas o funcionando al mismo tiempo. En el software libre sin embargo la mayoría de las distribuciones, en sus versiones estables, incluyen una única versión de cada librería con la que funcionan muchas aplicaciones, por lo que el uso de las cachés, la capacidad requerida de disco y memoria volátil, son mucho más eficientes. [Peor rendimiento del software.] Menor seguridad: Por culpa los problemas de versionado comentados anteriormente, nos encontramos con que los programas privativos pueden estar usando (por necesidad) versiones distintas de las más actuales, por lo que hay un riesgo de seguridad al no estar usando las versiones más estables y más libres de problemas de seguridad de acceso o pérdida de información. [Menor fiabilidad en el software.] Mayor gasto de ancho de banda en las actualizaciones: Todo componente software ha de actualizarse y mantenerse, por lo que los programas de software privativo también. Como no existe un modo común para todos los programas de software privativo de actualizarse, se tiene que cada uno de ellos tiene su sistema, por lo que se está derrochando ancho de banda en comunicación por la red al actualizar cada programa sus versiones específicas de las librerías sobre las que dependen. En el software libre todo esto es mucho más centralizado ya que es el propio sistema operativo quien se encarga únicamente de gestionar todas las actualizaciones de todo el software instalado, tanto de las librerías como de los programas. [Mayor gasto de recursos.] Menor seguridad (frente a código/software malicioso): Esto es un tema que hace correr ríos de "bits" entre tantas opiniones que hay, y como no, yo aquí voy a dar la mía. Por supuesto que es factible la existencia de virus en Linux y otros sistemas operativos libres, y por supuesto que influye en su poca expansión hoy día dos factores importantes: a) Que estos sistemas operativos son minoritarios y por tanto, los programadores de virus prefieren no centrarse en ellos. b) Que estos sistemas operativos normalmente tienen muchos "sabores" (en el caso de Linux, distribuciones), lo que dificultaría a los programadores de virus desenvolverse bien para hacer que sus creaciones afectaran al máximo número de variantes posible (lo cual es una ventaja del software libre en cuanto a seguridad, pero la cual podría verse mermada en un hipotético mundo en el que el número de distribuciones destacadas se redujese drásticamente). Sin embargo, a pesar de todos estos manidos y no falsos argumentos, opino que el modelo de distribución del software libre dificulta también la propagación de virus. En un ejemplo ideal en el que tengamos una distribución que sólo tiene software GPL (que es a lo que tienden todas ellas), se dan las siguientes circunstancias: El conjunto de la distribución no sólo incluye el "sistema operativo" pelado (como ocurre en el mundo del software propietario, en el que posteriormente hay que ir instalando programas de forma no desatendida), sino que incluye montones de programas para el uso diario del usuario, por tanto esta situación tiende a que, cada vez menos, el usuario se encuentre con la necesidad de instalar software externo, de terceros, sea libre o no. El software incluido en la distribución normalmente se instala, en un primer momento, desde un conjunto cerrado e inmodificable de programas (un CD o DVD) en el que es impensable por tanto que ocurra un contagio (ojo que estoy hablando del S.O. + los programas; en el caso de Windows por ejemplo lo único disponible en medios de sólo lectura es el Windows, el Office, y el poco software original que dispongamos, para a partir de ahí empezar a instalar el resto de cosas que normalmente se descargan de internet). Una vez instalado por primera vez el software de una distribución, posteriores instalaciones de programas o actualizaciones (sean de seguridad o no) suelen ocurrir desde los propios sistemas de actualización de la distribución mediante sistemas de repositorios de software remotos. La única forma de contagio que podría existir aquí es la suplantación de los servidores de la distribución, lo que sería bastante improbable pues cada vez tenemos empresas más grandes y, por tanto, responsables ante estas cuestiones de seguridad (¿cuántas veces se ha conseguido hackear la página de Novell?). Luego, esto sumado a que, en la situación de ejemplo ideal en la que nos encontramos, todo software distribuido, aunque precompilado, proviene de unas fuentes libres y abiertas al público, una situación en la que es cuasi-imposible la inclusión de código malicioso (aquí los detractores del software libre soltarían su manido "¡pero si nadie se pone a ver el código luego!", a lo que yo respondería: "el usuario de a pie no, muchos programadores tampoco, pero otros programadores y, sobre todo, los responsables de cada proyecto libre, sí revisan cada modificación"). Por último, me gustaría mencionar otra ventaja que ocurre hoy día en la práctica (y que no tiene por qué ser una consecuencia del modelo de desarrollo del software libre, sino casi del modelo de desarrollo actual del software propietario, y que podría cambiar): la apuesta por la seguridad frente a la comodidad. Y para explicar esto sólo enunciaré las diferencias que existen entre el sistema de permisos de los sistemas de ficheros en sistemas tipo Unix frente a los de sistemas tipo Windows, para lo cual apuntaré a mis lectores hacía un enlace: Pregunta típica de nuevo usuario de Linux: ¿Qué antivirus?. Podría pensarse que a partir del título del enlace se va a hablar de un modo genérico de la seguridad frente a malware en Linux, pero al final sólo se centra más o menos en este aspecto práctico que yo también quería resaltar (y los comentarios que hay bajo esa entrada se desvían bastante también del tema, aunque sí son buenos puntos de vista, tanto a favor como en contra). Menor seguridad (frente a defectos software y el tiempo de su actualización): Tener el código fuente disponiblepermite que la gente lo modifique, y por tanto, permite que la gente lo arregle mucho antes. Con software privativo estás vendido a lo que quiera hacer la empresa con él y cuándo hacerlo. Mayor complejidad (de mantenimiento): Muchas veces ocurre que si un software puede enlazarse con bibliotecas privativas (a las que no se tiene acceso público para poder cambiarlas) hay que estabilizar API's para que los desarrolladores no tengan que cambiar constantemente su código. Pero esto en ocasiones (por ejemplo a la hora de comparar el kernel Linux con otros) provoca que se tenga que hacer trabajo extra manteniendo API's antiguas, y que el software evolucione más lentamente. [Mayor coste de mantenimiento (recursos humanos).]