AROS : Intervista a Pascal Papara

Le nostre news in homepage

Moderatore: Newser

Re: AROS : Intervista a Pascal Papara

Messaggioda cdimauro » mer ago 04, 2010 2:39 pm

TheKaneB ha scritto:x86 non è un problema, semplicemente è "brutto" per gli sviluppatori (i processori PPC sono più semplici da programmare)

Questo è discutibile. Magari è una questione di gusti, ma da programmatore assembly di vecchia data preferisco x86 (in particolare AMD64) anziché PowerPC se proprio devo programmare in assembly.

I PPC non sono RISC "semplici": hanno parecchie istruzioni, anche "complicate" (load e store multiplo di registri), ma in ogni caso con un RISC devi scrivere molto più codice per fare le stesse cose di un CISC.

Ecco perché continuo a preferire i CISC. Che poi x86 la possiamo considerare brutta se ci fermiamo ai 286. Dal 386 in poi ha guadagnato abbastanza. E non ne parliamo con AMD64.
Qualunque Computer Scientist ti direbbe che scrivere un OS multitasking basato su microkernel, NON HA SENSO in una piattaforma senza virtualizzazione degli address spaces (in pratica, senza la MMU). E anche quando hanno introdotto la MMU sui 68030, ormai era troppo tardi per fare il passo avanti, visto che la struttura stessa dell'OS era stata costruita attorno alle caratteristiche/mancanze del MC68000. Bisognava buttare l'OS e tutti i programmi e rifarli da capo.

L'MMU è apparsa molto prima che col 68020. Anzi, a volerla dire tutta, già col 68010 si sarebbe potuto fare non poco a livello di separazione fra kernel e user space, e al mapping dei task / processi in apposite zone di memoria (eventualmente anche protette), ricorrendo a un po' di logica esterna.

Hi-Toro prima e Commodore poi hanno scelto la strada dell'economicità. Un 68000, all'epoca, andava più che bene. E ne abbiamo pianto le conseguenze.
Avatar utente
cdimauro

Eroe
 
Messaggi: 2454
Iscritto il: mer giu 16, 2010 9:00 pm
Località: Germania

Re: AROS : Intervista a Pascal Papara

Messaggioda cdimauro » mer ago 04, 2010 2:40 pm

Seiya ha scritto:
esketos ha scritto:
Seiya ha scritto:infatti AROS x86 è un OS eretico nella comunità Amiga.


Perchè la dicitura x86 è un problema per voi?


hai quotato male, la mia era ironia :boing:

Purtroppo i fanatici ci sono ancora oggi.
Avatar utente
cdimauro

Eroe
 
Messaggi: 2454
Iscritto il: mer giu 16, 2010 9:00 pm
Località: Germania

Re: AROS : Intervista a Pascal Papara

Messaggioda cdimauro » mer ago 04, 2010 2:44 pm

TheKaneB ha scritto:@paolone: non voglio entrare nella tipica flame war... ma sono un programmatore low-level, e ho sviluppato giochi soprattutto, ma anche qualche esperimento in campi "di sistema" come microkernels, virtualmachines e debuggers. Devo specificare che nel mio caso l'architettura (e quindi l'assembly) conta, oppure mi vuoi dire che tutte queste applicazioni si sviluppano in linguaggi di alto livello? :-)

ognuno parla secondo le proprie esperienze, c'è chi sviluppa in php, chi sviluppa in C++ e chi sviluppa anche in C e ASM, io ho toccato tutte e 3 le categorie, e so benissimo che in alcuni campi l'architettura conta ancora tantissimo, nonostante gli anni '80 siano finiti da un pezzo :D (anche perchè io negli 80 ci sono nato... nel 1990 non mi sognavo ancora di programmare, visto che avevo 4 anni...)

Da un po' di anni l'assembly si usa sempre meno. Persino per i più schifosi PIC ci sono compilatori C.

Certo, se c'è da spremere per bene una particolare sezione critica, lo si fa, ma personalmente preferisco perdere meno tempo possibile nello sviluppo.
Avatar utente
cdimauro

Eroe
 
Messaggi: 2454
Iscritto il: mer giu 16, 2010 9:00 pm
Località: Germania

Re: AROS : Intervista a Pascal Papara

Messaggioda cdimauro » mer ago 04, 2010 2:51 pm

