Menù principale
 Notizie
 Grafica
 Forum
 Links
 Retro Trailer
 Recensioni
 Modelli Amiga
 Storia Amiga
 Retro-Gamers
 Lista Utenti
 Contatti
 Policy sito
Ricerca Google

Login

Nick


Password


24 Gennaio 2007 Postato da: Mak73
Porting su AOS4 e MOS
Prendo spunto da un'altro topic per aprire questo.

Per AmigaOS, ma anche per MOS, vedo che i porting di software di vario genere, ma di una certa 'caratura' tipo Firefox, OpenOffice, per citarne due, stentano.

Quali sono i motivi per cui certi progetti non partono?

Ci sono ostacoli/mancanze in questi OS per cui effetuare certi porting diventa una cosa complicata?

Mi chiedo questo perchè vedo che altri OS come SkyOS o BeOS, che non è che siano diffusissimi, hanno invece la loro versione di Firefox .
Commenti: 12  Aggiungi  - Leggi

Indice: forum / Richieste di Aiuto


Post inviati: 762

Visulizza profilo Messaggio Personale
83.190.212.*** IBrowse/2.4oem (AmigaOS 4.0; PPC; 68K build)
Commento 1
Tuxedo 24 Gennaio 2007    20:02:33
Ops...
non mi ero accorto che avevi aperto un'altro topic e ho postato su quello "vecchio", scusate ripeto quì la risposta...
A quanto ne so io il problema maggiore per il porting di certi programmi su amiga (vedi anche The GIMP), è la mancanza sulla nostra piattaforma delle librerie GTK+ che pare siano decisamente difficoltose da portare, tanto che alcuni stanno pensando di fare un wrapper GTK+-->MUI per le funzioni più usate senza dfover necessariamente eseguire il porting intero.
C'è da dire che la presenza di queste librerie aprirebbe la strada al porting di svariati altri programmi più o meno utili(tra i più utili segnalo gli ottimi AbiWord e Gnumeric!), che sicuramente farebbero di AmigaOS4/MOS un sitema più completo e funzionale...
A parer mio poi il fatto che su altri OS esistano già versioni di certi programmi, è da imputarsi che per quanto poco diffusi siano hanno decine(se non centinaia), di volte più utenti di OS4/MOS per cui automaticamente pure gli sviluppatori sono di più e tutto il resto di seguito...

CIAO!

Simone"Tuxedo"Monsignori, Perugia, ITALY.

Post inviati: 171

Visulizza profilo Messaggio Personale
217.133.8.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 2
Raistlin77it 24 Gennaio 2007    21:41:22
un'altro problema mica da ridere è che comunque amigaos non è posix-compliant e quindi bisogna riadattare tutto

E' questo che blocca in primis il porting ad esempio di librerie grafiche o gui varie, per non parlare poi di progetti con sorgenti che pesano qualche mega....

Ultima modifica avvenuta il 24/01/2007 alle ore 21:43:14

Il Webmaster

Post inviati: 4741

Visulizza profilo Messaggio Personale
87.0.202.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 3
Mak73 24 Gennaio 2007    23:42:28
Ecco, di questo Posix ne ho sentito parlare pure io, e esce tutta la mia ignoranza in questo campo, però da quel poco che ho capito è una cosa piuttosto seria.

Diciamo che sembra essere questo uno dei maggiori blocchi alla realizzazione delle GTK per Amiga.

Naturalmente potrei aver detto un mare di castronerie

Pace e bene a tutti.

Post inviati: 171

Visulizza profilo Messaggio Personale
217.133.8.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 4
Raistlin77it 25 Gennaio 2007    00:54:44
post doppio, quello giusto e corretto è quello qua sotto

Ultima modifica avvenuta il 25/01/2007 alle ore 00:58:01

Post inviati: 171

Visulizza profilo Messaggio Personale
217.133.8.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 5
Raistlin77it 25 Gennaio 2007    00:57:17
Citazione

Ecco, di questo Posix ne ho sentito parlare pure io, e esce tutta la mia ignoranza in questo campo, però da quel poco che ho capito è una cosa piuttosto seria.

Diciamo che sembra essere questo uno dei maggiori blocchi alla realizzazione delle GTK per Amiga.

