-[ 0x05 ]-------------------------------------------------------------------- -[ El SO de mi vida... (PARTE II) ]------------------------------------------ -[ by Kstor ]--------------------------------------------------------SET-29-- LLegamos a la segunda parte del El SO de mi vida..., esta serie de art. tiene como objetivo (para mi) el conocimiento de los distinto SO que hay. Ya se que existen otros (muchos otros!), pero estos me gustan y quiero compartirlo con ustedes. Las personas que esperen datos tecnicos no se enojen :), y leanlo igual. Con esto termina el tema y para la SET proxima tendre algo nuevo para ustedes, ... espero.... :p ********** //Indice\\ ****** 1 Introduccion: Unix (el "DIOS") 1.2 Caracteristicas 2 Derivados de Unix 2.1 Linux 2.2 OpenBSD 2.3 FreeBSD 2.4 Solaris 3 Conclusion 4 Bibliografia 5 Despedida ############################################################################## Unix el sistema que a todos nos gusta, menos a mi viejo jeje, pero bueno... #1 El origen de este SO data del a~o 1962 cuando el MIT y CTSS investigan en areas de tiempo compartido y proteccion. En 1995 la division de investigacion de AT&T (Bell Labs), General Electric y el MIT trabajan en un proyecto de Multic, se trataba de un procesador con gran potencia de calculo y almacenamiento de muchos usuarios. De donde se obtuvieron muchos resultados, tanto como las shells, capacidad de multiprocesos y el arbol de archivos. En 1969 fue abandonado y asi surgio de hay Ken Thompson que desarrollo un sistema de archivos propio, lo que queria el era derrotar al imperio Klimgon de Star Trek y monto una simulacion de la galaxia. Entonces aparecio Dennis Ritchie y con una computadora PDP-7 monto el sistema para poder jugar. Asi se dice que empezo la historia de Unix. En el a~o en 1971 Richie y Kernigham crean el lenguaje C y lo utilizan en una PDP-11. Dos años despues se juntan otra ves Thompson y Richie reescriben su sistema en C y forman el monstruo UNIX. Demostro que era un sistema muy bueno y fue adoptado por 25 instalaciones en Bell Labs. Crecio y crecio, en 1978 ya habia 100000 sistema UNIX en todo el mundo... Unix llego a universidades y asi fue el caso de Berkeley en California que modifico el sistema e incorporo el sistema de memoria virtual paginada. En 1978 lanzaron el Unix 3BSD. luego con la subvencion de ARPAnet surge 4BSD. Un año despues la version 4.2BSD donde adopta SUN Microsystems. Y 1984 se marca un punto muy inportante ya que SUN desarrolla los conceptos de RPC (remote proceduce call) y NFS (network file system) y los incorpora a SunOS. En general paso esto: 1969 - Se desarrolla UNIX por Thompson y Richie 1970 - Version dos usuarios sobre plataforma PDP-11 1971 - Version multiusuario en plataformas PDP-11/40/45/70 1973 - Se reencribe en lenguaje C por parte de Richie y Kernigham. Originalmente estaba programado en ensamblador. Ahora se podia transportar a otras maquinas. 1974 - Empieza a venderse la fuente (USD 25000) 1975 - Version 6 de Unix y se emplemento en Universidades para su estudio. 1983 - Aparece Unix System V con soporte para mensajes y memoria compartida 1989 - Unix System V, R4 que contenia soporte para RFS, Redes y tiempo real 1993 - Novell compra Unix a AT&T 1994 - Novell le da el nombre de Unix a X/open 1995 - Santa Cruz Operations compra UnixWare a Novell y se asocia con HP anunciando que lanzaran una version de Unix de 64-bit. 1996 - Hay mas de 3 millones de computadores con Unix a nivel mundial. 2003 - Muchas mas... :-) #1.2 ** Caracteristicas de Unix en general: ************************************** * Bastantes herramientas de Software (compiladores, editores, uilitarios, etc) * Reutilizacion de sofware a traves de comandos simples en aplicaciones complejas. * Portable: puede correr en cualqier tipo de maquina, desde una NoteBooks a una super computadora. Es el unico SO que permite hacerlo * Flexible: se adapta a muchas aplicaciones diferentes * Potente: dispone de muchos comandos y servicios ya incorporados * Multiusuario: permite ser usado por muchos usuarios al mismo tiempo * Multitarea: permite la ejecucion de diferentes tareas al mismo tiempo * Elegante: sus comandos son breves, coherentes, especificos para cada tarea y muy eficientes. * Orientado a redes desde el comeinzo * Dispone de un standar (POSIX) que debe cumplir todos los sitemas que pretenden ser Unix, lo que asegura un evolucion predecible. Tiene incluido en su arquitectura el protocolo TCP/IP * El nucleo es muy compacto en relacion con otros sistemas operativos de tiempocompartido. Introduce la idea de reducir el Kernel (nucleo del sistema) y ceder ciertas funciones a funciones externas al nucleo llamados Demonios * Los usuarios se encuentran divididos en dos grupos principales, el root (el DIOS de Unix) y los usuarios normales controlados por el SO segun las directivas del root. * El sistema de archivos esta basado en volumenes que se pueden desmontar y montar un sistema fisico puede dividirse en en uno o mas modulos #2 * Clases de Unix: ***************** ---------------------------------------------- #2.1 Linux: Creado por Linus Torvalds, un programador Finlandes de 21 a~os que queria crear un sistema operativo para su uso personal. Linus usaba una peque~a version de Unix llamada Minix. A mediados de 1991 el queria hacer un kernel para un nuevo sistema operativo, parecido a Minix, pero mejor. Con el tiempo fue desarrollando su SO y se convirtio en un proyecto mas serio. El 5 de Octubre publico en en un grupo de noticias en Internet un articulo que hablaba sobre un nuevo SO llamado Linux (v. 0.02) que pronto lanzaria para que cualquier persona lo descargara gratis e invito a programadores para que lo corrigieran y le reportaran errores. En 1992 ya Linux contaba con 100 usuarios que corregian errores que mandaban a Torvalds por Internet. Ese mes salio la version 0.12 de Linux que incluia partes de codigo de otros programadores y la primera que se desempeñaba mejor que Minix. El numero de usuarios fue aumentando y no era estraño ya que en esa epoca los estudiantes utilizaban Unix ya que les parecia estable y potente, pero costaba 4000 dolares la version. En cambio Linux era un sistema Unix gratuito y funcionaba en procesadores Intel. Cada ves aumentaron mas los programadores que ayudaban al desarrollo del sistema. Linus entonces empezo a distribuir Linux bajo una licencia GPL, que permitia a cualquier persona bajar el SO, modificar e inluso venderlo sin pagar un peso. La unica condicion era que cualquier modificacion o campa~ia que se realizara con Linux deberia ser publica. Se calcula que gracias a esto Linux tenia 2000 usuarios a fines del año. 1993 habia 20000 usuarios y mas de 100 programadores ayudando al desarrollo. En el mundo Linux aparecen actualizacion cada dos o tres dias. No cada 2 o 3 a~os como los programas comerciales. En Marzo del 94 se lanzo la version completa de Linux 1.0, ofrecio soporte para redes y muchisimas utlidades. Se fundo Red Hat Software uno de los principales distribuidores de Linux. Todos sabemos que Linux se puede bajar gratis de internet pero estas empresas elaboran sus propias versiones y las venden en CD, junto a aplicaciones, manuales y soporte tecnico. Su valor van desde 10 a 70 dolares segun la empresa. En estos tiempos existian 100000 usuarios de LInux. En el 95 ya habia 500000 (crecia rapido el nene...) En el 96 se lanza Linux 2.0 que incluia soporte para dos procesadores. Y ademas de soportar los procesadores x86 de Intel tambien soportaba los Alpha. Los usuarios eran 1.5 millones (crecia mas rapido que mi Tamagochi) En 1997 Linus fue a vivir a Santa Clara (California, USA) ya que fue contratado por una compania que producia chips que no tenia nada que ver con Linux. Pero igual siguio con el proyecto. Ese año lanzo la version 2.1 Usuarios: 3.5 millones... En 1998 las empresas anunciaron que sacarian porgramas para Linux esto ayudo mucho a su desarrollo. Ej. NetsCape, Computer Asscociates (CA), Oracle, etc. En Diciembre Corel saco una version de su procesador de textos WordPerfect 8 para Linux. Usuarios: 7.5 millones y mas de 100000 programadores en el mundo En 1999 se lanzo la version 2.2 que ofrecia soporte para procesadores Sparc, Motorola 68000, PowerPC y Mips. Soportaba hasta 8 procesadores. Corel anuncio que sacaria una version de Corel Linux Linus dijo que a finales de ese año lanzaria la version 2.4 del Kernel de Linux que mejoraba la funcionalidad a multiprocesamiento simetrico. Hasta estos dias Linux es uno de los sistemas mas usados y se calcula que cuenta con mas de 10 millones de usuarios. Caracteristicas: **************** - Multitarea - Multiplataforma - Codigo fuente disponible - Librerias compartidas de carga dinamica - Control de tareas POXIS - Consolas virtuales multiples - Multiusuario - Soporte para varios sistemas de archivos - Soporte protoclo TCP/IP - Carga de ejecutables por demanda - entre otros... ** Algunas distribuciones Linux: (No todas) ******************************** * RedHat: - Buena calidad - Facil de instalar, incluye programas de configuracion que simplifican la tarea - Buena documentacion, pero esta en Ingles :( - Buen seguimiento de fallos y las correcciones se pueden bajar de Internet + www.redhat.com * Debian: - Muy buena calidad - No esta sometida a preciones comerciales. Antes de su lanzamiento cuidan mucho su calidad - Definida como la distribucion para los mas avnzados. Es un poco dificil de instalar para el usuario novato o sin conocimiento de informatica. - Buena documentacion, en Ingles - Ls arreglos de errores pueden bajarse de Internet + www.debian.org * Caldera: - Buena calidad - Facil de instalar - Buena documentacion, en ingles. - Las correcciones de fallos pueden bajarse de la web. + www.caldera.com * SlackWare: - Fue una de las primeras y por lo tanto la que mas se utlizo. Durante un tiempo no se ha actualizado y perdio algunos seguidores - Un poco dificil de configurar - Documentacion en Ingles + www.slackware.com * Mandrake: - Buena calidad - Facil de instalar - Optimizada para procesadores Pentium y superiores + www.linux-mandrake.com/es/ * Conectiva: - Buena calidad - Facil de instalar - Gano mucho respeto en el mercado Sudamericano y Espa~ol (esta en espa~ol):) + www.conectiva.com * Hispafuente: (otra en espa~ol) - Buena calidad. Esta basada en RedHat Deluxe y es 100 % compatible con ella. - Facil de instalar - Ha entrado con mucha fuerza en el mercado Espa~ol - Toda la documentacion de Linux se encuentra en castellano + www.esware.com /* Comentario de KSTOR */ Existen minidistribuciones de Linux que entran en un Diskette, pueden servir para disco de rescate o para probar. Algunas son: Trinux - http://www.trinux.org AlfaLinux - http://alfalinux.sourceforge.net/alfaeng.php3 Basic Linux - http://homepages.ihug.co.nz/~ichi/baslinux.html Hal91 - http://home.tu-clausthal.de/~incp/hal91/ **RECOMENDADA** MuLInux - http://mulinux.nevalabs.org/ /* Fin comentario */ ---------------------------------------------- #2.2 OpenBSD: Es un sistema operativo libre, basado en BSD4.4. Los origenes de este SO se remontan del año 1980, el proyecto fue apoyado por la Universidad de Berkeley en California en donde el codigo fuente a sido expuesto y cientos de programadores de todo el mundo lo analizan. Es un SO muy nuevo. OpenBSD tiene un enfoque diferente que el resto de los sistemas ya que esta orientado hacia la correcta escritura de software, la auditoria continua, y la criptografia integrada. Es entonces, un sistema muy estable (como todos los UNIX), pero es mas eficiente en cuanto a su desempe~o. Su instalacion es rapida y facil, ademas cuenta con manuales muy bien elaborados. Es de libre distribucion, modificacion y copia. Caracteristicas en general: *************************** - Funciona en muchas plataformas (Sparc, Intel, Alpha, etc) - Esta reconocido por muchos programadores de todo el mundo como el SO mas seguro. - Tiene todas la funcionalidades de un Unix - Ofrece al usuario la posibilidad de participar en su desarrollo y prueba - Util para la privacidad, integridad de la informacion y transmicion de datos - Incluye muy buena documentacion con ejemplos y recomendaciones - Muy bajo costo (gratis por internet o por medio de un CD en Internet a un precio bajo) ---------------------------------------------- #2.3 FreeBSD (www.freebsd.org): Este sistema operativo derivado de BSD-Unix, soporta arquitecturas x86, DEC Alpha, y PC-98. El soporte para otras arquitecturas esta en desarrollo. Sus raices derivan del SO escrito por el Computer Systems Research Group de la Universidad de California, Berkeley, 4.4BSD. Este sistema tiene buenas prestaciones en cuanto a comunicaciones de red, seguridad y compatibilidad, que segun FreeBSD inexistente en otros sistemas operativos. Ofrece servicios de servidor para la Internet o Intranet, robustos, incluso en situaciones de carga alta, administrando de manera eficaz la memoria. Es ideal para aplicaciones de red. Las caracteristicas para esto son: - Compartir ficheros mediante NFS - Distribucion de Informacion de Red con NIS - Soporte para Logins remoros - Soporte y configuracion remota via SNMP - Servidor de ficheros FTP - Resolucion de nombres de maquina con DNS/BIND - Rutear paquetes entre multiples interfaces, incluyendo lineas PPP y SLIP - Servicios IP Multicast (MBONE) Podes hacer que tu PC sea un servidor web y de new, ya que trae el software adecuado para esto. Tambien podes utlizar SAMBA para compartir archivos con el amigo Win98/NT, y demas familiares de Microsoft. Los protocolos de red Aplletalk y Novell en modo cliente/servidor son soportados. Puede servir para estos servicios: - WWW - Proxy WWW - FTP - Ficheros e impresion En cuanto a la seguridad FreeBSD esta muy comprometido. Incluye en el kernel soporte para firewall IP, asi tambien como Gateways e IP Proxys. Software de encriptacion, shells seguras, kerberos, etc. Caracteristicas avanzadas: - Sistemas con mas de 16 megabytes operan mas eficientemente con perifericos DMA en el bus ISA. - Los programas reciben un mejor manejo de la memoria, liberando al admin. el trabajo de ajustar los tamaños de los caches. - Modulos de compatibilidad, que permiten ejecutar programas de otrso SO en FreeBSD, incluyendo Linux, SCO, NetBSD y BSDI - Modulos de kernel de carga dinamica, que permite tener acceso a nuevos sistemas de ficheros, protocolos de RED, o emuladores de binarios en tiempo de ejecuion sin necesidad de generar un nuevo kernel. - Librerias compartidas, que reducen el tema~o de los programas, ahorrando espacio en disco y en memoria. --------------------------------------------- #2.4 Solaris Este Sistema operativo nos brinda caracteristicas de portabilidad, escalabilidad, interoperabilidad y compatibilidad en general: * Portabilidad: El software que esta conformado por una ABI (apalicacion de interface binaria) ejecuta un Shrink-Wrapped (contraccion envuelta) el software en todos los sistemas vendidos con la misma aruqtecturas del microprocesador. * Escalabilidad: Las aplicaciones se usan con mas frecuencia en el sobre tiempo, pero requiere equipos mas potentes para soportarlo.El software debe ser capaz de ejecutar en un rango de ancho poderoso y debe ser capaz de tomr ventajas del poder adicional que se esta ejecutando. * interoperabilidad: Solaris puede iteroperar con unos sistemas muy populares hoy en el mercado, y aplicaciones que se ejecutan en Unix se pueden comunicar muy facilmente. * Compatibilidad: Permanece en el ambito competitivo para minimizar sus costos y maximizar sus ingresos. Estas serian caract. generales de Solaris, pero cada integrante de la PC tiene la suya (usuarios y administrador). Caracteristicas para usuario: * Espacio de trabajo: permite que los usuarios, desde una ventana hagan el manejo de los servicios en forma rapida y les permite entallar su espacio de trabajo a sus necesidades personales. * Integracion de servicios Desktop: Incluye Drag and Drop (arrastrar y solar), Cute y Paste (copiar y pegar), proporcionando la base para que las aplicaciones puedan integrarse. * Bibliotecas graficas: incluye XGL, Xlib, PEX, y XIL, dando soporte para aplicaciones 2D y 3D. * Herramientas de Imagen: permite cargar, ver y guardar imagenes de 40 formatos diferentes (GIF, TIFF, JFIF, etc) Caracteristicas para administrador: * Sistemas de administracion de archivos: permite a los admin. mover montar, desmontar, etc, sistemas de archivos * Manejo de procesos: permite tenes un control de los recursos del sistema, ubicacion de acceso a discos, entradas al sistema, etc. * Usuarios y manejo de grupos: permite todo tipo de configuracion referida a los usuarios (asignar ID´s, grupos, etc) * Seguridad: el ASET (Automated Security Enhancement Tool) que permite a los admin. configurar los permisos de archivos, y demas temas en cuanto a la seguridad de los datos del disco. El software en Solaris es entrgado en forma de paquetes (coleccion de archivos y directorios reuqridos para el funcionamiento del producto). Un cluster es una colecion de paquetes, y hay cuatro tipos: * Nucleo de soporte del sistema (Core System Support): es el software de configuracion minima, y permite arrancar el sistema y ejecutar el ambiente oprativo de Solaris. * Sistema de Soporte para Usuarios Finales (End User System Support): contiene el nucleo de soporte del sistema mas el soprte del sistema para usuarios finales, como es el Open Windows (sistema de ventanas), etc. * Soporte de Sistemas Desarrollados (Developer System Support): Contiene soporte de usuario final del sistema más librerías, incluye archivos y herramientas que se necesitan para desarrollar el software en el sistema de Solaris. Compiladores y depuradores no están incluidos en el sistema de Solaris 2.5. * Distribucion entera: contiene todo el ambiente Solaris. En cuanto a redes, el sistema contiene el SAF, que es una utilidad para administrar terminales, modems y demas dispositivos de red. Caracteristicas de SAF: * A~adir y administrar ttymon and listen monitores en puertos (usando el comando sacadm) * A~adir y administrar ttymon servicios de monitores en puertos (usando los comandos pmadm y ttyadm) *A~adir y administrar listen servicios de monitores en puerto (usando los comandos pmadm y nlsadmin) * Administrar y troubleshoot de dispositivos TTY.Administrar y troubleshoot entradas de requisitos de red para servicios de impresión. * Administrar y troubleshoot el controlador de acceso al servicio (Service Access Controller) usando el comando sacadm. ---------------------------------------------- #3 Conlusion: Los sistemas operativos derivados de Unix cumplen un papel muy importante en la computacion, mas precisamente en servidores de Internet y, en el caso de Linux en el escritorio, ofreciendo mucha seguridad, establidad y el respaldo de miles de programadores en el mundo. Muchas empresas dirigidas al hosting de sitios web, servicios de e-mail, de noticias y de base de datos lo elijen, puede ser por su costo (gratis, aunque esta no sea su cualidad principal) o por su libertad... En el futuro todo tiene que ser libre, para que el usario final puede sentir que hace lo que quiera con sus cosas y no tener que "depender" de alguien en especial, asi creando un monopolio :). ---------------------------------------------- #4 Bibliografia: Toda la informacion escrita en este articulo fue obtenida de sitios de Internet y de manuales de sistemas operativos. ---------------------------------------------- #5 Despedida: Bueno... espero que este articulo les sirva para comprender mas las caracteristicas de los SO´s y su crecimiento a traves de los a~os. Me hubiese gustado hablar sobre otros Unix´s pero el tiempo es muy escaso por estos lados :) y no queria demorar mas esta parte. Espero para la proxima hacer un articulo referido a las distintas licencias que existen en los computacion (referidas al software), y tambien sobre el movimiento GNU y la Fundacion del Software Libre. Cualquier comentario me escriben a ekstor@yahoo.com.ar. SALUDOS KSTOR *EOF*