Top 10 software

Conociendo al BeOS

 El BeOS es un sistema operativo que viene siendo desarrollado por Be Inc. desde principio de los '90 con vistas hacia el futuro. Siendo un sistema operativo que ha sido escrito desde cero, no está atado a ningún esquema o diseño viejo u obsoleto, lo que hizo posible que se lo implementara desde un comienzo haciendo uso de las últimas tecnologías e ideas en lo que a sistemas operativos se refiere.
Está en principio pensado para satisfacer las cada vez más exigentes capacidades multimedia que se requieren de una PC, pero sin embargo por su amigable interface gráfica y gran potencia se presenta como un excelente sistema operativo de propósito general.

Aspectos Generales


Aquí se exploran detalles sobre la interface gráfica del BeOS, la posibilidad de utilizar el shell incorporado y algunos hechos interesantes de su uso cotidiano.
Interface gráfica
Hechos y datos interesantes

Aspectos característicos del BeOS
Extensiones al sistema (add-ons)
Mediante los add-ons es posible extender las capacidades del sistema. A partir de ahí tanto el usuario como las aplicaciones pueden hacer uso de la nueva funcionalidad adquirida.
Extensiones al manejo de formatos multimedia (Media-translators/add-ons)
Con los media-translators cualquier aplicación multimedia puede ver aumentada la cantidad de formatos que soporta de manera automática y transparente.
Extensiones a las operaciones sobre archivos (Tracker add-ons)
Con los Tracker-add-ons el usuario es capaz de efectuar operaciones sobre archivos y/o directorios más allá de las básicas que ofrece el sistema.
Aplicaciones incrustables (replicants)
Estas aplicaciones pueden "incrustarse" en otras, formando parte de estas últimas o del escritorio. 

Aspectos técnicos
Meta-atributos de archivo
Junto a los archivos puede ir acompañándolo información "extra" sobre él, que las aplicaciones usan para identificarlo o adosar cualquier tipo de información a él.
Núcleo (kernel) basado en servidores
El kernel se compone de pequeñas pero potentes aplicaciones llamadas servidores. Siendo esto así, es posible cerrar y volver a abrir parte del kernel ante modificaciones, sin tener que reiniciar.
Procesamiento en hebras intensivo (pervasive multithreading)
No sólo le es posible al BeOS mantener múltiples aplicaciones corriendo: toda aplicación o componente se divide en pequeños fragmentos separados por hebras (threads), lo que optimiza al máximo la performance del sistema.
Memoria protegida REAL
La protección de memoria es limpia, segura y efectiva.
Sistema de seguimiento de archivos por "diarios" o "reportes" (journaling file system)
Este esquema de seguridad permite al sistema reparar automáticamente el sistema de archivos ante eventuales fallos.
Soporte automático de múltiples procesadores (hasta 8)
Los usuarios con múltiples procesadores no necesitan configurar el kernel o ninguna parte del sistema, ya que la detección es automática, y el aprovechamiento total. 

Programación

Interface de programación de aplicaciones (API) nativamente orientada a objetos
Toda la funcionalidad del sistema a través de la versátil y poderosa programación orientada a objetos.
Procesamiento por hebras (multithreading) transparente al programador
El programador no necesita preocuparse por las threads creadas por el sistema, como tampoco de programar en entornos multiprocesadores. Ambos hechos le son transparentes.
Pase de mensajes (scripting) entre aplicaciones
El paso de mensajes de una aplicación a otra es posible, abriendo infinitas posibilidades.
POSIX medianamente implementado
Importante a la hora de portar aplicaciones.
Aplicaciones de consola
La programación de aplicaciones de consola es posible y no entabla misterio alguno en este sistema.
Intérprete de comandos (shell) Bash
Mediante éste se pueden crear poderosos scripts.

Trayectoria del BeOS

¿Por qué otro sistema operativo más?
¿Cuál es la posición de Be hoy y qué se espera para el futuro?
Aplicaciones, juegos y drivers para BeOS ...
El BeOS en minicomponentes con conexión a Internet, el hermano menor: Stinger

Interface gráfica

El BeOS opera totalmente a través de su amigable, sencilla e intuitiva interface gráfica con el usuario. Esta, como era de esperar, se basa en ventanas, íconos, menues, botones, etc.
No existe en BeOS el así llamado modo texto: la interface gráfica forma parte del BeOS de principio a fin. Incluso la aplicación Terminal, que es el shell del BeOS opera desde una ventana de aplicación.
Asimismo tareas en apariencia complejas como la configuración del sistema, montar o desmontar volúmenes de datos, crear o formatear particiones se realizan de manera intuitiva a través de aplicaciones basadas en la interface gráfica desarrolladas para tales fines.
El usuario de BeOS se maneja a través componentes característicos, que se detallan a continuación.

Deskbar

Mediante la Deskbar se puede acceder no sólo a las aplicaciones abiertas sino a las ventanas de cada aplicación. Esto es asi porque para cada aplicación se ofrece una lista de las ventanas abiertas, pudiendo acceder a cualquiera de estas rápidamente. Es también posible ocultar o mostrar las ventanas de una aplicación mediante una sola operación. Al principio puede parecer un poco chocante el tener que realizar dos pasos para acceder a una ventana "oculta": 1) seleccionar en la Deskbar la aplicación a la que pertenece y 2) la ventana. Pero en realidad es un enfoque bastante acertado, ya que a medida que la cantidad de ventanas abiertas aumenta es mucho mas claro para el usuario si las ventanas estan organizadas por aplicación.
La Deskbar es muy flexible en cuanto a su posición o aspecto en el area de trabajo, puede colocarse en cualquiera de las cuatro esquinas de la pantalla de forma normal o "compacta" o de manera estirada a lo largo del borde superior o inferior de la pantalla.
Las ventanas de directorios se almacenan en la aplicación especial Tracker, que forma parte del sistema y está siempre presente en la Deskbar. Las ventanas del Tracker, su modo de acceder y de manejarse con ellas no es diferente al de las ventanas de cualquier otra aplición.
Los otros componentes de la Deskbar son el Be-Menu y el Status-View.

Be-Menu

Mediante el Be-Menu se puede acceder a funciones standard del sistema como apagar (shutdown), reiniciar (restart), buscar archivos por criterio (find), una ventana informativa del sistema (about BeOS), mostrar u ocultar "replicants" (explicado más adelante) pero mas que nada lanzar de una manera conveniente y rápida aplicaciones o paneles de configuración del sistema (que no son más que aplicaciones, en definitiva). Cuando se instala por primera vez el BeOS, los menues con los que cuenta el Be-Menu son Applications y Preferences, pero esto se puede modificar más adelante a gusto del usuario.

Status-view

En el Satus-View se muestran la fecha u hora, y residen íconos de aplicaciones especiales que esten diseñadas para este propósito. De esta manera el usuario puede acceder rápidamente a sus funciones. Asimismo el BeOS tiene un par de estas aplicaciones, el control de volúmen, o el acceso telefónico a redes son ejemplos típicos.

Menues contextuales

Tanto archivos, directorios, íconos de unidades o simplemente el escritorio ofrecen menues contextuales, que para el caso de mouses con dos botones se acceden con el botón derecho.
Una de las cosas buenas de los menues contextuales es que uno puede efectuar operaciones de disco como acceder, copiar o mover archivos a directorios subyacentes sin tener que abrir nuevas ventanas. También es posible selecionar rápidamente con que aplicación han de abrirse los archivos seleccionados o combinar los archivos o directorios seleccionados con un "add-on", que son componentes del sistema que efectuan las más diversas tareas extendiendo las capacidades innatas del BeOS.

Workspaces

El BeOS soporta varias áreas de trabajo virtuales, llamadas Workspaces. Cada Workspace conserva el fondo de escritorio y su resolución propia. A traves de la aplicación Workspaces es posible acceder a cada escritorio virtual y arrastrar ventanas de un Workspace a otro.
Inicialmente el BeOS esta seteado para 9 Workspaces, aunque es posible utilizar un máximo de 32 escritorios o pantallas virtuales.

Facilidad de instalación

En un promedio de 20 minutos el BeOs se instala solo, con muy pocas intervenciones por parte del usuario. Lo más importante es que es muy flexible en cuanto a ser instalado junto al, o los, sistemas operativos que se hayan estado usando hasta entonces, así que no es necesario dedicarle una computadora entera, ni siquiera un disco rígido, ya que con una partición basta. No es necesario instalar en BeOS en una partición en especial, está pensado para que se ejecute desde cualquier partición. El programa Boot-Manager incorporado (que también se auto instala de así quererlo el usuario) permite la fácil selección entre los sistemas operativos.

Soporte de discos "largos" (18 millones de terabytes aprox.)

El BeOS esta pensado con vistas al futuro y su sistema de archivos de 64 bits está preparado para vérselas con unidades de hasta 18 millones de terabytes, que, haciendo las cuentas, es un poco más de lo que cualquiera vaya a precisar.

Rapidez, eficacia y potencia

El promedio de tiempo de inicio total que le toma al BeOS cargarse hasta estar 100% disponible al usuario es de unos 20 segundos, el cargado de las aplicaciones es instantáneo y el tiempo de cerrado, bajo circunstancias normales es de unos 4 segundos.
Las aplicaciones generalmente no ocupan mucho, y se instalan  simplemente con descomprimirlas y ejecutarlas.
Es BeOS es realmente muy estable y robusto a la hora de mantener corriendo múltiples aplicaciones y procesos. En una prueba hecha, pude tener abiertas 47 ventanas de directorios, 31 ventanas del navegador, escuchar MP3s y aún así podría haber seguido trabajando tranquilamente, ya que el sistema seguía respondiendo como si nada. (AMD K6-II 350Mhz, 64Mb RAM)