TheKaneB ha scritto:è un meccanismo che funziona, ma farebbe impazzire molti sviluppatori... come li ha fatti impazzire la Apple nello switch di architettura.

Agli sviluppatori bisogna dare una toolchain che all'atto della compilazione della build finale provveda a generare il codice binario degli hunk delle architetture da supportare.
Comunque, almeno per Apple, è stato un buon compromesso per le "fasi di transizione" verso una nuova architettura, ma Apple stessa usava Rosetta per l'emulazione dei binari PPC-only (non tutti gli sviluppatori si accollavano l'onere di produrre i programmi in formato universal-binary ppc+x86).

Nel nostro caso convivono già programmi m68k e ppc, e la situazione è praticamente "stabile" perchè ci sono dei buoni emulatori 68k che fanno il loro sporco lavoro in modo efficiente, ma sono scritti in asm ppc. Portando il tutto su x86, bisognerebbe comunque riscrivere l'emulatore m68k e poi bisognerebbe farne anche un'altro per gli applicativi PPC-only (molti non vengono più sviluppati da anni, non mi aspetto che i vecchi sviluppatori si sveglino dal letargo per rilasciarne nuove versioni)... considerando poi che qui si parla di software house con movimenti di cassa inferiori a quelli del kebabbaro egiziano che c'è sotto casa mia, capiamo un po' tutti che si tratta "bei sogni", e basta :D

Emulatori 68K ne esistono a vagonate anche su x86, e pure scritti in assembly. Questo non sarebbe un problema.

Ma il mio punto era un altro. Se ho 3 versioni di AmigaOS, per 68K, PPC e x86, gli eseguibili verrebbero creati con hunk 68K, PPC e x86 per il codice, cercando di generare un hunk "generale" per i dati comuni, e delegando a piccoli hunk dati specifici per le rispettive architetture quelli che non possono essere riciclati.

Un AmigaOS x86 che carica un siffatto binario provvede a caricare soltanto gli hunk che gli servono.

Non serve emulazione. Ovviamente se ho un AmigaOS x86 e un binario coi soli hunk 68K e PPC (o anche soltanto uno dei due), se non c'è nessuna emulazione non si può caricare e lanciare. Ma questo è un altro problema, appunto.
Avatar utente
cdimauro

Eroe
 
Messaggi: 2454
Iscritto il: mer giu 16, 2010 9:00 pm
Località: Germania

Re: AROS : Intervista a Pascal Papara

Messaggioda TheKaneB » mer ago 04, 2010 3:05 pm

cerco di dare una breve risposta a tutti i punti :D

cdimauro ha scritto:
TheKaneB ha scritto:x86 non è un problema, semplicemente è "brutto" per gli sviluppatori (i processori PPC sono più semplici da programmare)

Questo è discutibile. Magari è una questione di gusti, ma da programmatore assembly di vecchia data preferisco x86 (in particolare AMD64) anziché PowerPC se proprio devo programmare in assembly.

Io non sono un programmatore assembly di vecchia data come te... probabilmente quando tu già programmavi io dovevo nascere, però ho lavorato parecchio su ARM e da lì è nata la mia passione per la programmazione in Assembly. PPC è in parte simile ad ARM, ma più complesso. Ho lavorato un po' anche su x86 e, questione di gusti sicuramente, ci sono tante cose che non mi piacciono. Probabilmente sono troppo abituato ad avere un'ISA ortogonale con tanti registri general purpose.
Non conosco AMD64, quindi non commento su quella parte :-p
Diciamo che essendomi formato professionalmente su dei RISC, sono abituato a quel modo di lavorare e lo trovo molto più semplice e lineare (con qualche eccezione, quando parliamo di PPC che sono abbastanza atipici, rispetto per lo meno a MIPS e ARM).
[...] ma in ogni caso con un RISC devi scrivere molto più codice per fare le stesse cose di un CISC.

