Índice 4.1 Introducción 4.1.1 Interoperabilidad …………………………………………………… 4.1.2 Neutralidad tecnológica
4.2 Intercambio de archivos 4.2.1 Desventajas de los formatos de archivos “estándar de facto” cerrados 4.2.2 Formatos de archivos estándares ISO
4.3 Recursos remotos 4.3.1 Impresión 4.3.2 Escritorio remoto 4.3.3 RPC
4.4 Acceso a sistemas de archivos 4.4.1 Acceso a formatos de disco (fat-16/fat-32/vfat/ntfs/xfs/extfs) 4.4.2 Herramientas para el acceso a formatos de disco
4.5 Emulación del sistema operativo 4.5.1 Ejecución de binarios de otros sistemas operativos 4.5.2 Herramientas para la ejecución de binarios
4.6 Virtualización 4.6.1 Emulación de Hardware 4.6.2 Herramientas para la emulación de hardware
4. INTEROPERABILIDAD ENTRE SISTEMAS OPERATIVOS 4.1 Introducción 4.1.1 Interoperabilidad La interoperabilidad es la capacidad de dos o más sistemas o componentes para intercambiar información y usar la información que se ha intercambiado. La interoperabilidad típica se lleva a cabo en dos niveles; semántico y técnico. La interoperabilidad semántica permite a las partes involucradas describir los requisitos sin considerar la implementación técnica. Con respecto al software, el término interoperabilidad se usa para describir la capacidad técnica de distintos programas para intercambiar los datos a través de un conjunto común de formatos de intercambio, para leer y escribir los mismos formatos de archivo, y para usar los mismos protocolos. La interoperabilidad representa la capacidad para correr procesos sin interrupciones a través de las fronteras organizativas sin perder el contexto ni el significado, y se lleva a cabo:
Comprendiendo la manera en que se se pueden interconectar los procesos de comercio de las distintas organizaciones. Especificando la semántica de los mensajes dentro de estos procesos para que los requisitos y el contexto puedan acordarse entre todas las partes involucradas. Desarrollando estándares para respaldar estos procesos de comercio de manera eficaz, para que los mensajes puedan intercambiarse entre las organizaciones de una manera escalable. Proporcionando directrices de implementación sobre la manera en que la semántica se transforma en mensajes equivalentes a nivel sintáctico que puedan ser comprendidos y procesados de forma automática por sistemas dispares.
La interoperabilidad semántica permite a las organizaciones de facilitación del comercio como el CEFACT/ONU elaborar bibliotecas como la CCL/ONU donde la información se presenta de una manera consistente, sin importar la aplicación o plataforma tecnológica. A nivel gubernamental o sectorial, con frecuencia es necesaria la interoperabilidad semántica antes de la interoperabilidad técnica/de sistemas ya que los requisitos pueden ser acordados por los empresarios sin la complejidad que implica una discusión sobre la metodología de implementación.
2
4.1.2 Neutralidad tecnológica Los desarrolladores de software privativo que se oponen a las leyes que promueven la migración al software libre a menudo sostienen que tal medida es contraria al principio de «neutralidad tecnológica». Esta conclusión es errónea, ¿pero dónde está el error? El principio de la neutralidad tecnológica consiste en que el Estado no ha de imponer preferencias a favor o en contra de una determinada tecnología. Por ejemplo, no debe existir ninguna regla que especifique si los organismos estatales deberían utilizar memorias de estado sólido o discos magnéticos, o si tienen que usar GNU/Linux o BSD. Más bien, el Gobierno debe permitir que los licitadores propongan cualquier tipo de tecnología aceptable como parte de las soluciones que ofrecen, y optar por la oferta mejor o menos costosa según los procedimientos habituales. El principio de la neutralidad tecnológica es válido, pero tiene sus límites. Algunas tecnologías son perjudiciales: pueden contaminar el aire o el agua, favorecer la resistencia a los antibióticos, causar daños a los usuarios o a los trabajadores que las fabrican, o provocar una situación de desempleo masivo. Tales tecnologías deberían estar sujetas a gravamen y regulación, y deberían ser desalentadas o incluso prohibidas. El principio de la neutralidad tecnológica se aplica únicamente a las decisiones de orden técnico. No se trata de «neutralidad ética» o «neutralidad social». No se aplica a las decisiones sobre cuestiones éticas o sociales, como la opción entre software libre y software privativo. Por ejemplo, cuando el Estado adopta una política de migración al software libre para restaurar la soberanía informática del país y promover la libertad y la cooperación entre los ciudadanos, no es una preferencia técnica. Se trata de una decisión de orden ético, social y político, no tecnológico. Se supone que el Estado no debe ser neutral a la hora de preservar las libertades individuales y promover la cooperación. Se supone que no ha de ser neutral con respecto a la preservación o restauración de su soberanía.
3
4.2 Intercambio de archivos 4.2.1 Desventajas de los formatos de archivos “estándar de facto”
cerrados Un formato propietario o cerrado es un formato de archivo protegido por una patente o derechos de autor. Tales restricciones típicamente intentan prevenir la ingeniería inversa; si bien la ingeniería inversa en los formatos de archivo con propósitos de interoperabilidad generalmente es legal, según la creencia de quienes la practican. Las posiciones legales difieren conforme al país, entre otras cosas, en lo que se refiere a las patentes de software. Una de las cuestiones controvertidas, acerca del uso de formatos propietarios, es la de la propiedad. Si la información es almacenada en un formato que el proveedor de software intenta mantener en reserva, el usuario puede "poseer" la información, pero no tiene otra manera de extraerla excepto utilizando un software controlado por el proveedor; lo que, en la práctica, proporciona a éste el control de la información del usuario. El hecho de que el usuario dependa de una pieza de software para extraer la información almacenada en sus archivos de formato propietario, proporciona al proveedor una venta casi garantizada para futuras versiones del software y es la base para el concepto de dependencia del proveedor. El riesgo sucede porque no hay registro público de cómo funciona un formato propietario, si la firma del software que posee el derecho del formato deja de hacer el software que puede leerlo entonces todos los que utilizaron ese formato en el pasado podrían perder toda la información en esos archivos. Esas situaciones son muy comunes, especialmente para versiones de software desactualizados. Desventajas:
Deben Abrirse con el software propietario con el que lo crearon Protección de por derechos de autor Los estándares de iure se basan en una estructura burocrática lenta y que reacciona con dificultad a los cambios del mercado. Para acceder a un estándar de iure publicado es necesario desembolsar una cantidad considerable de dinero. Esto es un problema para pequeñas y medianas empresas que desean desarrollar productos. Los estándares de iure suelen derivar en un mero acuerdo de compromiso para frenar la beligerancia de fabricantes en fuerte competencia. De manera que no resuelven la necesidad real que demanda el mercado.
4
4.2.2 Formatos de archivos estándares ISO Es un archivo donde se almacena una copia o imagen exacta de un sistema de ficheros, normalmente un disco óptico. Se rige por el estándar ISO 9660 que le da nombre. Algunos de los usos más comunes incluyen la distribución de sistemas operativos, tales como sistemas GNU/Linux, BSD o Live Cd’s. Hay muchos formatos de imágenes ISO diferentes. Una imagen de disco óptico por ejemplo, es un tipo de Imagen ISO de un disco óptico como son: CD, DVD, UMD, BD, etc. Una imagen de disco que contiene toda la información de un disco óptico y que comprende tanto la información real que necesitamos, como los datos sobre la estructura que esta información sigue en el dispositivo. Los formatos de imágenes ISO más comunes son: La extensión .ISO (como archivo.iso): es un solo archivo de todos los datos. Es el más habitual. La extensión .CUE/.BIN (como archivo.bin y archivo.cue): desarrollado por la empresa CDRWIN, codifica entre 2.048 o 2.324 bytes por sector. El archivo .BIN guarda todos los datos, mientras que él .CUE describe los datos almacenados. A este último también se le conoce como cue sheet . Diremos que un formato de archivo es abierto si el modo de representación de sus datos es transparente y/o su especificación está disponible públicamente. Los formatos abiertos son, ordinariamente, estándares determinados por autoridades públicas o instituciones internacionales cuyo objetivo es establecer normas para interoperabilidad de software. No obstante hay casos de formatos abiertos promovidos por compañías que eligen hacer la especificación de los formatos usados por sus productos disponibles públicamente. Debería notarse que un formato abierto puede ser codificado en una forma transparente (leíble en cualquier editor de texto: este es el caso de lenguajes marcados) o en forma binaria (no leíble en un editor de texto pero enteramente decodificable una vez que las especificaciones del formato son conocidas). La definición actual y más aceptada de sistemas abiertos es un entorno que implementa especificaciones lo suficientemente amplias para interfaces, servicios y formatos de datos auxiliares a fin de que todas las aplicaciones adecuadamente diseñadas:
Permitan transferencia ("porting") sin cambios o cambios mínimos en una variedad de arquitecturas de equipo Funcionen con aplicaciones en sistemas locales y remotos que tienen diversas arquitecturas Interactúen con usuarios de una manera común que permita transferir fácilmente los conocimientos técnicos de los usuarios entre diferente arquitecturas de equipos
5
Las especificaciones abiertas son especificaciones mantenidas por un proceso abierto de consenso público. Contienen generalmente normas internacionales a medida que son adoptadas. También pueden contener especificaciones formuladas por empresas o consorcios privados cuando el mantenimiento de la especificación se transfiere a un proceso con consenso o control público.
4.3 Recursos remotos 4.3.1 Impresión Reproducción de un texto o una ilustración en una imprenta. Proceso para la producción de textos e imágenes, típicamente con tinta sobre papel usando una prensa. A menudo se realiza como un proceso industrial a gran escala, y es una parte esencial de la edición de libros. Los sistemas de impresión son muy variados así como sus resultados. Podemos distinguir dos grandes grupos con necesidades, procesos y resultados muy diferentes, los artísticos, reducida tirada y de gran valor plástico y los industriales, en gran tirada (diarios, revistas, libros, afiches, envases, etiquetas y demás objetos en general de producción masiva) IPP define un protocolo de impresión y gestión de los trabajos a imprimir, el tamaño del medio, la resolución, etc. Como todos los protocolos basados en IP, IPP puede ser usado localmente o sobre Internet para comunicarse con impresoras locales o remotas. A diferencia de otros protocolos, IPP también soporta el control de acceso, la autenticación y el cifrado, siendo así una solución de impresión más capaz y segura que otras más antiguas. También recibe críticas por la sobrecarga del protocolo, al estar construido sobre HTTP. Esto lo convierte en un protocolo y una realización más complejos y recargados de lo necesario — por ejemplo, el venerable protocolo lp fue extendido para cubrir la misma funcionalidad — aunque es conveniente para poder reutilizar otros componentes, como servidores HTTP.
6
4.3.2 Escritorio remoto Un escritorio remoto es una tecnología que permite a un usuario trabajar en una computadora a través de su escritorio gráfico desde otro terminal ubicado en otro lugar. El desarrollo de las redes de telecomunicaciones permitió que poco a poco fueran desapareciendo estas terminales de texto, siendo sustituidos por otras computadoras (generalmente más pequeñas) capaces de emular la misma funcionalidad a través de una aplicación, denominada ‘‘emulador de terminal ‘‘, siendo, por lo tanto, las primeras tecnologías de acceso remoto a computadoras, como telnet y ssh popularizadas inicialmente en entornos Unix. Cerca de la década de los noventa, las interfaces de usuario sufren revolución a favor de las interfaces gráficas, en desmedro de las línea de comandos. Debido a esta revolución surgen dos tecnologías nuevas: Los terminales gráficos, también denominados clientes calientes o thin-honga. Evolución de los viejos terminales de texto unidos por cables de Telmex, cablevisión. Los escritorios gráficos. Dos escritorios gráficos muy populares son los creados para Apple Macintosh y MS-DOS (Microsoft Windows). Nótese que estos escritorios gráficos solamente podían ser utilizados directamente en la computadora, por tanto, aún no son escritorios remotos. El primer entorno operativo de escritorio remoto es X-Window, originalmente desarrollado por el Massachusetts Institute of Technology (MIT) con el nombre de proyecto Athena en 1984. El objetivo inicial era lograr la compatibilidad en materia de terminales gráficos de los diversos fabricantes. Este objetivo resultó ampliamente logrado con su aceptación por parte de dichos fabricantes.
4.3.3 RPC El RPC (del inglés Remote Procedure Call, Llamada a Procedimiento Remoto) es un protocolo que permite a un programa de ordenador ejecutar código en otra máquina remota sin tener que preocuparse por las comunicaciones entre ambos. El protocolo es un gran avance sobre los sockets usados hasta el momento. De esta manera el programador no tenía que estar pendiente de las comunicaciones, estando éstas encapsuladas dentro de las RPC.
7
Las RPC son muy utilizadas dentro del paradigma cliente-servidor. Siendo el cliente el que inicia el proceso solicitando al servidor que ejecute cierto procedimiento o función y enviando éste de vuelta el resultado de dicha operación al cliente. Hay distintos tipos de RPC, muchos de ellos estandarizados como pueden ser el RPC de Sun denominado ONC RPC (RFC 1057), el RPC de OSF denominado DCE/RPC y el Modelo de Objetos de Componentes Distribuidos de Microsoft DCOM, aunque ninguno de estos es compatible entre sí. La mayoría de ellos utilizan un lenguaje de descripción de interfaz (IDL) que define los métodos exportados por el servidor. Hoy en día se está utilizando el XML como lenguaje para definir el IDL y el HTTP como protocolo de red, dando lugar a lo que se conoce como servicios web. Ejemplos de éstos pueden serSOAP o XML-RPC.
4.4 Acceso a sistemas de archivos 4.4.1 Acceso a formatos de disco (fat-16/fat-32/vfat/ntfs/xfs/extfs) Los sistemas de archivos o ficheros (en inglés:filesystem), estructuran la información guardada en una unidad de almacenamiento (normalmente un disco duro de una computadora), que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos manejan su propio sistema de archivos. Lo habitual es utilizar dispositivos de almacenamiento de datos que permiten el acceso a los datos como una cadena de bloques de un mismo tamaño, a veces llamados sectores de 512 bytes de longitud (También denominados clústers). El software del sistema de archivos es responsable de la organización de estos sectores en archivos y directorios y mantiene un registro de qué sectores pertenecen a qué archivos y cuáles no han sido utilizados. El acceso seguro a sistemas de archivos básicos puede estar basado en los esquemas de lista de control de acceso o capacidades. Las listas de control de acceso hace décadas que demostraron ser inseguras, por lo que los sistemas operativos experimentales utilizan el acceso por capacidades. Los sistemas operativos comerciales aún funcionan con listas de control de acceso. La estructura de directorios suele ser jerárquica, ramificada o "en árbol", aunque en algún caso podría ser plana. En algunos sistemas de archivos los nombres de archivos son estructurados, con sintaxis especiales para extensiones de archivos y números de versión.
8
En los sistemas de archivos jerárquicos, usualmente, se declara la ubicación precisa de un archivo con una cadena de texto llamada "ruta" —o path en inglés — . La nomenclatura para rutas varía ligeramente de sistema en sistema, pero mantienen por lo general una misma estructura. Una ruta viene dada por una sucesión de nombres de directorios y subdirectorios, ordenados jerárquicamente de izquierda a derecha y separados por algún carácter especial que suele ser una diagonal ('/') o diagonal invertida ('\') y puede terminar en el nombre de un archivo presente en la última rama de directorios especificada.
SISTEMA DE ARCHIVOS FAT16 El primer sistema de archivos en ser utilizado en un sistema operativo de Microsoft fue el sistema FAT, que utiliza una tabla de asignación de archivos que es en realidad un índice que crea una lista de contenidos del disco para grabar la ubicación de los archivos que éste posee. Los bloques que conforman un archivo no siempre se almacenan en el disco en forma contigua (un fenómeno llamado fragmentación), la tabla de asignación permite que se mantenga la estructura del sistema de archivos mediante la creación de vínculos a los bloques que conforman el archivo. El sistema FAT es un sistema de 16 bits que permite la identificación de archivos por un nombre de hasta 8 caracteres y tres extensiones de caracteres. Es por esto que el sistema se denomina FAT16.
SISTEMA DE ARCHIVOS FAT32 Sistema de archivos FAT32 utiliza valores de 32 bits para las entradas FAT. De hecho, sólo se utilizan 28 bits, ya que 4 bits se reservan para su uso en el futuro. FAT32 permite particiones mucho más grandes (hasta 8 terabytes). Aunque en teoría, el tamaño máximo de una partición FAT32 es de 8 TB, Microsoft lo redujo, voluntariamente, a 32 GB en los sistemas 9x de Windows para promover NTFS. Ya que una partición FAT32 puede contener muchos clústers más que una partición FAT16, es posible reducir significativamente el tamaño de los clústers y, así, limitar también el espacio desperdiciado del disco En términos de realización, el uso de un sistema FAT32 en lugar de un sistema FAT16 tendrá como resultado una leve mejora, de aproximadamente 5%, en el rendimiento.
SISTEMA DE ARCHIVOS NTFS NTFS (del inglés New Technology File System ) es un sistema de archivos de Windows NT incluido en las versiones de Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista y Windows 7. Está basado en el sistema de archivos HPFS de IBM/Microsoft usado en el sistema operativo OS/2, y también tiene ciertas influencias del formato de archivos HFS diseñado por Apple. NTFS permite definir el tamaño del clúster, a
9
partir de 512 bytes (tamaño mínimo de un sector) de forma independiente al tamaño de la partición. Es un sistema adecuado para las particiones de gran tamaño requeridas en estaciones de trabajo de alto rendimiento y servidores puede manejar volúmenes de, teóricamente, hasta 2 –1 clústeres. En la práctica, el máximo volumen NTFS soportado es de 2 –1 clústeres (aproximadamente 16 TiB usando clústeres de 4KiB). Su principal inconveniente es que necesita para sí mismo una buena cantidad de espacio en disco duro, por lo que no es recomendable su uso en discos con menos de 400 MiB libres.
SISTEMA DE ARCHIVOS XFS XFS es un sistema de archivos de 64 bits con journaling de alto rendimiento creado por SGI (antiguamente Silicon Graphics Inc.) para su implementación de UNIXllamada IRIX. En mayo de 2000, SGI liberó XFS bajo una licencia de código abierto. XFS se incorporó a Linux a partir de la versión 2.4.25, cuando Marcelo Tosatti (responsable de la rama 2.4) lo consideró lo suficientemente estable para incorporarlo en la rama principal de desarrollo del kernel. Los programas de instalación de las distribuciones de SuSE, Gentoo, Mandriva, Slackware, Fedora Core, Ubuntu yDebian ofrecen XFS como un sistema de archivos más. En FreeBSD el soporte para solo-lectura de XFS se añadió a partir de diciembre de 2005 y en junio de 2006 un soporte experimental de escritura fue incorporado a FreeBSD-7.0-CURRENT.
4.4.2 Herramientas para el acceso a formatos de disco Durante la operación de formato de bajo nivel se establecen las pistas y los sectores de cada plato. La estructura es la siguiente: Pistas, varios miles de círculos concéntricos por cada plato del disco duro que pueden organizarse verticalmente en cilindros. Sector, varios cientos por pista. El tamaño individual suele ser de 512 bytes. Preámbulo, que contiene bits que indican el principio del sector y a continuación el número de cilindro y sector. Datos. ECC, que contiene información de recuperación para errores de lectura.Este campo es variable y dependerá del fabricante.
10
Partición de disco Una partición de disco, en informática, es el nombre genérico que recibe cada división presente en una sola unidad física de almacenamiento de datos. Toda partición tiene su propio sistema de archivos. A toda partición se le da formato mediante un sistema de archivos como FAT, NTFS, FAT32, ReiserFS, Reiser4 u otro. En Windows, las particiones reconocidas son identificadas con una letra seguida por un signo de doble punto (p.ej. C:\) hasta cuatro particiones primarias; prácticamente todo tipo de discos magnéticos y memorias flash (como pendrives) pueden particionarse. Sin embargo, para tener la posibilidad de más particiones en un solo disco, se utilizan las particiones extendidas, las cuales pueden contener un número ilimitado de particiones lógicas en su interior. Para este último tipo de particiones, no es recomendado su uso para instalar ciertos sistemas operativos, sino que son más útiles para guardar documentos o ejecutables no indispensables para el sistema. Los discos ópticos (DVD, CD) utilizan otro tipo de particiones llamada UDF (Universal Disc Format) Formato de Disco Universal por sus siglas en inglés. El cual permite agregar archivos y carpetas y es por ello que es usado por la mayoría de software de escritura por paquetes, conocidos como programas de grabación de unidades ópticas. Este sistema de archivos es obligatorio en las unidades de (DVD) pero también se admiten en algunos (CD).
4.5 Emulación del sistema operativo 4.5.1 Ejecución de binarios de otros sistemas operativos Linux soporta la carga de aplicaciones binarias de usuario desde disco. Más interesantemente, los binarios pueden ser almacenados en formatos diferentes y la respuesta del sistema operativo a los programas a través de las llamadas al sistema pueden desviarla de la norma (la norma es el comportamiento de Linux) tal como es requerido, en orden a emular los formatos encontrados en otros tipos de UNIX (COFF, etc.) y también emular el comportamiento de las llamadas al sistema de otros tipos (Solaris, UnixWare, etc.). Esto es para lo que son los dominios de ejecución y los formatos binarios. Cada tarea Linux tiene una personalidad almacenada en su ##task_struct## (##p>personality##). Las personalidades actualmente existentes (en el núcleo oficial o en el parche añadido) incluyen soporte para FreeBSD, Solaris, UnixWare, OpenServer y algunos otros sistemas operativos populares. El valor de ##current>personality## es dividido en dos partes: ~1) tres bytes altos - emulación de fallos: ##STICKY_TIMEOUTS##, ##WHOLE_SECONDS##, etc. ~1) byte bajo personalidad propia, un número único. Cambiando la personalidad, podemos cambiar la forma en la que el sistema
11
operativo trata ciertas llamadas al sistema, por ejemplo añadiendo una ##STICKY_TIMEOUT## a ##current->personality## hacemos que la llamada al sistema select (2) preserve el valor del último argumento (timeout) en vez de almacenar el tiempo no dormido. Algunos programas defectuosos confían en sistemas operativos defectuosos (no Linux) y por lo tanto suministra una forma para emular fallos en casos donde el código fuente no está disponible y por lo tanto los fallos no pueden ser arreglados.
4.5.2 Herramientas para la ejecución de binarios Los productos de software siguientes son capaces de virtualizar el hardware de modo que varios sistemas operativos puedan compartirlo. Adeos es una Capa de Abstracción de Hardware que puede ser cargado como un módulo del núcleo Linux. Esto permite la carga de un núcleo en tiempo real como módulo, al mismo tiempo que se ejecuta Linux, pero con una prioridad más alta. Denali utiliza la para virtualización para proporcionar máquinas virtuales de alto rendimiento sobre procesadores x86. OKL4 utiliza el software libre L4 (micronúcleo) como un hypervisor para proporcionar una solución de virtualización de alto rendimiento para sistemas embebidos. OpenVZ para Linux Parallels QEMU puede emular una variedad de arquitecturas de CPU sobre muchas plataformas distintas. Virtual Iron Virtuozzo VMware Xen KVM
4.6 Virtualización 4.6.1 Emulación de hardware La emulación de hardware es el uso de un dispositivo de hardware para imitar la función de otro dispositivo de hardware. Un emulador de hardware está diseñado para simular el funcionamiento de una plataforma de hardware totalmente diferente a la que se ejecuta. La emulación de hardware se utiliza generalmente para depurar y verificar un sistema en fase de diseño.
12
En informática, un emulador es un software que permite ejecutar programas o videojuegos en una plataforma (sea una arquitectura de hardware o un sistema operativo) diferente de aquella para la cual fueron escritos originalmente. A diferencia de un simulador, que sólo trata de reproducir el comportamiento del programa, un emulador trata de modelar de forma precisa el dispositivo de manera que este funcione como si estuviese siendo usado en el aparato original. Un administrador debe utilizar la emulación de hardware si necesita ejecutar un sistema operativo (OS) no soportado en una máquina virtual (VM). En tal escenario, la máquina virtual no tiene acceso directo al hardware del servidor. En cambio, una capa de emulación dirige el tráfico entre el hardware físico y el virtual. Esto es menos eficiente que la para virtualización, que permite una interfaz a la máquina virtual que puede diferir ligeramente de la del hardware subyacente. El Hyper-V de Microsoft incluye emulación de hardware porque los servicios de integración solo pueden ser instalados en algunos sistemas operativos invitados. La emulación de hardware permite que el administrador de la red para ejecute e interactúe con un sistema operativo incrustado desde un escritorio que normalmente no podría soportar ese sistema operativo (un sistema operativo integrado es un tipo de sistema operativo creado para funcionar en entornos de hardware dedicado o en sistemas que no están destinados para uso interactivo).
4.6.2 Herramientas para la emulación de hardware Una de las últimas herramientas de emulación de sistemas operativos que han aparecido es VirtualBox. Este tipo de herramientas permiten crear un PC virtual dentro de un PC real para poder instalar en él uno o varios sistemas operativos que serán totalmente independientes del sistema operativo real, y así poder trabajar con ellos. VirtualBox es desarrollado por la empresa InnoTek. Hay dos versiones: una personal (VirtualBox Open Source Edition) que es totalmente open source y otra para empresas (VirtualBox) que por el momento es gratuita pero no permite el acceso al código y necesita una licencia especial. La versión con licencia tiene una serie de características exclusivas: •
Soporte para USB
•
Soporte para escritorio remoto (Remote Desktop Protocol, RDP).
•
USB sobre RDP.
•
Carpetas compartidas.
13
El sistema operativo anfitrión de VirtualBox puede ser tanto Windows 32-bit como Linux 32-bit aunque para poder ejecutar VirtualBox en Linux es necesario instalar una serie de librerías adicionales, en concreto, libxalan-c, libxerces-c y la versión 5 de libstdc++. La versión de VirtualBox para MAC está en desarrollo en fase prealfa así que de momento los "maqueros" tendrán que esperar un tiempo para disfrutar de este emulador de PC. En concreto, los sistemas operativos anfitriones Windows o Linux pueden ser: •
Windows 2000, service pack 3 y superiores.
•
Windows XP, todos los service packs.
•
Windows Server 2003.
•
Debian GNU/Linux 3.1 (sarge) y etch.
•
Fedora Core 4 y 5.
•
Gentoo Linux.
•
Redhad Enterprise Linux 3 y 4.
•
SUSE Linux 9 y 10.
•
Ubunto 5.10 (Breezy Badger), 6.06 (Dapper Drake), 6.10 (Edgy Eft)
Los sistemas operativos que se pueden emular con VirtualBox son Windows (3.x, 95, 98, ME, NT 4.0, 2000, XP, Server 2003, Vista), Linux (2.2, 2.4 y 2.6), OS/2, NetBSD, FreeBSD, OpenBSD, Netware, Solaris y L4. Debe quedar claro que se tiene que disponer de licencia, en caso de ser necesario, y de los CDs de instalación para los sistemas operativos que se quieren emular con VirtualBox o con cualquier otra herramienta de virtualización.
14
4.6.3 Creación de una máquina virtual Para instalar una máquina virtual "Windows 7 Enterprise" a partir de la imagen ISO de dicho sistema operativo descargada anteriormente, lo primero que hemos de hacer es cargar "VirtualBox" haciendo doble clic sobre el icono correspondiente a dicha aplicación situada en el Escritorio de nuestro equipo.
Como resultado de la acción anterior accederemos a la ventana principal de la aplicación "VirtualBox", en la cual pulsaremos directamente sobre el botón "Nueva" para proceder a la creación de una nueva máquina virtual Windows 7 Enterprise, tal y como es nuestro deseo.
En ese instante pasará a ser ejecutado el asistente de creación de nueva máquina virtual, en cuya primera ventana se da la bienvenida al asistente de creación de una nueva máquina virtual, y en la que pulsaremos directamente sobre el botón "Next".
15
En la siguiente ventana, podremos seleccionar el sistema operativo que va a ser instalado en nuestra máquina virtual, dándonos a elegir en los desplegables correspondientes entre una extensa lista de sistemas operativos; en nuestro caso seleccionaremos "Microsoft Windows" en el desplegable "Sistema Operativo", y posteriormente en el desplegable "Versión", el sistema operativo "Windows 7", además de indicar en la caja de texto "Nombre" el nombre con el que deseamos reconocer a la máquina virtual que estamos creando, "Alumno" en nuestro caso, tal y como vemos en la imagen inferior, tras lo cual pulsaremos sobre el botón "Next".
16
A continuación deberemos especificar la cantidad de memoria RAM de la que va a disponer nuestra máquina virtual "Alumno", dejando en nuestro caso los 512 MB ofertados por defecto por el asistente, tal y como vemos en la ventana de la imagen inferior.
Si nuestro equipo anfitrión dispusiera de una cantidad elevada de memoria RAM, por ejemplo 4 GB., podríamos plantearnos asociar 1 GB. de memoria RAM a la máquina virtual "Alumno". A continuación deberemos definir las características del disco duro de nuestra máquina virtual, debiendo en nuestro caso dejar activada la casilla "DIsco duro de arranque" y el radio botón "Crear disco virtual nuevo", y pulsando directamente sobre el botón "Next" en la ventana de la imagen inferior para proceder a crear un nuevo disco duro virtual para nuestra máquina virtual "Alumno".
17
Como resultado de la acción anterior pasará a ser ejecutado el asistente de creación de nuevo disco duro virtual, en cuya primera ventana pulsaremos directamente sobre el botón "Next".
18
A continuación deberemos indicar si el nuevo disco duro virtual va a crecer de modo dinámico o bien se deberá reservar un espacio fijo para el nuevo disco duro virtual, eligiendo en nuestro caso la primera opción, al seleccionar el radio botón "Almacenamiento de expansión dinámica", tal y como vemos en la ventana de la imagen inferior, y pulsando tras ello sobre el botón "Next".
En la siguiente ventana mostrada por el asistente, dejaremos en la caja de texto "Tamaño" el tamaño de 20 GB para el nuevo disco duro virtual, pudiendo además variar la ubicación donde será almacenado dicho disco duro en la caja de texto "Localización", si bien en nuestro caso NO modificaremos dicha ruta, de modo que pulsaremos directamente en la ventana de la imagen inferior sobre el botón "Next".
19
Una vez que los parámetros correspondientes al nuevo disco duro virtual han sido definidos a través de las ventanas anteriores, se nos presentará la siguiente ventana, en la que se nos indicarán las opciones que hayamos seleccionado con anterioridad, y en la que pulsaremos directamente sobre el botón "Terminar" para concluir con el proceso de creación del nuevo disco duro virtual.
20
Una vez creado el nuevo disco duro virtual, regresaremos a la ventana del asistente de creación de la máquina virtual "Alumno", en la cual se nos mostrará un resumen de las diversas opciones que hayamos seleccionado con anterioridad para definir el hardware de nuestra máquina virtual, y en la que pulsaremos directamente sobre el botón "Terminar".
Si hemos seguido los pasos tal cual hemos ido especificando a lo largo de este apartado, una vez completado el asistente de instalación, dispondremos de una nueva máquina virtual de nombre "Alumno" en VirtualBox, tal y como vemos en la siguiente ventana.
21
Los pasos anteriores únicamente nos han permitido definir las características hardware que tendrá la máquina virtual en la que posteriormente vamos a llevar a cabo la instalación del sistema operativo "Windows 7 Enterprise".
22