Extensiones al sistema o "Add-ons"

Los add-ons son componentes del sistema que como su nombre en inglés lo indica sirven para "extender" las funcionalidades innatas del sistema operativo. No se trata simplmemente de drivers, sino que es un concepto que va un poco más allá. Para cada aspecto del sistema hay add-ons determinados, y si bien es cierto que en algunos casos actúan realmente como drivers en otros no es tan así.
Los add-ons son en definitiva archivos (un archivo por add-on), programas si se quiere, que sin embargo no son diseñados como una aplicación convencional. Un add-on determinado, colocado en el directorio correspondiente, le agrega al sistema operativo la funcionalidad inherente a dicho add-on de forma automática, sin la necesidad de configurar nada y en la gran mayoría de los casos ni siquiera de reiniciar. Si el add-on en cuestión es del tipo que cumple la función de driver, con el solo hecho de colocarlo en el directorio correspondiente el BeOS hará uso de él de forma automática la próxima vez que se reinicie la máquina (o se reinicie el servidor correspondiente, como se explica más adelante).
En el caso de los add-ons que agregan funcionalidad al sistema (como los media translators, explicados a continuación) dicha funcionalidad está disponible inmediatamente.
Ejemplos de add-ons son los de tipo de archivo (que permiten acceder a unidades con otros sistemas de archivos como FAT, VFAT, ISO9660, HFS, etc.) los que actúan como drivers (video, sonido, red, etc.) y add-ons especiales que merecen un análisis aparte por el importante rol que juegan en el BeOS. Estos son los "media-translators" y "Tracker-add-ons".

Extensiones al manejo de formatos multimedia (media-translators/add-ons)

Los "media-translators" son add-ons que sirven para traducir de un formato de imágen a otro. De esta manera el sistema operativo puede, sin depender de ninguna aplicación, trabajar con diversos tipos de imágenes de forma transparente.
Si bien el nombre lo sugiere, generalmente no se encuentran media-translators de formatos de sonido o animaciones. Para estos tipos de archivos multimedia hay add-ons también, por supuesto, que permiten leer, escribir y reproducir cualquier formato de forma transparente, pero se denominan de manera diferente (media add-ons). Sólo un detalle de la implantación.
Lo interesante de este enfoque es que las aplicaciones usan los servicios de lectura y escritura de formatos multimedia que les otorga el sistema operativo a través de su interface de programación de aplicaciones (API) y los add-ons disponibles. Esto quiere decir que todas las aplicaciones multimedia pueden soportar el uso de un nuevo formato con s&oacutel;lo agregar el add-on correspondiente al BeOS. A partir de ahí las capacidades de la aplicación se extienden de manera transparente y automática.

Extensiones a las operaciones sobre archivos (Tracker-add-ons)

Los Tracker add-ons son extensiones a la aplicación especial Tracker, que como se dijo es la encargada de el manipuleo visual de unidades, archivos y directorios. Se puede acceder a los add-ons del Tracker a traves del menu contextual y hacer uso de sus capacidades.
Uno quizás pueda preguntarse cual es la diferencia entre acceder a los add-ons del Tracker o efectuar lo mismo con Open with .... Hay varias razones para que esto no sea así. Cada archivo tiene un tipo (ejecutable, texto, imágen, etc.) asignado internamente, y eso da como resultado que en el menu Open with ... sólo aparezcan las aplicaciones capaces de tratar con el archivo en cuestión. Por otra parte los add-ons del Tracker se supone que tratan con cualquier archivo, como por ejemplo un add-on para comprimir archivos. Conviene entonces, ya que esa función es común a cualquier tipo de archivo, ponerlos en un menu para operaciones generales. Por otra parte muchos otros add-ons del Tracker no necesitan manipular archivos sino interactuar con el directorio (digamos por ejemplo, crear un archivo en el directorio). Ahora, si la operación se efectuara con Open with ... el add-on podria cargarse, pero no tendría idea de en qué directorio debe actuar. Pero al ser una extensión de la aplicación Tracker, puede obtener los datos de ésta, como el directorio desde el cual el add-on fue llamado, archivos seleccionados, etc. y realizar la labor correspondiente.
Como se ve, los add-ons del Tracker son mucho más que abrir archivos con una aplicación determinada.

Aplicaciones incrustables (replicants)

