Unix y Windows

¿Si diseño un programa en unix es posible correrlo efectivamente en windows?

1 respuesta

Respuesta
1
Ante que nada, te recomiendo leer el mail hasta el final aun peinses que no estoy respondiendo lo que esperabas...
Haber, varias cosas, primeo, por "efectivo" no entendí si te referías a "efectivamente" o que si el programa que corre en unix va a ser efectivo en Windows... de todas formas, veamos:
Primero, el diseño de un programa es un análisis de la estructura de lo que va a ser tu software, lo puedes sparar en varias etpaas o temas como podría ser un diseño de la estructura física (donde van a ir los archivos, en que directorios etc..) un diseño de estructuras de soport de tu programa, tipos de datos etc... y un diseño de algoritmos. Ademas, pueden existir u diseño gráfico si es que tu programa tiene salida gráfica o si no, simplemente un diseño de tu interfaz (entrada y salida de datos del programa o de módulos del programa si los hay e inclusive de funciones )
La coas es esta: SI y NO
SI, un programa hecho en unix lo vas a poder correr en windows con las siguientes salvedaes IMPORTANTES:
1 Windows y unix son plataformas muy distintas y ambas, deberán tener instalado un compilador, supongamos que trabajas en C, para que puedas compilar los códigos fuente en unix y windows y obtener el ejecutable. OJO, no puede simplemente compilar tu programa en una plataforma y esperar que te funcione en la otra. NO! Debes compilarlo en cada una por separado..
2- Existen varias diferencia importante entre plataforma, si tu interfaz es gráfica, tienes muchas cosas que aprender de como windows maneja la interfaz y no se parece en casi nada a como programas de unix la manejan
O sea, debes hace un módulo distinto para unix o para windows
3- Existen muchas funciones que no son "portables", por si no sabias es el termino que se utiliza para decir que una función es posible utilizarla en otra plataforma y esperar el mismo resultado, por eje, plo, tienes que tener cuidado en como se abren archivos, el tipo de paths es distinto (su forma de escribirse) etc... cosas que tienes que ir revisando en la documentación de las funciones y en la documentación de los compiladores si es que tiene información de las funciones, (por ejemplo en bolran C) o en "man función" en linux (compilador gcc)
La alternativas son : desarrolas el software por separado en cada plataforma o haces un mismo software y cuidas de usar funciones portables. Así y todo siempre hay funciones o estructuras que no son del mismo tipo (supón, el formato de los entero, BIG ENDIAN o LITEL ENDIAN) u otros destalles, en generl los programas grandes y experto manejan esto incluyendo opciones en los códigos fuente que permiten incluir ciertos encabezados dependiendo de la plataforma para que al compilar, el compilador tome solo lo que le sirve, existen variables del sistema que el compilador conoce como el tipo de maquina, la arquitectura, y varias otras... debes consultar manuales y más manuales (nivel medio alto) para hacerlo bien ...
_Si eres novicios .. te recomiendo MUCHO que hagas el programa en un aplataforma e intentes "pasarlo" a la otra y al compilar te vas a empezar a dar cuenta que cosas estan mal, incluso , cuando te compile puee que algunas cosas no te funcionen como esperabas o se caiga el programa por el asunto de la portabilidad de muchas funciones
Otra cosa, por ejemplo UNIX permite trabajar con procesos, en cambio windows implementa los pocesos como threads (comparten memoria y otras cosas con windows).. la verdad no se mucho de windows, pero si necesitas más ayuda en UNIX/LINUX en programar ahí, no tengo ningún problema en ayudarte más...
Cualquier cosas...:)
Enrique
-------------------------
Ingeniero eléctrico
Desarrollo de software en plataformas Linux para ambientes de telecomunicaciones.
------------------------

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas