Вы находитесь на странице: 1из 11

REPBLICA BOLIVARIANA DE VENEZUELA

UNIVERSIDAD NACIONAL EXPERIMENTAL


SIMON RODRGUEZ
NUCLEO ARAURE

PROFESORA

Gustavo Nieto

INTEGRANTES
Jesus Moreno

C.I.: 18.117.733

Esteban Lucena

C.I.: 8.892.905

Carrera: Administracin
Curso IV. Seccin B

Sabaneta, Octubre 2.014

Introduccin
Una plataforma es un sistema que sirve como base para hacer funcionar
determinados mdulos de hardware o de software con los que es compatible.
Dicho sistema est definido por un estndar alrededor del cual se determina
una arquitectura de hardware y una plataforma de software (incluyendo
entornos de aplicaciones). Al definir plataformas se establecen los tipos de
arquitectura, sistema operativo, lenguaje de programacin o interfaz de usuario
compatibles.

Tiene importancia debido a La gran facilidad de acceso a una plataforma sin


necesidad de tener estudios en programacin, La facilidad de interaccin del
usuario es notable al poder usar mtodos interactivos,

El gran grado de

comunicacin que se utiliza en cada plataforma, no es solo una pgina de


informacin sino de comunicacin.

Archivos Software y Plataformas de Sistemas

En informtica, multi-plataforma, es un atributo conferido a programas


informticos o mtodos y conceptos de cmputo que son implementados e
interoperan en mltiples plataformas informticas. El software multiplataforma
puede dividirse en dos tipos; uno requiere una compilacin individual para cada
plataforma que le da soporte, y el otro se puede ejecutar directamente en
cualquier plataforma sin preparacin especial, por ejemplo, el software escrito
en un lenguaje interpretado o bytecode pre-compilado portable para los cuales
los intrpretes o paquetes en tiempo de ejecucin son componentes comunes o
estndar de todas las plataformas. Por ejemplo, una aplicacin multiplataforma
puede ejecutarse en Microsoft Windows en la arquitectura x86, Linux en la
arquitectura x86 y Mac OS X ya sea en el PowerPC o sistemas Apple
Macintosh basados en x86. Una aplicacin multiplataforma se puede ejecutar
tanto en todas las plataformas existentes, como en tan solo dos plataformas.

Plataformas

Una plataforma es una combinacin de hardware y software utilizado para


ejecutar aplicaciones de software. Una plataforma puede ser descrita
simplemente como un sistema operativo o arquitectura de ordenador, o podra
ser la combinacin de ambos (un ejemplo de una plataforma comn es
Microsoft Windows que se ejecuta en la arquitectura x86). Otras conocidas
plataformas de computadoras de escritorio incluyen Linux/Unix y Mac OS X
(ambos de los cuales son a su vez multiplataforma). Hay, sin embargo, muchos
dispositivos, como los telfonos mviles que tambin son efectivamente
plataformas informticas, pero menos comnmente pensado de esa manera.
Una aplicacin se puede escribir en dependencia de las caractersticas de una
determinada Plataforma, ya sea el hardware, sistema operativo, o mquina
virtual en que se ejecuta. La plataforma Java es una mquina virtual de la
plataforma que se ejecuta en sistemas operativos y tipos de hardware, y es una
plataforma de software comn para escribir (programar).

Plataformas de Hardware
Una plataforma de hardware puede referirse a la arquitectura del ordenador
o la arquitectura del procesador. Por ejemplo, los CPUs x86 y x86-64
constituyen una de las ms comunes las arquitecturas de computadoras en uso
en los ordenadores de propsito general. Estas mquinas suelen ejecutar una
versin de Microsoft Windows, aunque tambin se puede ejecutar otros
sistemas operativos, tales como Linux, OpenBSD, NetBSD, Mac OS X y
FreeBSD.
Una arquitectura ARM es comn en los telfonos inteligentes y Tablet PC,
que corren Android, iOS y otros sistemas operativos mviles.
Las plataformas de software
Las plataformas de software puede ser un sistema operativo o entorno de
programacin, aunque ms comnmente se trata de una combinacin de
ambos. Una notable excepcin a esto es Java, que utiliza un sistema operativo
independiente de la mquina virtual para cada cdigo compilado, conocido en
el mundo de Java como bytecode. Ejemplos de plataformas de software
incluyen:

Android (sistema operativo) para telfonos inteligentes y Tablet PC

AmigaOS (m68k),

AmigaOS

(PowerPC),

AROS

(x86,

PowerPC,

m68k), MorphOS (PowerPC)

BSD, muy multiplataforma (ver NetBSD, por ejemplo)

Java

Linux (x86, x86-64, PowerPC, y otras arquitecturas)

iOS (ARM)

Mac OS X (x86, x86-64)

Microsoft Windows (x86, x86-64, ARM)

DOS sistemas de tipo en el x86: MS-DOS, IBM PC-DOS, DR-DOS,


FreeDOS, etc.

OS/2, eComStation

Solaris (SPARC, x86, x86-64)

La CLI, tambin conocido por los nombres de aplicacin .NET Framework


(de Microsoft) y Mono (de Novell)
Java plataforma
Como ya se ha sealado, la plataforma Java es una excepcin a la regla

general de que un sistema operativo es una plataforma de software. El lenguaje


Java requiere de una mquina virtual, o un "CPU virtual" en el que se ejecuta
todo el cdigo que se escribe en el lenguaje. Esto permite que el mismo
ejecutable binario pueda ejecutarse en todos los sistemas, apoyado por el
software Java, a travs del uso de una mquina virtual Java (JVM). Ejecutables
de Java no se ejecutan de forma nativa en el sistema operativo, es decir, ni de
Windows, ni Linux ejecutan programas Java directamente.
Aunque el cdigo Java no se ejecuta de forma nativa, la JVM es plenamente
capaz de proporcionar servicios relacionados con el sistema operativo, como el
disco I/O y el acceso a la red, si los privilegios adecuados se conceden. La
JVM permite a los usuarios decidir el nivel de proteccin adecuado, segn una
ACL. Por ejemplo, el acceso a disco y de red est habilitado normalmente para
aplicaciones de escritorio, pero no para applets basados en el navegador.
JNI tambin se puede utilizar para permitir el acceso a funciones especficas de
los sistemas operativos. En la actualidad, los programas Java pueden
ejecutarse

en

Microsoft

Windows,

Mac

OS

X,

Linux

sistemas

operativos Solaris. Para aplicaciones mviles, los plugins de los navegadores


se utilizan en dispositivos basados en Windows y Mac, Android tiene soporte
incorporado para Java.
Software multiplataforma
Para que el software pueda ser considerado multiplataforma, debe ser capaz
de funcionar en ms de una arquitectura de ordenador o sistema operativo.
Esto puede ser una tarea que consume tiempo, ya que los diferentes sistemas
operativos tienen diferentes interfaces de programacin de aplicaciones o API
(por ejemplo, Linux utiliza una API diferente de Windows).

El hecho de que un determinado sistema operativo se pueda ejecutar en


diferentes arquitecturas de computadora no quiere decir que el software escrito
para ese

sistema operativo

automticamente funcione en todas las

arquitecturas que soporta el sistema operativo. Por ejemplo, a partir de agosto


de 2006 OpenOffice.org no se ejecutaba de forma nativa en los AMD64 o Intel
64 lneas de procesadores los estndares para computadores de x86-64 64 bit.
Sin embargo, desde entonces la situacin ha cambiado, y la suite
OpenOffice.org de software ha sido portada a los sistemas de 64-bit. Esto
tambin significa que slo porque un programa se escriba en un popular
lenguaje de programacin como C o C++, no tiene por qu funcionar en todos
los sistemas operativos que soporten la programacin de dicho lenguaje o
incluso en el mismo sistema operativo en una arquitectura diferente.
Las aplicaciones Web
Las aplicaciones Web suelen ser descritas como multiplataforma, ya que,
idealmente, se puede acceder desde cualquiera de los diversos navegadores
web en diferentes sistemas operativos. Tales aplicaciones generalmente
emplean una arquitectura de sistema cliente-servidor, y pueden variar
ampliamente en complejidad y funcionalidad. Esta amplia variabilidad complica
considerablemente

la

meta

de

capacidad

multi-plataforma,

que

es

