Saludos de nuevo:
Gracias ezmac por tus explicaciones.
Lo que me comentas de que las funciones que implementan las APIs de los sistemas operativos son diferentes me aporta un pasito mas en la comprensión del problema. Es de lógica pero no lo había pensado.
Sin embargo, si un programa está hecho para trabajar contra las APIs de Windows y copio los archivo de esa API en un MAC, al ejecutar este programa solo llamará a las API,s de Windows y por tanto no debería dar problemas salvo ...
No se si te he entendido bien. Yo no tengo experiencia en este mundo. ¿Entonces, el código asociado a determinadas funciones del API has de implementarlas tu mismo al desarrollar tu programa?. Esto me deja un tanto perplejo. Pensaba que solo debías invocarlas dándoles los parámetros oportunos.
Debe haber algo más. Sino como bien decís sería todo muy sencillo.
Gracias Cholbi por tu aportación. Yo creo que las dlls de la API independientemente del lenguaje en que fueron escritas debieron ser compiladas para un conjunto de instrucciones determinado, x86 o similar en el caso de Windows y MAC. Por ello se deberían ejecutar sin problemas.
Un saludo
(06-09-2010, 14:16)gabrach link escribió: [ -> ]Saludos de nuevo:
Gracias ezmac por tus explicaciones.
Lo que me comentas de que las funciones que implementan las APIs de los sistemas operativos son diferentes me aporta un pasito mas en la comprensión del problema. Es de lógica pero no lo había pensado.
Sin embargo, si un programa está hecho para trabajar contra las APIs de Windows y copio los archivo de esa API en un MAC, al ejecutar este programa solo llamará a las API,s de Windows y por tanto no debería dar problemas salvo ...
No se si te he entendido bien. Yo no tengo experiencia en este mundo. ¿Entonces, el código asociado a determinadas funciones del API has de implementarlas tu mismo al desarrollar tu programa?. Esto me deja un tanto perplejo. Pensaba que solo debías invocarlas dándoles los parámetros oportunos.
Debe haber algo más. Sino como bien decís sería todo muy sencillo.
Gracias Cholbi por tu aportación. Yo creo que las dlls de la API independientemente del lenguaje en que fueron escritas debieron ser compiladas para un conjunto de instrucciones determinado, x86 o similar en el caso de Windows y MAC. Por ello se deberían ejecutar sin problemas.
Un saludo
buff, han habido cosas por el estilo,: librerías que permitían usar el mismo código para ambas plataformas, como muestra un botón: Flash de Adobe... el resultado código muy malo por que parte de lo escrito para una plataforma...
como ya te he dicho las api son muy distintas, y el escribir unas api comunes es igual de complicado: las 2 o 3 empresas que hacían esto han cerrado puertas !!!
No sé donde pretendes llegar.
Como muy bien ya te explican aquí
http://www.puromac.com/forosmac/viewtopi...=8&t=10945
es lo que hay.
Las API para windows no las entiende mac y viceversa, por mucho que te empeñes. No es problema de procesador, sino de lenguaje, para lo que se necesita un "traductor", como wine que funciona como y cuando funciona y no para todos los programas.
Puedes preguntar en 20 foros más; pero la respuesta será la misma, salvo que en uno/s te engañen o quieran tomar el pelo.
(06-09-2010, 15:58)Cholbi link escribió: [ -> ]No sé donde pretendes llegar.
Como muy bien ya te explican aquí http://www.puromac.com/forosmac/viewtopi...=8&t=10945
es lo que hay.
Las API para windows no las entiende mac y viceversa, por mucho que te empeñes. No es problema de procesador, sino de lenguaje, para lo que se necesita un "traductor", como wine que funciona como y cuando funciona y no para todos los programas.
Puedes preguntar en 20 foros más; pero la respuesta será la misma, salvo que en uno/s te engañen o quieran tomar el pelo.
y un montón de cosas más... pero bueno, como ya he dicho la lista es interminable !!!
Buenos días de nuevo
Gracias ezmac y cholbi por vuestra ayuda. Pero realmente creo que nos falta algo. Efectivamente, entiendo de los problemas para ejecutar aplicaciones windows de terceros en MAC y viceversa.
He estado ojeando un libro de Sistemas Operativos de Jesús Carretero. En el se dice que existen una serie de servicios ofrecidos por los s.o. tales como servicios de gestión de memoria, gestión de procesos, e/s, archivos y directorios, seguridad, etc y que estos son ofrecidos a través de una interfaz de llamadas al sistema.
¿Es correcto decir que un programa puede llamar a una función de una API que precise acudir a un servicio del sistema operativo?.
Si es así, ¿pudiera darse el caso de que aunque tuvieramos las dlls del sistema operativo una aplicación no funcionase porque no puede acceder a un servicio que solo existe en el otro sistema operativo (windows o mac)?
Una vez mas muchas gracias
(07-09-2010, 12:28)gabrach link escribió: [ -> ]Buenos días de nuevo
Gracias ezmac y cholbi por vuestra ayuda. Pero realmente creo que nos falta algo. Efectivamente, entiendo de los problemas para ejecutar aplicaciones windows de terceros en MAC y viceversa.
He estado ojeando un libro de Sistemas Operativos de Jesús Carretero. En el se dice que existen una serie de servicios ofrecidos por los s.o. tales como servicios de gestión de memoria, gestión de procesos, e/s, archivos y directorios, seguridad, etc y que estos son ofrecidos a través de una interfaz de llamadas al sistema.
¿Es correcto decir que un programa puede llamar a una función de una API que precise acudir a un servicio del sistema operativo?.
Si es así, ¿pudiera darse el caso de que aunque tuvieramos las dlls del sistema operativo una aplicación no funcionase porque no puede acceder a un servicio que solo existe en el otro sistema operativo (windows o mac)?
Una vez mas muchas gracias
te repito lo del JAVA... es más o menos lo que pides! pero para eso cada sistema propietario tiene que haber creado una máquina virtual que soporte el JAVA !!!
en un tiempo se propuso un netbook con la máquina virtual de JAVA como SO (los 90).
Buenos días:
Nuevamente, mis agradecimientos por vuestras respuestas.
Tuti, me ha aclarado muchísimo tu respuesta. Ahora comprendo que tras la API de cada S.O. debe haber un motor capaz de hacer que se ejecuten las órdenes. Evidentemente entonces, no es suficiente con tener las dlls. Hace falta que todo el sistema operativo esté corriendo.
Supongo que Wine y el Crossover levantan las tripas de cada s.o. (por ejemplo windows) dentro del s.o. que realmente tiene instalada la máquina (por ejemplo mac), pero claro, este apaño nunca será perfecto, ¿no?.
Saludos cordiales