Los " replicants" son aplicaciones que funcionan bajo un mecanismo de replicación (esto es crea una copia de sí misma) que les permite "adherirse" a ventanas preparadas para tales fines. El escritorio es un ejemplo de esto. Con el BeOS viene la aplicación de reloj que tiene la habilidad de pegarse al escritorio. A partir de ese momento es como si formara parte del mismo.
Ejemplos típicos de esto son las famosas "sticky-notes", ventanitas que uno puede usar a modo de recordatorio y dejarlas adheridas en el escritorio.
Por supuesto que los "replicants" no se limitan al escritorio sino que es posible para cualquiera persona escribir aplicaciones que sean "replicants" o que los acepten.
Si bien no es una característica muy explotada hasta el momento puede que encuentre su lugar más adelante.

Meta-atributos de archivo

Una de las cosas maravillosas del sistema de archivos del BeOS es que las aplicaciones pueden crear, leer, escribir y modificar información "adosada" (metainformación) al archivo de forma transparente, esto es sin que esos bytes de información formen parte del contenido del archivo. Dicha información se organiza en la etiqueta que identifica al atributo, por ejemplo "BEOS:TYPE", y su contenido, por ejemplo "text/html". De esta manera cualquier aplicación puede crear atributos y asignarle un valor. Más tarde, esa misma aplicación o alguna otra que reconozca ese atributo puede adquirir esa información o modificarla.
El sistema operativo mismo crea para cada archivo atributos como el ya mencionado arriba, el tipo de archivo (denominado internamente "BEOS:TYPE" hecho que no debe preocupar más que a los programadores) de manera que el sistema operativo o cualquier otra aplicación sabe con qué tipo de archivo está tratando sin importar la extensión del mismo (las cuales en BeOS por lo ya explicado son puramente superfluas y se usan, si es que se usan, por compatibilidad con otros sistemas).

Núcleo (kernel) basado en servidores

El Kernel del BeOS opera bajo el concepto de cliente/servidor. Esto quiere decir que las aplicaciones son los "clientes" que hacen peticiones a los "servidores". Este hecho no debe confundirse con si el BeOS es un servidor de redes, no tiene nada que ver. La forma cliente-servidor es en este caso una manera de concebir la interacción de las aplicaciones con los componentes del núcleo del sistema operativo.
Para cada tarea el BeOS tiene un servidor especial. Por ejemplo está el media_server, que se encarga de todos los aspectos multimedia que las aplicaciones pudieran necesitar, está el net_server, que se encarga de las comunicaciones a través de redes (por ejemplo Internet), el print_server que se ocupa de todo lo relacionado con impresiones, etc.
Pero lo mejor de todo es que los servidores actúan como aplicaciones comunes, siendo posible que uno o más servidores se cierren como cualquier aplicación, si es oportuno, o cargar algún servidor que haga falta en medio de la ejecución. Esto se traduce que a la hora de configurar el BeOS rara vez es necesario reiniciar para que los cambios tomen efecto, ya que en el peor de los casos el BeOS preguntara si el usuario desea "reiniciar" a un servidor en cuestión. En ese caso dicho servidor se cierra y se vuelve a cargar, en pocos segundos, manteniendose la integridad del sistema y ahorrándose el usuario el tener que reiniciar.

Procesamiento en hebras intensivo (pervasive multithreading)

Por supuesto que el BeOS es capaz de mantener andando más de una aplición o proceso sin problemas, pero es el enfoque utilizado para este fin lo que lo hace aún más interesante.
El BeOS "explota", se podría decir, el concepto multithreading o proceso en hebras, optimizando al máximo posible el tiempo de ejecución. Esto es así porque los programas en BeOS usan multithreading automáticamente, ya que, sólo por poner un ejemplo, cada componente gráfico, desde una ventana a un botón tiene asignada una thread, el flujo de la aplicación en sí tiene asignada otra thread, los eventos que la aplicación recibe y manda otra thread, etc. De esta manera los programas o componentes del sistema dividen cada pequeña tarea en threads (hebras), lo que resulta en una mayor independencia entre aplicaciones y componentes y lo que es más importante en una mejor optimización del tiempo de respuesta y ejecución.
Si el sistema dispone de más de un procesador, las threads se distribuyen automáticamente.

Memoria protegida REAL

No hay mucho que decir respecto a esto. Para los que no lo saben va la siguiente explicación.
En los entornos donde conviven varias aplicaciones al mismo tiempo es crucial proteger a éstas de acciones indebidas como que una aplicación quiera escribir en la memoria de otra. Casos como ése pueden resultar fatales y poner en juego la estabilidad del sistema. Por eso se han desarrollado métodos para que esto no suceda y se resume en "proteccion de memoria".
El BeOS hace fuerte uso de esta característica resultando en un sistema seguro y confiable, en el que es imposible que una aplicación "rebelde" tire abajo la estabilidad del sistema. En caso de que el BeOS considere que una aplicación ha violado accesos a memoria o alguna otra "norma" de seguridad se la cerrará automáticamente previo aviso al usuario.
Otro caso que puede pasar es que la aplicación (por causa de un error de programación) entre en un ciclo infinito o tenga problemas internos, lo que se conoce vulgarmente como que la aplicación se "colgó" o se "congeló". El BeOS muchas veces reconoce esto y siempre existe la posibilidad de cerrar forzosamente cualquier aplicación que se este comportando indecentemente, inclusive partes mismas del núcleo del sistema operativo.