rutinariamente en contradiccin con el objetivo de funcionalidad avanzada.


Aplicaciones bsicas
Aplicaciones web bsicas lleva cabo la totalidad o la mayor parte del
procesamiento de un servidor web "Stateless", y pasar el resultado al
navegador web del cliente. Toda la interaccin del usuario con la aplicacin
consta de simples intercambios de solicitudes de datos y las respuestas del
servidor. Este tipo de aplicaciones son la norma en las fases iniciales de la
World Wide Web de desarrollo de aplicaciones. Tales aplicaciones siguen un
simple transaccin modelo, idntica a la de servir pginas web estticas. Hoy
en da, siguen siendo relativamente comn, especialmente cuando la
compatibilidad entre plataformas y la simplicidad se considera ms importante
que las funcionalidades avanzadas.

Las aplicaciones avanzadas


Ejemplos destacados de las aplicaciones web avanzadas incluyen la interfaz
web a Gmail, A9.com, y la pgina web maps.live.com, parte del Live Search
servicio de Microsoft. Tales aplicaciones avanzadas habitualmente dependen
de las funciones adicionales que se encuentran slo en las versiones ms
recientes de los navegadores web ms populares. Estas dependencias
incluyen Ajax, JavaScript, HTML "Dinmico", SVG, y otros componentes de las
aplicaciones ricas de Internet. Las versiones antiguas de los navegadores web
ms populares tienden a carecer de apoyo a ciertas caractersticas.
Las estrategias de diseo
A causa de los intereses en conflicto de compatibilidad entre plataformas y
funcionalidades avanzadas, han surgido numerosas alternativas de diseo de
aplicaciones web.
Tales estrategias incluyen:
Degradacin correcta
Degradacin correcta intenta proporcionar la misma funcionalidad o similar
para todos los usuarios y plataformas, mientras que la disminucin de la
funcionalidad de un "mnimo comn denominator" para obtener ms
exploradores cliente limitados. Por ejemplo, un usuario que intenta usar una
caracterstica limitada de un navegador para acceder a Gmail puede notar que
Gmail cambia al "modo bsico", con funcionalidad reducida. Algunos ven esta
estrategia como una forma menor de la capacidad multiplataforma.
Separacin de funciones
La separacin de los funcionalidades para simplificar la omicin de los
subconjuntos de funciones que no soportan los exploradores de los clientes
dentro de ciertos sistemas operativos, sin dejar de ofrecer una "completa"
aplicacin para el usuario.

Cdigo base mltiple


Mltiples aplicaciones codebase presentar diferentes versiones de una
aplicacin en funcin del cliente especfico en uso. Esta estrategia es sin duda
la forma ms complicada y costosa de cumplir la capacidad multiplataforma, ya
que incluso las diferentes versiones del navegador del cliente mismo (dentro
del mismo sistema operativo) puede diferir considerablemente entre s. Esto se
complica an ms por el apoyo a "plugins" que puede o no estar presente para
cualquier instalacin dada de un navegador web particular.
Bibliotecas de terceros
Bibliotecas de terceros intentan simplificar la capacidad multiplataforma de
"esconder" las complejidades de las diferencias de los clientes detrs de un
API unificada.
Las estrategias de prueba
Un aspecto complicado del diseo de las aplicaciones web multiplataforma
es la necesidad de pruebas de software. Adems de las complicaciones
mencionadas anteriormente, existe la restriccin adicional de que algunos
navegadores web prohben la instalacin de diferentes versiones del mismo
navegador en el mismo sistema operativo. Tcnicas tales como la virtualizacin
completa se utilizan a veces como una solucin para este problema.
Las aplicaciones tradicionales
Aunque las aplicaciones web se estn convirtiendo cada vez ms popular,
muchos usuarios todava utilizan la apliacin de software tradicional que no se
basa en una arquitectura cliente/servidor web. La distincin entre las
"tradicionales" y las aplicaciones "web" no es siempre inequvoca, sin embargo,
ya que las aplicaciones tienen muchas caractersticas diferentes, los mtodos
de instalacin y arquitecturas, y algunas de ellas pueden superponerse y ocurrir
de maneras que difuminan la distincin. Sin embargo, esta distincin
simplificada es una generalizacin comn y til.