Naturalmente potrei aver detto un mare di castronerie




No no, non hai detto una castroneria, in parole povere significa che amigaos come strutture del sistema operativo e come funzionamento è sensibilmente diverso dallo standard UNIX.
metto anche un link (che fa molto figo, ma che comunque spiega in maniera esaustiva )
http://en.wikipedia.org/wiki/POSIX

Visto che quasi tutto il meglio dell'open source viene sviluppato in ambito linux, un S.O. che non funziona/permette una compatibilità con unix è abbastanza tagliato fuori.

Rimane vivo solo windows perchè ha una base di user vastissima ( e spesso i sorgenti sono compilabili Win/linux)


Perciò riprendendo il topic :


- BeOs e MacOS (da quando hanno infilato next dentro e hanno paraculato jobbs) sono posix-compliant

- linux per definizione è UNIX

- windows è un caso a parte visto i milioni che lo usano

- SkyOS e altri sistemi si appoggiano a kernel linux/win (come reactos) e quindi il problema non si pone

- QNX è posix-comliant

rimangono fuori dalla cerchia solo AmigaOS/MorphOS/Aros e pochissimi altri (STOs etc)

A onor del vero cmq quando MacOS è diventato tuttuno con NextOS la gui è migliorata ma i problemi per gli sviluppatori di SW sono aumentati perchè c'era tutta una struttura ibrida MAC/UNIX nel sistema operativo.
E' vero anche che una volta abituati al nuovo tree del SO hanno fatto molti + porting dal mondo open source, per non parlare poi del passaggio X86 che ha permesso un'ottimizzazione automatica dei sorgenti (visto che erano sviluppati su PC )......


81.208.106.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 6
Marco_C 25 Gennaio 2007    18:47:54
anche windows e' posix compliant....giustamente microsoft ha creato una serie di interfaccie diverse oltre a win32 e quella unix non poteva mancare...

Il Webmaster

Post inviati: 4741

Visulizza profilo Messaggio Personale
87.0.209.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 7
Mak73 26 Gennaio 2007    22:12:07
Ecco ora le cose si chiariscono un po'.

In futuro anche AmigaOS e Mos potrebbero diventare più Posix compliant?

Pace e bene a tutti.

Gabriele

Post inviati: 1608

Visulizza profilo Messaggio Personale
151.56.98.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 8
Gabriele 26 Gennaio 2007    23:26:52
Citazione

Ecco ora le cose si chiariscono un po'.

In futuro anche AmigaOS e Mos potrebbero diventare più Posix compliant?


Per essere veramente posix compliant si dovrebbe rinunciare alla compatibilita' nativa con tutto il vecchio software. E qui casca l'asino: megllio far girare il vecchio software, che alcuni possono ancora vendere, oppure aprire la strada a tanti port che annullano il valore commerciale del software Amiga ancora sugli scaffali?

E' un gatto che si morde la coda...

Post inviati: 171

Visulizza profilo Messaggio Personale
217.133.8.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 9
Raistlin77it 27 Gennaio 2007    14:03:45
Citazione

Ecco ora le cose si chiariscono un po'.

In futuro anche AmigaOS e Mos potrebbero diventare più Posix compliant?



c'è la ixemul library, le nuove newlib e clib per os4 , libnix per mos, sono tutte librerie che patchano chiamate a librerie/path unix e le convertono il chiamate amigaos.
E' chiaro ancghe che comunque non si arriverà mai ad una compatibilità totale anche perchè se si vuole mantenere la retrocompatibilità come diceva gabriele non si può "piallare" tuto un sistema operativo, a questo punto allora tanto vale usare linux

Il Webmaster

Post inviati: 4741

Visulizza profilo Messaggio Personale
87.4.202.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 10
Mak73 27 Gennaio 2007    14:31:48
Ok, direi che il quadro è abbastanza chiaro.

Ma le librerie iexemul e libnix risultano quindi sempre necessarie o solo in fase di compilazione?

Tali librerie allora non non sono ancora abbastanza complete in quanto cmq i porting di fatto non si vedono, o sbaglio?

A parte cio, vista la situazione, gli sviluppatori AOS4/MOS per rendere più facili i porting da ambienti posix dovrebbero quindi potenziare le librerie citate?

