BSD frente a Linux 6

Esto es sólo una traducción, yo no soy el autor.

Artículo original en:
http://www.over-yonder.net/~fullermd/rants/bsd4linux/06

Construyendo el mundo en menos de 7 días

Como resultado del hecho de que el sistema base de BSD se desarrolle como una sola unidad, fácilmente se puede conseguir el árbol completo de código fuente para el entero sistema de base. Y debido a la forma en que está diseñado, puedes ejecutar un solo comando en el nivel superior para compilarlo todo. Para la mayoría de nosotros, esa es la forma normal de actualizar. Actualizas el árbol de fuentes al más nuevo (en pocas horas) con los cambios realizados por cualquiera, compilas, instalas los nuevos binarios y ya está.

Puede que no necesariamente quieras el último. Puedes coger las fuentes de la semana pasada, por ejemplo. Y normalmente, realizas todo el proceso de reconstrucción en cuatro pasos. Se comienza con un «buildworld» que compila «userland», entonces un «buildkernel» que compila el kernel. Y a continuación, tomar una respiro profundo y hacer «installkernel» para instalar el nuevo kernel, y por último, un «installworld» para instalar el nuevo entorno de usuario. Cada paso está automatizado en el Makefile. Sigue leyendo

BSD frente a Linux 5

Esto es sólo una traducción, yo no soy el autor.

Artículo original en:
http://www.over-yonder.net/~fullermd/rants/bsd4linux/05

La ingenieria de las versiones

Todos los BSD’s mantienen el sistema bajo un control de revisiones, los tres BSD’s libres usan CVS. Un control de revisiones básicamente es un proceso mediante el cual la edición de un programa significa desproteger un archivo o grupo de archivos, realizar los cambios, a continuación, subir y proteger esos archivos en las nuevas versiones, junto con un mensaje que describa el cambio. Una historia completa de todos los cambios realizados se mantiene en el sistema de control de revisiones, por lo que se puede ver un historial de los cambios, echa un vistazo a una versión antigua, ver las diferencias entre algunas versiones arbitrarias, etc.

Todos los BSD’s facilitan el acceso público a sus repositorios CVS de un modo u otro, generalmente a través de CVS anónimo, o un mirror CVSup, o a menudo ambas cosas. Esto significa que, como usuario, puedes ver exactamente qué cambios ocurrieron cuando, quién los hizo y por qué los hicieron. También siempre puedes tener los últimos cambios (en unas horas, dependiendo de las estrategias del mirror). Todos los BSD’s libres tienen listas de correo a las que puedes suscribirte y ver los cambios que se hacen. De hecho, todos ellos tienen archivos de las listas de correo. Se puede hurgar en todo el árbol de fuentes de FreeBSD online en http://cvsweb.freebsd.org/src/, y ver toda la historia de cada archivo. Sigue leyendo

BSD frente a Linux 4

Esto es sólo una traducción, yo no soy el autor.

Artículo original en:
http://www.over-yonder.net/~fullermd/rants/bsd4linux/04

Los Ports

Luego está la segunda categoría, los addons. En el mundo BSD, esto se suele llamar el sistema de ports. El nombre tiene su razón de ser.

Antes, cuando se quería ejecutar un programa lo primero que había que hacer era compilarlo. Y muchas veces antes de poder compilarlo, tendrías que trastear un poco. El sistema requeriría diferentes archivos header. A veces, incluso habría que reescribir partes desde cero, por alho que no ha funcionado en tu sistema.

En otras palabras, habría que hacer un «port» a tu SO y/o tu sistema específico. Lo que se intenta con el sistema de ports es hacer todo eso por tí. También automatiza la compilación e instalación, y proporciona servicios de enpaquetamiento (para cosas como ‘desinstalación’) que no se ven en el nombre.

Pero como pasa con muchas cosas, ha sobrepasado su nombre y se ha convertido en la bestia que es hoy. Sigue leyendo

BSD frente a Linux 3

Esto es sólo una traducción, yo no soy el autor.

Artículo original en:
http://www.over-yonder.net/~fullermd/rants/bsd4linux/03

El sistema base

El concepto de «sistema base» es algo que creo que causa la mayoría de los problemas a la gente acostumbrada a la metodología Linux. Lo cual es muy comprensible, porque el concepto no existe en el mundo Linux.

Linux, desde el comienzo era sólo un kernel. Sin entrar en el eterno debate de qué es un «sistema operativo», se puede afirmar que el núcleo (kernel) por sí mismo no es muy útil. Se necesitan todas las utilidades del espacio de usuario para que funcione. Linux siempre ha sido un conglomerado, un núcleo por aquí, un ls por allí y ps, vim, perl, gzip, tar, y un montón de otros.

Linux nunca ha tenido ningún tipo de separación entre lo que es el «sistema base» y las «utilidades». Todo el sistema se considera «utilidades». MySQL no es diferente de ls o de KDE, de whois, de GnuCash o de … Cada bit del sistema es sólo uno u otro paquete de complemento.

En contraste, Sigue leyendo

BSD frente a Linux 2

Esto es sólo una traducción, yo no soy el autor.

Artículo original en:
http://www.over-yonder.net/~fullermd/rants/bsd4linux/02

Los contrincantes

Haré un pequeña introducción de los sistemas de los que voy a hablar. Notese que la información no es exhaustiva.

Unix

Unix no es exactamente un sistema operativo. Bueno, lo es y no lo es.

En el uso específico, Unix es un sistema operativo desarrollado originalmente a finales de los 60, en los Laboratorios Bell, por Ken Thompson y Dennis Ritchie. Desde entonces se ha mejorado y distribuido como un sistema operativo comercial y un sistema operativo experimental para la investigación, por los Laboratorios Bell, USG, USDL, Atis, USL, Novell y SCO, y todo el que haya podido inventarse un acrónimo.

Probablemente no es exagerar demasiado decir que Unix es el sistema operativo más influyente en la computación moderna. Sigue leyendo

Steam para BSD, ¿una posibilidad?

Como los de Phoronix no quieren que traduzca sus artículos, he decidido hacer un pequeño resumen con opiniones y alguna información adicional de uno, en plan rebelde. Ahí va.

FreeBSD proporciona una capa de compatibilidad binaria de Linux que permite a los binarios de 32 bits de Linux ejecutarse de forma nativa en BSD. La compatibilidad binaria de Linux en FreeBSD permite que las aplicaciones Linux se ejecuten casi perfectamente, incluso los videojuegos.

Esta compatibilidad con Linux no es una emulación de Linux ni tampoco se parece a Wine. Se trata de una implementación del kernel de Linux en el kernel de FreeBSD con un módulo (Linux KDO). Y lo que obtenemos es que los programas Linux se ejecuten como si fuera Linux, literalmente.

Sigue leyendo