Sistema de seguimiento de archivos por "diarios" o "reportes" (journaling file system)

Esta es una medida de seguridad muy utilizada en servidores de red, sobre todo de bases de datos. Consiste en realizar un seguimiento en todas las operaciones (o transacciones) que se realicen sobre los archivos (llevado a cabo internamente por el sistema operativo) para que ante eventuales interrupciones anormales el sistema de archivos pueda ser dejado en una forma prolija, lo más parecido posible al momento anterior al fallo. El caso típico es cuando nos vemos obligados a reiniciar la maquina via hardware (con el boton reset) sin poder cerrar el sistema prolijamente. Entonces, en la proxima reinicialización el BeOS consultará el "diario" llevado hasta el momento y reconstruirá los datos en el disco hasta donde le sea posible, minimizando así la pérdida de datos y manteniendo la integridad del sistema de archivos.
Como se ve, con el término "journaling file system" uno no se refiere al sistema de archivos en sí que utiliza el BeOS, que curiosamente recibe el nombre de BFS (Be File System), sino al mecanismo de seguridad e integridad en cuestión.

Soporte automatico de multiples procesadores (hasta 8)

Es BeOS reconoce automáticamente maquinas dotadas con más de un procesador sin la menor necesidad de configurar nada, y lo que es más importante hace uso de ellos de manera transparente y eficiente. El BeOS se encarga automaticamente de distribuir las tareas a través de los procesadores presentes por lo que el uso o programacion de aplicaciones se hace transparente, sin importar el hecho de que haya más de un procesador presente o no.
En otras palabras un programador no tiene que diseñar de antemano su aplicación para que contemple este hecho, sino que se diseña normanlente, ya que el sistema operativo se encargará de hacerla correr independientemente del número de procesadores. El usuario tampoco tiene que vérselas con engorrosas configuraciones del kernel del sistema.
Por la característica del multithreading intensivo del BeOS las threads son asignadas dinámicamente a cada procesador, optimizando al maximo el tiempo de ejecucion y respuesta.

Interface de programación de aplicaciones (API) nativamente orientada a objetos

Hoy día casi todo el mundo cuando piensa en la programación de aplicaciones piensa automáticamente en hacerlo a través de un enfoque orientado a objetos. Simplemente es la forma más cómoda y segura de tener programas y componentes andando, al tiempo que el código orientado a objetos es fácil de producir, mantener, modificar, etc.
La API (Applications Programmers Interface) del BeOS consta casi en su totalidad de objetos, y nótese que esto no quiere decir el BeOS ofrece librerías de objetos que hacen llamadas a funciones comunes. La API realmente consta de objetos. Esto es asombroso, ya que uno está accediendo real y directamente a las funciones internas del sistema operativo con el solo hecho de interactuar con un par de objetos. A través de estos objetos el programador dispone de toda la funcionalidad de los distintos servidores del kernel, así de las extensiones que estén disponibles.
Por supuesto que el enfoque orientado a objetos del BeOS es real y total, con lo que quiero decir que los objetos son derivables, etc.
Es lógico que uno se pregunte qué quiere decir que la API es casi toda orientada a objetos. Por cuestiones de performance y de simpleza se ha decidido que las funciones que tengan que operar en un intervalo crítico de tiempo no fueran parte de ningún objeto. Por una parte porque el acceso a los objetos puede llegar a ser más lento que a funciones comunes (sobre todo a partir de derivaciones, funciones o clases virtuales, etc.) y por otra parte porque son funciones con una finalidad tan específica, que no valía la pena crear objetos para ellas. Estas funciones corresponden principalmente a aquellas que actúan directamente con el kenel, como por ejemplo para crear y manipular threads o semáforos y las que tengan que ver con el manejo de redes. La programación en BeOS se realiza típicamente en C++, pero no tiene por qué ser así.

Procesamiento por hebras (multithreading) transparente al programador

Esto no quiere decir que programar threads sea una tarea automática. En lo que se insiste, y que ya fue mencionado anteriormente es que al dedicarse una thread para casi cada componente del programa el programar en un entorno semejante puede conllevar muchos cuidados por parte del programador. Esto no es así. En las threads creadas automáticamente por el BeOS es éste quien se encarga del pase del mensajes entre éstas y de su destrucción llegada la hora.
También es el BeOS quien se encarga automática y dinámicamente de asignar cada thread a cada procesador, por lo que el programador diseña sus aplicaciones totalmente ignorante de este hecho.