E' vero, ci vuole mediamente più codice per fare le stesse cose. L'espressività del CISC risiede quasi tutta nella ricchezza delle modalità di indirizzamento degli operandi. Ma su RISC, una volta fatto il load degli operandi, ti ritrovi ad avere un set ortogonale più facile da padroneggiare. Il processo mentale di chi programma in RISC è lineare: load, compute, store. Se fai tua questa logica, puoi scrivere qualunque cosa senza essere per forza un guru.
Ecco perché continuo a preferire i CISC. Che poi x86 la possiamo considerare brutta se ci fermiamo ai 286. Dal 386 in poi ha guadagnato abbastanza. E non ne parliamo con AMD64.
Qualunque Computer Scientist ti direbbe che scrivere un OS multitasking basato su microkernel, NON HA SENSO in una piattaforma senza virtualizzazione degli address spaces (in pratica, senza la MMU). E anche quando hanno introdotto la MMU sui 68030, ormai era troppo tardi per fare il passo avanti, visto che la struttura stessa dell'OS era stata costruita attorno alle caratteristiche/mancanze del MC68000. Bisognava buttare l'OS e tutti i programmi e rifarli da capo.

L'MMU è apparsa molto prima che col 68020. Anzi, a volerla dire tutta, già col 68010 si sarebbe potuto fare non poco a livello di separazione fra kernel e user space, e al mapping dei task / processi in apposite zone di memoria (eventualmente anche protette), ricorrendo a un po' di logica esterna.

Hi-Toro prima e Commodore poi hanno scelto la strada dell'economicità. Un 68000, all'epoca, andava più che bene. E ne abbiamo pianto le conseguenze.


grazie per le precisazioni, come sai non conosco bene i processori motorola, sono un ARMeggiatore io :D

Da un po' di anni l'assembly si usa sempre meno. Persino per i più schifosi PIC ci sono compilatori C.

Certo, se c'è da spremere per bene una particolare sezione critica, lo si fa, ma personalmente preferisco perdere meno tempo possibile nello sviluppo.


le tue parole sono iniettate di Pythonismo, non fai testo :ahah:
scherzi a parte, quello che dici lo condivido pienamente, ma per il mio lavoro saper scrivere pezzi di codice in assembly è fondamentale. Come ho già detto programmo soprattutto videogames su console, e non uso l'assembly solo per questioni di ottimizzazione, ma spesso anche per sfruttare certe tecniche particolari che non possono essere exploitate in linguaggi di alto livello. Questo comprende anche l'implementazione di semplici sistemi di debugging "fai da te", che completano la dotazione, a volte pietosa, dei tools di sviluppo ufficiali (qualcuno ha citato per caso IS Nitro Emulator?).

Ma il mio punto era un altro. Se ho 3 versioni di AmigaOS, per 68K, PPC e x86, gli eseguibili verrebbero creati con hunk 68K, PPC e x86 per il codice, cercando di generare un hunk "generale" per i dati comuni, e delegando a piccoli hunk dati specifici per le rispettive architetture quelli che non possono essere riciclati.

Un AmigaOS x86 che carica un siffatto binario provvede a caricare soltanto gli hunk che gli servono.


si, lo so come funziona. il problema è che alcuni importanti programmi che si usano quotidianamente sui sistemi Amiga-like attuali, o sono troppo legati alla piattaforma (e quindi una semplice ricompilazione non funzionerebbe nel modo sperato) oppure sono semplicemente "orfani" da parte dello sviluppatore e non sono nemmeno open source. Entrambi i casi fanno nascere la necessità di emulatori.
Avatar utente
TheKaneB

Eroe
 
Messaggi: 2218
Iscritto il: sab mar 27, 2010 2:17 am
Località: Milano

Re: AROS : Intervista a Pascal Papara

Messaggioda esketos » mer ago 04, 2010 3:07 pm

cdimauro ha scritto:Il mio, di sogno, è avere un solo eseguibile / libreria / device, delegando all'AmigaOS il caricamento degli Hunk "utili" all'architettura in esecuzione.


La tua è un'ottima idea (a dire il vero la mia era molto simile... ma non so esprimermi come voi GIGANTI dell'informatica). :ahah:

Ad ogni modo noto, con molto piacere, che la discussione si sta animando... senza scadere nella famosa "guerra" che tutti temono. Ma ho altresì notato una grande preparazione di diversi utenti.