In un altro topic, si diceva che anche Apple con il passaggio a MacOSX ha dovuto affrontare il problema della compatibilità con il vecchio software, essendo MecOSX basato appunto su kernel UNIX diversamente dalle versioni precedenti dell'OS.

Come ha risolto Apple il problema di retrocompatibilità?

Pace e bene a tutti.

Post inviati: 171

Visulizza profilo Messaggio Personale
217.133.8.*** Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Commento 11
Raistlin77it 27 Gennaio 2007    15:02:11
Citazione

Ma le librerie iexemul e libnix risultano quindi sempre necessarie o solo in fase di compilazione?


Alcune servono anche quando il programma gira perchè vengono compilate dinamicamente per non pesare sulla dimensione
dell' seguibile

Citazione

Tali librerie allora non non sono ancora abbastanza complete in quanto cmq i porting di fatto non si vedono, o sbaglio?


Vero. Però se guardi ad esempio Pango o le Glib o le GTK (che servono per compilare gimp ad esempio) ti accorgi che sono librerie da alcuni mega come sorgente e che si appoggiano alla struttura interna di unix. Non sono facili da "portare" su amiga o da "portare" tramite liberie "simil unix"

Citazione

A parte cio, vista la situazione, gli sviluppatori AOS4/MOS per rendere più facili i porting da ambienti posix dovrebbero quindi potenziare le librerie citate?


si

Citazione

In un altro topic, si diceva che anche Apple con il passaggio a MacOSX ha dovuto affrontare il problema della compatibilità con il vecchio software, essendo MecOSX basato appunto su kernel UNIX diversamente dalle versioni precedenti dell'OS.

Come ha risolto Apple il problema di retrocompatibilità?


Se non sbaglio (ma non ho seguito moltissimo il discorso mac) hanno creato una "sandbox" (macchina virtuale) sulla quale fare girare le vecchie applicazioni.

Un po' quello che sucede sul peg con la sandbox "ABOX" che gira come task sul kernel Quark di laire.
Lunica differenza è che su peg il kernel Quark non ha un enviroment suo ed è stato sviluppato principalmente per fare da strato di astrazione tra l'hardware del peg e il "sistema amiga " che ci gira sopra.

Guruman potrà comunque precisare meglio

Blue-troll!

Post inviati: 596

Visulizza profilo Messaggio Personale
87.0.184.*** IBrowse/2.4demo (MorphOS 1.4; PPC; AmigaOS 68K build)
Commento 12
Guruman 27 Gennaio 2007    17:48:37
Mak73 ha scritto
Ok, direi che il quadro è abbastanza chiaro.

Ma le librerie iexemul e libnix risultano quindi sempre necessarie o solo in fase di compilazione?

ixemul e' una libreria dinamica (ixemul.library) dunque si linka dinamicamente, cosi' gli eseguibili sono piu' piccoli.
Citazione
Tali librerie allora non non sono ancora abbastanza complete in quanto cmq i porting di fatto non si vedono, o sbaglio?

A parte cio, vista la situazione, gli sviluppatori AOS4/MOS per rendere più facili i porting da ambienti posix dovrebbero quindi potenziare le librerie citate?