Pase de mensajes (scripting) entre aplicaciones

Otro de los aspectos interesantes de la programación de aplicaciones bajo BeOS es que muchos de los objetos de la API, si no la mayoría, soportan el pase de mensajes desde un ente exterior, digamos, otra aplicación. Estos mensajes pueden ser tanto para disparar acciones en la aplicación o para modificar propiedades de la misma (por ejemplo, modifico la posición de una ventana en el escritorio). Esto hace posible controlar casi cualquier aspecto de una aplicación desde otra, pudiéndose aprovechar la funcionalidad de una determinada aplicación en procesos automatizados (scripts) por ejemplo.

POSIX medianamente implementado

Este hecho quizás pueda llegar a interesar a quienes tengan pensado transportar aplicaciones desde entornos que soporten POSIX a BeOS. Sin embargo hay que tener cuidado porque la implementación no parece ser total, aunque es suficiente.

Aplicaciones de consola

Muchas veces es necesario crear pequeños programas en modo consola para verificar tal o cual resultado o función o simplemente porque la programación de una interface no viene al caso.
Afortunadamente esto es posible en el BeOS. Las aplicaciones en modo consola actúan mediante la entrada y salida standard de caracteres, estando disponibles todas las funciones stnadard de C o C++ para este propósito.
Por cierto, hacer programas para modo de consola no requiere de ningún artilugio o maniobra extraña: se escribe como siempre, se compila y se ejecuta en una ventana de Terminal (el shell Bash del BeOS).

Intérprete de comandos (shell) Bash

Si bien es cierto que con la interface gráfica se llevan a cabo la gran mayoría de las tareas también es cierto que para casos específicos la mejor solución es un buen script. Por fortuna este caso está contemplado y el BeOS incluye una versión bastante completa del intérprete de comandos "Bash" (Bourne Again SHell).
A diferencia de lo que se puede llegar a pensar la ventana de terminal o intérprete de comandos no corre en modo texto, sino en una ventana como cualquier aplicación. También es importante volver a insistir sobre el hecho de que el BeOS no está "montado" sobre un sistema operativo intérprete de comandos y la interface gráfica y todo lo demás son accesorios, sino que el BeOS es lo que se ve.
Los usuarios avanzados que necesiten programar scripts de mantenimiento o lo que venga al caso cuentan con esta útil herramienta standard, pero en general el usuario promedio no tiene que preocuparse por este hecho, ya que, como se dijo antes, todas las tareas básicas del sistema se efectuan mediante aplicaciones o funciones basadas en interface gráfica, incluso tareas de otra forma complejas como montar o desmontar discos, configurar los dispositivos del sistema, particionar discos, etc.
Los scripts en Bash se ejecutan al igual que cualquier otra aplicación, así sea desde una ventana de Terminal o cliqueando en su ícono.

¿Por que otro sistema operativo más?

La necesidad de un nuevo sistema operativo como el BeOS y el eventual éxito de éste se desprende de un simple hecho:
los demás sistemas operativos son viejos
En otras palabras, los demás sistemas operativos tienen sus orígenes en tiempos y circunstancias que ya no forman parte de la realidad cotidiana del mundo informático. Pero más allá de los origenes, estos sistemas operativos nos vienen acompañando hasta el dia de hoy. Pero entonces, ¿cómo puede ser?
Muy simple, y los usuarios avanzados y los no tanto de estos sistemas conocen la respuesta: a medida que el tiempo pasaba e iban surgiendo nuevas tecnologias, paradigmas, etc. en la mayoria de los casos lo que se hizo no fue un "borrón y cuenta nueva" del sistema operativo en cuestión sino que lo que había que agregar se agregó a lo que ya estaba hecho con algunas o ninguna modificación. La actitud es, después de todo, comprensible. Le es menos costoso a una empresa construir sobre lo ya hecho (aunque al final de tanto agregar resulte un castillo de naipes) que tirar lo hecho hasta entonces y comenzar otra vez. Y el resultado es lo que todos conocemos: sistemas operativos sobrecargados de módulos, llenos de ambigúedades en el esfuerzo de mantener sus obsoletos origenes, incoherencia, inestabilidad, y por sobre todo de mantenerse competitivos contra la competencia.
De esta manera sistemas operativos que nacieron para la interface de texto derrepente la tienen gracias a modulos nuevos imposibles de configurar, sistemas que no conocian ni la multitarea ni la memoria protegida derrepente las tienen agregandole otro "sistema operativo" encima, en los sistemas que no tienen programación orientada a objetos el desarrollo de aplicaciones se vuelve una tarea más cercana a un dios que a un ser humano, por lo que las compañías se apresuran a ofrecer sus módulos orientados a objetos que solucionen el problema, cuando en realidad la falta clara de un standard obliga a los programadores a conocerse de memoria las semejanzas y diferencias de todas las versiones. En muchos casos, gracias a la arquitectura (de otros tiempos) del sistema, el enfoque orientado a objetos es completamente falso y vergonzoso e incluso más engorroso. Aparecen sistemas con módulos y módulos que se fueron acumulando a lo largo de las décadas en el esfuerzo de mantener al sistema vigente. Aparecen sistemas que claman ser el futuro de toda la humanidad pero que solamente pueden ser instalados, configurados, usados, mantenidos y programados tras realizar un doctorado en sistemas, después de lo cual, incluso, la experiencia de manejarlos dista de ser comfortable. Están los sistemas que son caras bonitas, pero tras los cuales se esconden tecnologías de décadas atrás a las que no se les ha prestado mayor atención por lo bello de su interfáce gráfica, por el fanatismo de sus seguidores, por su ignorancia de éstos o por su estupidez. Se tienen sistemas que tienen un pie en el futuro pero otro fuertemente agarrado al pasado y en la mitad la brecha del avance tecnológico abriéndose cada vez más, amenazando con tragarse a ambos pies, cada vez más separados, y con ellos al sistema entero. En cualquiera de los casos las tendencias se hacen cada vez más irreversibles, semejándose a una bola de nieve en caida, haciéndose cada vez más grande y pesada.
Claro que la mayoría de los usuario quizás no vea estas cosas, por lo bien que la compañía dueña del sistema lo oculta tras aparentes "innovaciones", la belleza y simplicidad de la interface gráfica o porque se niega a aceptar que, aunque se trate de un buen sistema operativo, sigue teniendo un "pie" en el pasado, que le negará el avance hacia el futuro. Por otra parte quizás el usuario se haya dado cuenta de que algo no anda bien con su sistema, pero el miedo a lo desconocido, a intentar otra cosa, a enfrentar algo a lo que no está acostumbrado lo paralice ...
(He hablado muy metafóricamente, evitando nombrar ejemplos concretos. Simplemente, va en contra de mi política para con este sitio. Estoy seguro se que muchos lectores sin embargo habrán podido leer entre líneas. A quienes no estén, sin embargo, muy seguros de lo que estoy diciendo les recomiendo que investiguen por ellos mismos, que se embeban en todos los sitios sobre sistemas operativos que puedan, que investiguen la historia de la informática, del software, de los sistemas operativos, etc. En unas palabras, que se informen ... )
Es por eso que el BeOS no es un sistema operativo "más", sino que fue desarrollado desde cero, con vistas al futuro, desarrollado con lo último de lo último en lo que a arquitecturas de sistemas operativos (de escritorio, claro) se refiere. Porque de entrada ha sido desarrollado incorporando con lo que siempre consideramos indispensable (y más) en un sistema operativo. Porque ha sido pensado de tal manera que se pueda ir actualizando sin agregar pesadas capas, ya que su concepción ha sido meticulosamente planeada. Porque no pretende ser EL sistema operativo esforzándose por incorporar todas las características existentes, lo que termina convirtiendo al sistema en un "monstruo", sino que tiene los objetivos bien claros y definidos. Porque ha sido pensado desde el comienzo para el usuario de hoy y para el programador de hoy, y para los del mañana. ¿Qué quieren decir todas estas frases? Recomiendo al que no las entienda explorar meticulosamente la actual sección, buscar más información en www.be.com y otros sitios, y adentrarse aunque no sea sino como observador en el foro de usenet comp.sys.be.advocacy

La empresa Be Inc. hoy y qué se espera para el futuro