Ed io continuo a chiedermi... perchè parlare soltanto? Più volte sto lanciando delle idee (nelle quali posso impegnarmi anch'io... ma non da solo... naturalmente) ma dopo la proposta costruttiva non noto nessuna risposta all'invito... solo disquisizioni tecniche... più o meno profonde.

C'è qualcuno che vorrebbe iniziare un progetto/sviluppo in favore di questi sistemi... cercando... almeno idealmente... di unificarli? Certamente non si può arrivare ad un traguardo se non si inizia camminare verso di esso! Leggo "tanti corridori" capaci ed allenati... che stanno più tempo a parlare del percorso da fare, da dimenticare di inziare/continuare ad andare avanti.

Lo so, sono forse la persona meno adatta a parlare... vi chiedo scusa... ma ci provo (e se ho riscoperto AMIGA... e vi assicuro che non sapevo nulla dello sviluppo sottobanco di questi anni) è perchè ho creduto in un progetto/ideale che per altri era morto e sepolto.

Sono sicuro che ci credete ancora anche voi... altrimenti non sareste qui nemmeno voi!
Avatar utente
esketos

Veterano
 
Messaggi: 189
Iscritto il: gio dic 31, 2009 2:46 pm
Località: Genova

Re: AROS : Intervista a Pascal Papara

Messaggioda TheKaneB » mer ago 04, 2010 3:20 pm

@esketos: discutere di argomenti tecnici è un conto. Armarsi di compilatore e realizzare qualcosa di funzionante è un'altra storia.
Io conosco Amiga in modo superficiale (mi intendo più di videogiochi, di linux e sistemi operativi "in generale") quindi, nel mio caso, passare dalla teoria alla pratica è una cosa che richiede molto tempo e dedizione. La passione non mi manca, ma il tempo è quello che è. Considerando inoltre che, quella di Amiga, è anche una passione relativamente costosa (e io non sono di certo un figlio di papà) se proprio dovessi fare qualche progetto serio lo farei per AROS, che almeno è gratuito e gira su macchine x86 economiche e che possiedo già in casa.

Lascio il piacere di sporcarsi le mani con il codice a quelli che AmigaOS lo conoscono molto meglio di me :D
Avatar utente
TheKaneB

Eroe
 
Messaggi: 2218
Iscritto il: sab mar 27, 2010 2:17 am
Località: Milano

Re: AROS : Intervista a Pascal Papara

Messaggioda esketos » mer ago 04, 2010 3:32 pm

TheKaneB ha scritto:Considerando inoltre che, quella di Amiga, è anche una passione relativamente costosa (e io non sono di certo un figlio di papà) se proprio dovessi fare qualche progetto serio lo farei per AROS, che almeno è gratuito e gira su macchine x86 economiche e che possiedo già in casa.


Sarebbe già una grande cosa! :ride:
C'è qualche progetto che ti piacerebbe iniziare/continuare/sviluppare?
Se posso ti do una mano.

A dire il vero anche io uso Linux (Ubuntu) dunque la filosofia Open Source mi trova pianemante d'accordo. :carucciiii:

Per gli altri OS... chissà se altri vorranno fare qualcosa? Qualsiasi novità insomma, dal nuovo set di icone al modulo di caricamento degli hunk utili (di cui ha parlato cdimauro). :rock:

Hai/avete dato un'occhiata a questo http://code.google.com/p/jamiga2 ?
Ultima modifica di esketos il mer ago 04, 2010 3:46 pm, modificato 1 volta in totale.
Avatar utente
esketos

Veterano
 
Messaggi: 189
Iscritto il: gio dic 31, 2009 2:46 pm
Località: Genova

Re: AROS : Intervista a Pascal Papara

Messaggioda andres » mer ago 04, 2010 3:35 pm

Comunque, dopo l'AmigaOne XE e l'AmigaOne X1000, è chiaro che per un modello con cpu AMD/Intel il nome ci sarebbe già: AmigaOne X86 :ride:
Avatar utente
andres

Eroe
 
Messaggi: 2097
Iscritto il: mer mar 04, 2009 10:40 pm

Re: AROS : Intervista a Pascal Papara

Messaggioda Raffaele » mer ago 04, 2010 3:50 pm

Rafgazzi, vorrei ricordarvi/farvi notare 2 cose:

1) In una intervista di un circa 6 mesi fa ad un membro del MorphOS Team, hanno detto che per come è fatto il kernel MOS ci vorrebbero solo un 6 mesetti di lavoro per portarlo su architettura ARM/X86

(Qualcuno vuole trovare il link per piacere?)

Quindi che iol MOS team ha dichiarato che nel 2013 passeranno a X86 mi sembra pure che ci mettano troppo tempo... Lo facessero da subito e amen...

2) Ho letto nelle caratteristiche dei processori PA-Semi che possono funzionare sia big che little endian...

E'vera 'sta cosa?

Qundi in un lontano futuro grazie all'AmigaONE X-1000 potremo avere una transisizione "soffice" di AmigaOS da PPC big endian -> a PPC PA-Semi endianess mista -> PA-Semi che gira in compatibilità low-endian -> X86...

Lo chiedo a voi programmatori: E possibile questo?
Avatar utente
Raffaele

Supremo
 
Messaggi: 3501
Iscritto il: dom mag 22, 2005 1:01 pm
Località: Qualche volta qui, qualche volta su altri siti

Re: AROS : Intervista a Pascal Papara

Messaggioda TheKaneB » mer ago 04, 2010 3:56 pm

Raffaele ha scritto:Rafgazzi, vorrei ricordarvi/farvi notare 2 cose:

1) In una intervista di un circa 6 mesi fa ad un membro del MorphOS Team, hanno detto che per come è fatto il kernel MOS ci vorrebbero solo un 6 mesetti di lavoro per portarlo su architettura ARM/X86

(Qualcuno vuole trovare il link per piacere?)

Portare il kernel non basta. Bisogna portare anche il software, e per quello occorre più tempo. Inoltre non tutto il software può essere portato, per quelli scritti troppo a basso livello spesso bisogna ricominciare da capo.

[...]
2) Ho letto nelle caratteristiche dei processori PA-Semi che possono funzionare sia big che little endian...

E'vera 'sta cosa?

Qundi in un lontano futuro grazie all'AmigaONE X-1000 potremo avere una transisizione "soffice" di AmigaOS da PPC big endian -> a PPC PA-Semi endianess mista -> PA-Semi che gira in compatibilità low-endian -> X86...

Lo chiedo a voi programmatori: E possibile questo?


Se proprio si deve fare il porting, si fa tutto in una volta e buona notte. Tolto il dente, tolto il dolore. Secondo la mia esperienza, lo scoglio più grande è quello di convertire un progetto per supportare la "seconda" architettura... Una volta impiantato in ottica "portabile", puoi aggiungere altre N architetture con uno sforzo relativamente piccolo.
Avatar utente
TheKaneB

Eroe
 
Messaggi: 2218
Iscritto il: sab mar 27, 2010 2:17 am
Località: Milano

Re: AROS : Intervista a Pascal Papara

Messaggioda esketos » mer ago 04, 2010 4:05 pm

TheKaneB ha scritto:Se proprio si deve fare il porting, si fa tutto in una volta e buona notte. Tolto il dente, tolto il dolore. Secondo la mia esperienza, lo scoglio più grande è quello di convertire un progetto per supportare la "seconda" architettura... Una volta impiantato in ottica "portabile", puoi aggiungere altre N architetture con uno sforzo relativamente piccolo.


Concordo.
Sebbeno sia forse più farraginoso (inizialmente) meglio fare un lavoro che serva a supportare più architetture (così da non abbandonare PPC) ed aggiungerne (almeno in linea teorica) nel futuro, qualche altra.

Credo che in tal senso l'idea di cdimauro sia sfruttabile.
Avatar utente
esketos

Veterano
 
Messaggi: 189
Iscritto il: gio dic 31, 2009 2:46 pm
Località: Genova

Re: AROS : Intervista a Pascal Papara

Messaggioda Jambalah » mer ago 04, 2010 6:53 pm

erased
Ultima modifica di Jambalah il mar apr 26, 2011 8:57 am, modificato 1 volta in totale.
Jambalah

Maestro
 
Messaggi: 417
Iscritto il: lun ago 02, 2010 9:42 pm

Re: AROS : Intervista a Pascal Papara

Messaggioda Seiya » mer ago 04, 2010 7:13 pm

esketos ha scritto:
Sarebbe già una grande cosa! :ride:
C'è qualche progetto che ti piacerebbe iniziare/continuare/sviluppare?
Se posso ti do una mano.



potreste portare Quake 2 e GLQuake per AROS tanto per inziiare.+
i sorgenti ci sono già e uno sviluppatore non dovrebbe avere problemi a compilare qualcosa.
io che non lo sono, non ci riesco nemmeno con ide completi come amidevcpp..