Il problema e' leggermente piu' complesso. Di fatto ixemul aggiunge ad AmigaOS e a MorphOS la compatibilita' POSIX. O meglio, implementa oltre 1000 funzioni, tutte quelle che fanno la POSIX compliance, tranne UNA. Si tratta di fork() , che e' quella chiamata che genera un processo figlio (child) in un'applicazione multithread. Purtroppo la gran parte delle applicazioni grosse sfruttano il multithreading, e dunque non possono essere semplicemente ricompilate linkando ixemul. La funzione fork() non puo' essere aggiunta in maniera banale, per la struttura di AmigaOS/MorphOS, e dunque o si cambia profondamente tale struttura (perdendo non solo la compatibilita' col passato, ma anche quelli che potrebbero essere le caratteristiche distintive di AmigaOS...), oppure i programmi devono essere modificati pesantemente e in maniera non banale per ricompilarli. O si usano altre librerie come pthreads, in aggiunta.
Del resto che la POSIX compliance sia piuttosto alta lo si vede dal numero di port di programmi SDL o dai GeekGadgets (inclusi ad esempio nell'SDK di MorphOS).

Pero'... c'e' un pero'. Anche AmigaOS o MorphOS fossero 100% POSIX compliant, i port non arriverebbero molto piu' velocemente. Gli esempi che ho fatto sopra (SDL, GeekGadgets) esistono perche' non usano toolkit grafici particolari - SDL usa SDL appunto, e i GeekGadgets sono per lo piu' privi di GUI.
Le GUI sono realizzate con GTK, o Pango, come diceva Raistlin. Dunque bisogna portare anche questi toolkit. Ma qui non basta ricompilare. Bisogna reimplementare ad una ad una ciascuna delle centinaia di chiamate alle funzioni grafiche dell'OS che compongono un toolkit grafico. Oppure come stanno facendo quelli del wrapper GTK-MUI, rimapparle sul toolkit grafico gia' esistente (MUI, apppunto). Ma e' un gran lavoro, perche' le funzioni delle librerie grafiche non sono le stesse, hanno nomi e sintassi diverse, e cosi' pure i toolkit, di solito hanno funzioni analoghe, ma mai uguali.
Negli anni `90, quando c'erano molti programmatori validi, forse un simile lavoro sarebbe stato eseguito in tempi ragionevoli, oggi ci vogliono anni, e non e' detto che gli autori non perdano la passione nel frattempo.
Altrimenti ci si deve accontentare dei programmi senza MUI. Programmi come Blender e Pixel sono stati portati su MOS perche' il primo usa OpenGL per la GUI e il secondo SDL. Sputnik, invece e' basato su GET+Webcore, ma l'autore ha cambiato A MANO tutte le chiamate a GTK in chiamate a MUI. Cio' e' possibile perche' un browser, per quanto complicato, usa solo un sottoinsieme di tutte le chiamate a un toolkit grafico. Ma per realizzare altri port, dovrebbe rifare il lavoro. Del resto, per portare GTK impiegherebbe molto piu' tempo, e la beta di Sputnik staremmo ancora sognandola.

E oltre al toolkit grafico ci sono altre dipendenze (in genere minori e piu' facilmente risolvibili) da tenere in considerazione. Una volta sistemato GTK si dovrebbe pensare anche a quelle prima di avere Firefox e OpenOffice.
Ma dubito che vedremo GTK in tempi brevi...
Citazione
In un altro topic, si diceva che anche Apple con il passaggio a MacOSX ha dovuto affrontare il problema della compatibilità con il vecchio software, essendo MecOSX basato appunto su kernel UNIX diversamente dalle versioni precedenti dell'OS.

Come ha risolto Apple il problema di retrocompatibilità?

Come ha detto Raistlin, i programmi di MacOS 9, 8 e 7 girano all'interno di una sandbox, una scatola trasparente per la retrocompatibilita' all'interno di MacOS X. Doppio click sull'icona di uno di quei programmi, e parte la sandbox. L'utente non se ne accorge.
MorphOS applica un concetto simile: sopra il kernel Quark gira la QBOX, all'interno della quale gira l'ABOX. l'ABOX e' compatibile con AmigaOS, la QBOX ha memoria protetta, resource tracking e altre cose. Il "problema" e' che al momento nella QBOX non gira nient'altro se non la ABOX. E popolare la QBOX sarebbe un grosso lavoro per un gruppo ristretto di programmatori, senza contare che prima bisogna decidere cosa farne: al momento invece l'interesse di tutti e' verso l'ABOX, perche' son tutti programmatori "amighisti"...

Saluti,
Andrea


Utenti Online
Utenti registrati: 1206 dal 1 Gennaio 2006
di cui online: 0 registrati - 
12 non registrati

Benvenuto all'ultimo utente registrato: zulu

© Amigapage 1998 - 2007 - Sito italiano dedicato alla piattaforma Amiga ed evoluzioni varie.
Struttura del sito interamente ideata e realizzata da Marco Lovera e Alessandra Lovera - Tutto il materiale inserito all'interno del sito è dei rispettivi autori/creatori.
E' assolutamente vietata la riproduzione o la manipolazione di tutti i contenuti o parte di essi senza l'esplicito consenso degli amministratori e degli autori/creatori.

Eseguito in 0.03397011756897 secondi