Software binario
Tradicionalmente en la informtica moderna, la aplicacin de software se ha
distribuido a los usuarios finales como imgenes binarias, que se almacenan en
archivos ejecutables, un tipo especfico de archivo binario. Estos ejecutables
slo admiten el sistema operativo y arquitectura de computadores que fueron
construidas, lo que significa que haciendo un "ejecutable multi-plataforma"
sera algo as como una enorme tarea, y por lo general no se hace.
Para el software que se distribuye como un archivo ejecutable binario, como el
software escrito en C o C++, el programador debe crear el software para cada
sistema operativo diferente y arquitectura de computadoras. Por ejemplo,
Mozilla Firefox, un navegador web de cdigo abierto, est disponible en
Microsoft Windows, Mac OS X (tanto PowerPC y x86 a travs de algo que
Apple llama un binario universal), y Linux en arquitecturas de varios equipos.
Las tres plataformas (en este caso, de Windows, Mac OS X y Linux) son
distribuciones ejecutables independientes, si bien proceden del mismo cdigo
fuente.
En el contexto del software binario, los programas multiplataforma estn
escritos en el cdigo fuente y luego, "traducido" a cada sistema que se ejecuta
a travs de la compilacin en plataformas diferentes. Adems, el software
puede ser portado a una arquitectura de computadora nueva o sistema
operativo para que el programa se hace ms multiplataforma de lo que ya es.
Por ejemplo, un programa como Firefox, que ya se ejecuta en Windows en la
familia x86, se puede modificar y re-programar para ejecutarse en Linux en x86
(y potencialmente otras arquitecturas) tambin.
Como alternativa a la portabilidad, la virtualizacin de multiplaforma permite
que las aplicaciones compiladas para una CPU y el sistema operativo se
ejecute en un sistema con una CPU y/o sistema operativo, sin modificar el
cdigo fuente o binarios. Por ejemplo, Apple Rosetta software, que est
integrado en Intel basados en ordenadores Apple Macintosh, ejecuta las
aplicaciones compiladas para la anterior generacin de Mac que utilizan
PowerPC CPU. Otro ejemplo es IBM PowerVM Lx86, que permite Linux/x86

aplicaciones para ejecutarse sin modificaciones en el Linux/Sistema operativo


de encendido.
Scripts y lenguajes interpretados
Un script puede ser considerado como multiplataforma si su intrprete est
disponible en mltiples plataformas y la secuencia de comandos slo utiliza los
servicios proporcionados por el lenguaje. Es decir, un script escrito en Python
para un sistema como Unix probablemente se ejecutar con poca o ninguna
modificacin en el de Windows, ya que tambin se ejecuta en Python de
Windows, tambin hay ms de una implementacin de Python que se ejecutan
los mismos scripts (por ejemplo, IronPython para .NET). Lo mismo ocurre con
muchos de los lenguajes de programacin de cdigo abierto que estn
disponibles y son lenguajes de scripting.
A diferencia de los binarios ejecutables, el script puede utilizar el mismo en
todos los equipos que tienen el software para interpretar la secuencia de
comandos. Esto se debe a que las secuencias de comandos se almacenan
generalmente en un texto sin formato en un archivo de texto. Puede haber
algunos problemas, sin embargo, como el tipo de carcter de lnea nueva que
se encuentra entre las lneas. Generalmente, sin embargo, el trabajo poco o
nada tiene que hacer para que un script escrito para un sistema, ejecute en
otro.
Algunos muy populares entre plataformas scripting o lenguajes interpretados
son:

Bash - Un shell de Unix en el que comnmente se ejecutan en Linux y otros


modernos sistemas Unix, as como en Windows a travs de Cygwin POSIX
(capa de compatibilidad).

Perl - Un lenguaje de scripting creado en 1987. Se utiliza para


programacin CGI WWW, pequeos sistemas de administracin de tareas y
ms.

PHP - El lenguaje de scripting ms popular en uso de las aplicaciones web.

Python - Un moderno lenguaje de programacin donde la atencin se


centra en el desarrollo rpido de aplicaciones y la facilidad de la escritura,
en lugar se obtiene un programa eficiente en tiempo de ejecucin.

Conclusin

Вам также может понравиться