Cuando me disponía a escribir esta página por primera vez, lo hacía pensando "la situación de Be no es mala, pero tampoco es una gran multinacional, aunque todos sabemos que puede repuntar. ¿Cómo transmitirle al lector esa misma esperanza?"
Pero ahora, apenas unos meses (meses!!) después no me veo en la necesidad de basarme en suposiciones, ya que la situación de Be ha mejorado notablemente. En sus principios Be no era conocida por nadie y menos lo era su sistema operativo. Aún hoy, cuenta con pocos empleados (80 aproximadamente), es una empresa pequeña para el rubro que pretende ocupar, y eso se traduce en que el desarrollo no puede centrarse en absolutamente todos los aspectos del sistema operativo, esto es, el sistema es jóven y no es perfecto. Por otra parte la segunda y más nefata consecuencia del anonimato (situación que cambia lentamente, ver más abajo) es que no hay muchas aplicaciones para este sistema, ni hablar de juegos y menos drivers. Es por eso que el mismo equipo de Be muchas veces se ve en la obligación de desarrollar drivers por su cuenta, lo que agrega una carga más en su pesada espalda.
Pero créase o no Be Inc. se está haciendo cada vez más conocida en el mundo de la informática, luego de haber trabajado casi en el anonimato por años. Conocidas compañías están firmando contratos con Be para incluir el BeOS en algunos casos en computadoras y en otros casos en componentes más pequeños como mini computadoras de bolsillo y similares, centrando la mayor parte de sus esfuerzos en este nuevo mercado (más información sobre el BeOS en componentes para Internet). Por otra parte la cantidad de empresas interesadas en desarrollar aplicaciones para BeOS está creciendo, la cantidad de aplicaciones está creciendo, la cantidad de juegos está creciendo, etc. (más información sobre juegos, aplicaciones y drivers para BeOS). La situación hoy por hoy es esta: el Be se está haciendo notar lentamente y muchas compañías han dejado de ignorarlo.
Otro punto importante es la proximidad de su nueva versión, que además de lo que significa, se podraá bajar del sitio de Be en forma reducida, pero totalmente funcional, de forma GRATUITA, la cual correrá bajo plataformas Intel. De esta manera los usuarios de Windows tendrán la oportunidad única de probar el BeOS sin tener que instalar ni particionar nada de su disco rígido y sin gastar un centavo. Más allá de eso, Be seguirá ofreciendo a los usuarios una versión comercial más completa (más información sobre esto en inglés o en español).
Por esta última movida, que sin duda hará que el potencial del BeOS sea conocido en el mundo entero, por la cada vez mayor cantidad de companías que desarrollan productos serios para BeOS y por los contratos y alianzas que la empresa está teniendo creo que el futuro para el BeOS es muy prometedor ...

Aplicaciones, juegos y drivers para BeOS

Al ser BeOS un sistema operativo jóven la cantidad de juegos y aplicaciones disponibles para éste no es en nada comparable con el enorme volúmen del que gozan los demás sistemas operativos m´s populares. Por esta misma razón tampoco son muchos los drivers disponibles para este sistema.
Esto tampoco quiere decir que el BeOS viene pelado y que no se pueden conseguir aplicaciones por Internet. De ninguna manera: el BeOS viene con programas para correo electrónico, navegador, cliente de FTP, un rudimentario procesador de textos, y herramientas de desarrollo totalmente gratuitas. Además en Internet las aplicaciones share- y freeware abundan, lo que añade funcionalidad al sistema. Es también posible conseguir aplicaciones comerciales de un muy alto nivel de calidad.
Conforme Be Inc. va ganando reconocimiento, esta situación empieza a revertirse. Hoy día son varias las compañías interesadas en desarrollar productos serios para BeOS y también las hay que desean llevar sus éxitos en otros sistemas operativos al BeOS.
El lector que quiera asesorarse bien sobre si la versión actual de BeOS soporta cierto hardware determinado debería consultar el sitio oficial de Be en la especificación del producto donde tienen una lista detallada del hardware soportado. Luego de eso, si el hardware no estaba en la lista, tampoco hay que descartar la posibilidad de que algún usuario capacitado haya programado un driver por sus propios medios: buscar en los sitios de free- y shareware. El ejemplo típico es el driver para las SoundBlasters compatibles de las viejas (hasta la 16 bit) cuyo autor lo desarrolló por su cuenta
Al lector que desee profundizar sobre el software disponible para BeOS le recomiendo que navegue por los siguientes sitios, que son los más importantes "recolectores" de software para BeOS:
BeWare - http://www.be.com/beware
BeBits - http://www.bebits.com
También hay software disponible en sitios ya famosos como Tucows o Downloads

El BeOS en minicomponentes con conexión a Internet: Stinger

Desde finales de 1999 la empresa Be ha centrado parte de sus esfuerzos en un nuevo mercado muy interesante para ellos: el de los minicomponentes o minicomputadoras, generalmente agendas electrónicas o computadoras de bolsillo, con conexión a Internet.
Es por eso que desarrollaron una versión reducida de su sistema operativo BeOS, y junto con un par de componentes clave lo llamaron Stinger. En otras palabras es la versión del BeOS para computadoras de bolsillo o sistemas empotrados. Corre en chips compatibles con Pentium, pero sus requerimientos son menores y muy diferentes. Como se espera en ese tipo de componentes la memoria es reducida, el disco rígido no existe, la pantalla es pequeña, etc.
Be Inc. ya ha firmado contratos con compañías importantes, entre las que se encuentra Compaq, para desarrollar conjuntamente dichos componentes.
El futuro de Be en este nuevo rubro parece interesante y asegurado.


Fuente: BeOSFera Ir arriba