poi ci sono tanti porting da fare per AROS.

Su su, datevi una smossa invece di chiaccherare :ahah:

TheKane si è perso su un benchmark e ormai chi lo vede più.
mi sa che faccio prima ad imparare a progrmmare e farlo io :semo:
Seiya

Supremo
 
Messaggi: 3654
Iscritto il: sab lug 04, 2009 11:22 pm

Re: AROS : Intervista a Pascal Papara

Messaggioda cdimauro » mer ago 04, 2010 7:21 pm

TheKaneB ha scritto:cerco di dare una breve risposta a tutti i punti :D

OK. :)
Io non sono un programmatore assembly di vecchia data come te... probabilmente quando tu già programmavi io dovevo nascere, però ho lavorato parecchio su ARM e da lì è nata la mia passione per la programmazione in Assembly. PPC è in parte simile ad ARM, ma più complesso. Ho lavorato un po' anche su x86 e, questione di gusti sicuramente, ci sono tante cose che non mi piacciono. Probabilmente sono troppo abituato ad avere un'ISA ortogonale con tanti registri general purpose.

Non lo metto in dubbio. Coi CISC c'è da perderci più tempo, ma già il 386 è abbastanza ortogonale (se togliamo di mezzo la spazzatura legacy 8086); quello che lo frega è la presenza di soli 8 registri.
Non conosco AMD64, quindi non commento su quella parte :-p

16 registri (R0-R15, quasi del tutto ortogonali) a 64 bit.

E' sicuramente l'architettura su cui puntare per il futuro, e spero di vedere presto delle versioni specifiche di IcAROS (magari pure bootabili da USB).
E' vero, ci vuole mediamente più codice per fare le stesse cose. L'espressività del CISC risiede quasi tutta nella ricchezza delle modalità di indirizzamento degli operandi. Ma su RISC, una volta fatto il load degli operandi, ti ritrovi ad avere un set ortogonale più facile da padroneggiare. Il processo mentale di chi programma in RISC è lineare: load, compute, store. Se fai tua questa logica, puoi scrivere qualunque cosa senza essere per forza un guru.

Non ci sono dubbi, ma ormai anche i RISC hanno centinaia di istruzioni. Rimane il modello load-compute-store, ma coi CISC puoi indirizzare la memoria con buona parte delle istruzioni, che è quindi un modello piuttosto semplice da padroneggiare.
grazie per le precisazioni, come sai non conosco bene i processori motorola, sono un ARMeggiatore io :D

Per il lavoro che fai, è una scelta obbligata. :scherza:

Se vuoi approfondire riguardo alla virtualizzazione legata al mondo 68000, trovi un mio articolo qui.
le tue parole sono iniettate di Pythonismo, non fai testo :ahah:

Ma LOL. :boing:
scherzi a parte, quello che dici lo condivido pienamente, ma per il mio lavoro saper scrivere pezzi di codice in assembly è fondamentale. Come ho già detto programmo soprattutto videogames su console, e non uso l'assembly solo per questioni di ottimizzazione, ma spesso anche per sfruttare certe tecniche particolari che non possono essere exploitate in linguaggi di alto livello. Questo comprende anche l'implementazione di semplici sistemi di debugging "fai da te", che completano la dotazione, a volte pietosa, dei tools di sviluppo ufficiali (qualcuno ha citato per caso IS Nitro Emulator?).

Fortunatamente non lo conosco, ma posso immaginare. Mi ricorda un po' i tempi dello sviluppo dei giochi su Amiga, solo che all'epoca non c'erano nemmeno emulatori. :D
si, lo so come funziona. il problema è che alcuni importanti programmi che si usano quotidianamente sui sistemi Amiga-like attuali, o sono troppo legati alla piattaforma (e quindi una semplice ricompilazione non funzionerebbe nel modo sperato) oppure sono semplicemente "orfani" da parte dello sviluppatore e non sono nemmeno open source. Entrambi i casi fanno nascere la necessità di emulatori.

Purtroppo debbo concordare.
Avatar utente
cdimauro

Eroe
 
Messaggi: 2454
Iscritto il: mer giu 16, 2010 9:00 pm
Località: Germania

PrecedenteProssimo

Torna a News e rumors

Chi c’è in linea

Visitano il forum: Nessuno e 32 ospiti