Newsgroup: it.comp.os.os2
Titolo: WPS

Ciao,
 
La WPS e' una gran cosa, ma i programmi fatti utilizzando
la WPS sono una grandissima stronzata...
 
Secondo me gli unici programmi che dovrebbero essere fatti
utilizzando SOM e la WPS dovrebbero essere estensioni alla
interfaccia e se possibile ridotte al minimo...
 
Perche' questa mattina mi sono alzato con questa idea?
Per il semplice fatto che mi sembra una grandissima stronzata
avere un sistema operativo che si dovrebbe preoccupare di
proteggere l'accesso alla memoria (ma che in realta' lo fa
molto male... se volete vi posto un programma di esempio che
invece di causare un SYS3175, come dovrebbe, sovrascrive area
di memoria usata dai driver video e sostituisce tutti i font
con bit random...) e poi far girare diverse applicazioni in
un unico processo...
 
Alcuni esempi? Intanto le applicazioni multimediali di OS/2,
poi il workframe del visual age C++...
 
Queste applicazioni in realta' non fanno niente che non possa
essere realizzato da applicazioni indipendenti usando la semplice
associazione al tipo di file, ma girano nello stesso processo
della WPS causando, troppo spesso, i piu' disparati problemi e
conflitti con la WPS (il workframe, per esempio, fa sparire le
icone dalle barre del titolo di alcune finestre... cosi' a
casaccio, o se c'e' un CD audio nel lettore lo suona quando
si lancia il make)
 
Scusate lo sfogo...
 
P.S. se ci sara' mai una versione 3 di styler credo proprio
che (ora che so come interagire con gli oggetti della WPS
senza usare il SOM e la WPS stessa) permettero' opzionalmente
di aprire delle cartelle "enhanced" in un processo separato o
opzionalmente un processo per ogni cartella, lasciando girare
solo la Scrivania nel processo della WPS (e opzionalmente altre
cartelle che si vorranno aprire nel modo classico dal menu
degli oggetti)...
 
-- 
bye
Alessandro Cantatore
        @
tin.it
email reply to: alexcant at: 
tin.it
http://acsoft.yi.org

 interfaccia e se possibile ridotte al minimo...
Scusa, ma potresti spiegarti meglio ?
Cosa intendi per un programma non dovrebbe utilizzare la WPS ? Che non
deve essere PM ?
Immagino di no, ma allora cosa intendi ? 
Francesco
IACT Member.
http://frengo.dragonfire.net/

 degli oggetti)...
Ma non era proprio il modello SOM una caratteristica chiave di OS/2?
Se ne possiamo fare a meno allora a che serve?
D'altra parte lo sviluppo del SOM e' fermo al 96 (le dll hanno quella
data).
-- 
Alessandro
-------------------------------------------
"There is no dark side of the moon, really...
as a matter of fact it's all dark."
PinK FloYd
-------------------------------------------

Se usi il multithreading non puoi lamentarti, i processi leggeri per
definizione fanno quello che gli pare all' interno del processo pesante
che li ragruppa.
Meglio i processi alla unix , hanno il minimo indispensabile in comune e
alla fine come performance non sono cosi' male. W la fork Abbasso
DosStartThread !
Giulia 
-- 
 
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.3i
mQBtAzTy/2AAAAEDAONDe9aKLgg9VnfWMV9VsTANTLlMMpRIH6okPVvJiNnbwoYd
VJV9/gNw/dmNGMXJg1izxKaoQWyZn/3mzOnvK8mvk8NL/KfBKd85sttzIOYjQiHV
rT3SPk4g0F+R8yHz3QAFE7QjZ2l1bGlhPGZhcjU4OTNAaXBlcmJvbGUuYm9sb2du
YS5pdD6JAHUDBRA08v9hINBfkfMh890BAXLjAv9SHgyJyxYpLFVFV5IPZbqwQ8fQ
gx+3LacWDFwrCdpdZOQtIEba4Cc1qWDY3AzYHBBBKhLD2OVnDyJDGeW+fnfZEOXd
kb2JvytEleDAw7pP/zsH8xj6WwbWu6gzjXPjk5s=
=W/hV
-----END PGP PUBLIC KEY BLOCK-----

In article <odyV1f3lyD6W-pn2-QHLL5dd8XmF9@localhost>,
Fran...@tiscalinet.it
 (Frengo) wrote:
 >> Secondo me gli unici programmi che dovrebbero essere fatti
 >> utilizzando SOM e la WPS dovrebbero essere estensioni alla
 >> interfaccia e se possibile ridotte al minimo...
 >
 >Scusa, ma potresti spiegarti meglio ?
 >Cosa intendi per un programma non dovrebbe utilizzare la WPS ? Che non
 >deve essere PM ?
 >Immagino di no, ma allora cosa intendi ? 
non so come spiegare il concetto in poche parole...
La WPS e' un programma PM, mentre i programmi PM non sono
necessariamente programmi WPS.
Un programma WPS e' un programma che gira all'interno dello stesso
processo della scrivania e delle cartelle (anche se non dovrebbe
essere impossibile girare in un processo separato pur essendo un
programma WPS)
Praticamente adesso tutto il desktop di os2, le cartelle, le
applicazioni multimediali, qualsiasi programma fatto espressamente
per la WPS (che non e' riconducibile ad un file eseguibile separato,
ma solo ad una DLL che viene caricata dalla WPS all'avvio del sistema
- attenzione xo': NON TUTTE LE DLL CARICATE ALL'AVVIO DEL SISTEMA
SONO PROGRAMMI WPS!!! Per esempio Styler/2 e' un programma PM non
WPS) gira all'interno di un unico processo, per cui basta un
qualsiasi bug per bloccare tutta l'interfaccia
Un mezzo molto semplice per mantenere la WPS al minimo delle
funzionalita' permettendo il massimo della configurazione e
della espandibilita' sarebbe quello di limitarne la funzionalita'
alla definizione delle classi degli oggetti e alle impostazioni
sia globali (che varrebbero come impostazioni di default per tutti
gli oggetti di una data classe) che dei singoli oggetti...
Il processo WPS dovrebbe essere usato solo per accedere agli oggetti,
mentre l'interazione con gli oggetti stessi (al limite anche le
procedura di copia, spostamento, ecc) dovrebbero essere gestite
da programmi eseguiti in processi completamente separati...
-- 
bye
Alessandro Cantatore


 wrote:
 >> P.S. se ci sara' mai una versione 3 di styler credo proprio
 >> che (ora che so come interagire con gli oggetti della WPS
 >> senza usare il SOM e la WPS stessa) permettero' opzionalmente
 >> di aprire delle cartelle "enhanced" in un processo separato o
 >> opzionalmente un processo per ogni cartella, lasciando girare
 >> solo la Scrivania nel processo della WPS (e opzionalmente altre
 >> cartelle che si vorranno aprire nel modo classico dal menu
 >> degli oggetti)...
 >
 >Ma non era proprio il modello SOM una caratteristica chiave di OS/2?
 >Se ne possiamo fare a meno allora a che serve?
 >D'altra parte lo sviluppo del SOM e' fermo al 96 (le dll hanno quella
 >data).
La funzione del SOM doveva essere quella di creare tramite il
meccanismo delle IDL (interface definition language) un sistema
che avrebbe permesso di creare estensioni della WPS usando un
qualsiasi linguaggio...
Che poi sia riuscito o meno nello scopo questa e' un'altra questione...
Comunque non parlavo di abolire la WPS, volevo solo evidenziare come
l'abuso di quella che sembra in teoria un'idea estremamente potente
e innovativa possa avere come risultato delle implementazioni
a dir poco discutibili...
Penso che lo stesso risultato della WPS e di un'interfaccia ad oggetti
sarebbe stato raggiungibile con meccanismi ben piu' semplici ed
efficienti utilizzando le risorse spese in modo piu' proficuo
So come la WPS organizza internamente i dati dei vari oggetti,
quello che non capisco e come mai i linuxiani, pur ammettendo
spesso la superiorita' dell'interfaccia di OS/2 abbiano fatto
solo dei brutti cloni di windows (certo la mancanza di un file
system con supporto per gli EA rende tutto + complicato)
Personalmente ho trovato sia KDE che GNOME molto piu' odiosi
(instabili e lenti) perfino di windows... ci sono molte idee
interessanti, ma manca la benche' minima consistenza dell'interfaccia
e la configurabilita' della stessa e' limitata ad inutili cazzate
come quella dello sfondo delle finestre di console invece che
a cose piu' sostanziali
-- 
bye
Alessandro Cantatore


 da programmi eseguiti in processi completamente separati...
Ma delle operazioni di spostamento & co non si occupa il PM ?


 alla fine come performance non sono cosi' male.
non e`  proprio il massimo... anche in ambiente unix stanno provando
a migliorare il multithreading.
--
ciao, Mirco.
ICQ number   : 51640305
(get ICQ : 
http://www.mirabilis.com
)

solo dei brutti cloni di windows
Perche' non basta ammettere che e' superiore: bisogna saperla
programmare. IMHO una delle cose che manca al modello di sviluppo di
Linux e' qualcuno che sappia fermarsi e fare analisi. Sono un po' come
i giapponesi: copiano gli altri, e solo dove riescono...
Obelix

 wrote:
 >Se usi il multithreading non puoi lamentarti, i processi leggeri per
 >definizione fanno quello che gli pare all' interno del processo pesante
 >che li ragruppa.
 >Meglio i processi alla unix , hanno il minimo indispensabile in comune e
 >alla fine come performance non sono cosi' male. W la fork Abbasso
 >DosStartThread !
Scusami, non prendertela come offesa personale, ma questo non c'entra
proprio un bel niente... il multithreading e' molto meglio e molto
piu' efficiente del multiprocessing... si tratta solo di usare il
tutto con cognizione di causa
In genere, quando si tratta della medesima applicazione, e' sempre
meglio ricorrere al multithreading, ma essendo la WPS un'applicazione
molto particolare, sarebbe opportuno in questo caso fare un'eccezione
e ricorrere al multiprocessing:
- tutte le operazioni che coinvolgono i file dovrebbero essere eseguite
  in un processo separato
- tutte le cartelle (eccetto, al limite, il desktop) dovrebbero essere
  aperte in un processo separato
- il processo della WPS dovrebbe solo passare ai processi figli i
  riferimenti ai relativi oggetti, occuparsi della registrazione di
  nuove classi e dei settaggi dei vari oggetti
sono sicuro che in questo modo il sistema sarebbe molto piu' stabile
(e forse si puo' realizzare anche con Styler/2... prima devo fare
la versione 2... poi vediamo... qualche idea ce l'ho)
-- 
bye
Alessandro Cantatore


 da programmi eseguiti in processi completamente separati...
e` possibile ? Sicuramente... pero` forse si perde in prestazioni...
e poi questi prg come li fai comunicare tra di loro? Mah, la sparo, tramite
messaggi? Beh, in questo caso se se ne pianta uno l'altro (a meno che non sia
veramente intelligente) sta fermo ad aspettare risposte...
alla fine questi prg devono interagire tra di loro... ad ogni modo, la WPS
sai bene tu come funziona...
Una cosa... per impedire che mi parta tutto il multimedia, mi basta
deregistrare le classi?
In caso affermativo, probabilmente e`  possibile ricreare gli oggeti multimedia
tramite gli eseguibili in c:\mmos2. Se tutto funziona avrei il multimedia che viaggia
in un processo separato... oppure ci sono altri "meccanismi" dietro che impediscono
questa soluzione?
Come puoi notare la mia ignoranza sul funzionamento della WPS e`  colossale....


 a cose piu' sostanziali
l'esempio piu` eclatante e`  enlightment... le sue funzionalita`  si limitano alle
sole ca$$ate di aspetto grafico... addirittura fare le finestre trasparenti!!!
Una pesantezza da paura x poi non poter fare nulla.
Attualmente quando lavoro metto windows maker... non ha nulla come gli
altri ma almeno e` leggero!!!
Forse la verita`  e`  che siamo abituati troppo bene con OS/2:-)))


In data Sun, 8 Oct 2000 09:40:24, @
tin.it
 (Alessandro Cantatore) 
scrisse:
|Personalmente ho trovato sia KDE che GNOME molto piu' odiosi
|(instabili e lenti) perfino di windows... ci sono molte idee
|interessanti, ma manca la benche' minima consistenza dell'interfaccia
|e la configurabilita' della stessa e' limitata ad inutili cazzate
|come quella dello sfondo delle finestre di console invece che
|a cose piu' sostanziali
E gia' ma qualcuno gli ha detto che anche con Linux si fanno i soldi....
Linux e' un eccellente server se si usano i comandi e la shell....quando
metti su KDE o GNOME ti viene la voglia di riabbracciare 
WinDOZE...questo e' uno dei motivi per i quali ancora uso OS/2: ho il 
meglio di Unix....Ho il meglio dell'ambiente a finestre anche se devo 
rinuciare a moltre altre cose...
Ciao!
|\///|~MerLino says.....
The day Micro$oft makes something that doesn't 
suck is the day they start selling vacuum cleaners

 sono sicuro che in questo modo il sistema sarebbe molto piu' stabile
..
Ma da profano & advocatus diabuli chiedo, non ci si perderebbe niente?
Ciao
Gabriele

In article <odyV1f3lyD6W-pn2-5qICUTcQXbGJ@localhost>,
Fran...@tiscalinet.it
 (Frengo) wrote:
 >Ma se e' come dici praticamente tutti i programmi non sono WPS, ad 
 >esempio netscape
 >non dovrebbe esserlo eppure e' uno dei piu' sensibili ai crash...
Tutti i programmi che funzionano anche se nel config.sys non
c'e' PMSHELL.EXE come RUNWORKPLACE non sono programmi WPS.
Il fatto che i programmi WPS possono causare + facilmente blocchi
del sistema non implica che nessun programma semplicemente PM
possa farlo
 >Ma delle operazioni di spostamento & co non si occupa il PM ?
il PM rappresenta solo la parte che si occupa di disegnare e gestire
le finestre sullo schermo... Quando esegui qualsiasi operazione con
una cartella usi si' il PM (perche' le cartelle sono delle finestre)
ma anche la WPS perche' le cartelle vengono eseguite all'interno del
(secondo) processo di PMSHELL.EXE
Questo non impedisce di eseguire le operazioni sui file anche da
riga di comando...
-- 
bye
Alessandro Cantatore


,
ggamba....@tiscalinet.it
 (Gabriele Gamba) wrote:
 >> sono sicuro che in questo modo il sistema sarebbe molto piu' stabile
 >..
 >
 >Ma da profano & advocatus diabuli chiedo, non ci si perderebbe niente?
si' ... un po' di crash
-- 
bye
Alessandro Cantatore


 wrote:
 >io programmi da molti anni, ma di wps ecc. non ho mai voluto imparare nulla...
 >ad ogni modo che il multimedia fosse parte "della wps" c'ero arrivato trovando solo
 >delle dll la dove una volta trovavo dei bei eseguibili... vedendo che ad esempio il
Ho controllato meglio e ci sono anche gli eseguibili (nella cartella
MMOS2) e entrambi (almeno le finestre) girano effettivamente in un
processo separato... quindi probabilmente la parte buggata e' da
ricercarsi nel runtime del visual age c++ visto che detti programmi
(come del resto il workframe del visual age c++) interagiscono per
esempio con il CD...
Non ho mai approfondito l'argomento multimedia... credo e spero che
almeno le API non facciano uso del suddetto runtime...
Per le classi credo che si possano deregistrare senza problemi...
Certo farebbe comodo avere il menu Converti se le corrispondenti
conversioni funzionassero a dovere (in realta' lasciano molto a
desiderare)
 >da quello che ho capito io il bello della WPS e` proprio la semplicita` di
 >espansione... insomma queste dll sono come degli ADD-ON... l'idea
 >di per se la trovo bella. Putroppo non mi sono mai addentrato nella
 >programmazione di wps e PM...
Se pero' nel progetto avessero previsto dei settaggi globali per
le classi, per esempio un potrebbe definire un menu per ogni classe
e tipo... per esempio per tutti i file di immagine basterebbe definire
anche solo un programma esterno da riga di comando per fare la conversione
la WPS servirebbe solo per riconoscere la classe dell'oggetto, associare
il corretto menu, e lanciare il programma esterno (che girerebbe cosi'
nel suo spazio separato) passando come parametro l'oggetto stesso...
Cosi per espandere le funzionalita' della WPS non sarebbe necessario
nemmeno usare SOM i file IDL ecc... basterebbe in molti casi anche uno
script REXX
 >> Il processo WPS dovrebbe essere usato solo per accedere agli oggetti,
 >> mentre l'interazione con gli oggetti stessi (al limite anche le
 >> procedura di copia, spostamento, ecc) dovrebbero essere gestite
 >> da programmi eseguiti in processi completamente separati...
 >
 >e` possibile ? Sicuramente... pero` forse si perde in prestazioni...
 >e poi questi prg come li fai comunicare tra di loro? Mah, la sparo, tramite
 >messaggi? Beh, in questo caso se se ne pianta uno l'altro (a meno che non sia
 >veramente intelligente) sta fermo ad aspettare risposte...
 >alla fine questi prg devono interagire tra di loro... ad ogni modo, la WPS
 >sai bene tu come funziona...
Non ho mai fatto programmi WPS, ma solo PM!
Comunque se il messaggio si limita ad un post per notificare
l'aggiornamento dello stato di un oggetto (come dovrebbe essere
nell'ipotesi di sopra) non c'e' proprio il rischio di bloccare un
bel niente... al massimo l'oggetto non viene aggiornato...
 >Una cosa... per impedire che mi parta tutto il multimedia, mi basta
 >deregistrare le classi?
 >In caso affermativo, probabilmente e`  possibile ricreare gli oggeti multimedia
 >tramite gli eseguibili in c:\mmos2. Se tutto funziona avrei il multimedia che viaggia
 >in un processo separato... oppure ci sono altri "meccanismi" dietro che impediscono
 >questa soluzione?
 >Come puoi notare la mia ignoranza sul funzionamento della WPS e`  colossale....
come ho scritto dipende tutto da un mio errore di lettura del PID..
anche lanciati come oggetto della WPS, almeno apparentemente girano
nel loro processo... il problema e' che evidentemente il runtime C++
del visual age e' estremamente buggato ed evidentemente corrompe
aree di memoria condivise...
-- 
bye
Alessandro Cantatore


 la WPS servirebbe solo per riconoscere la classe dell'oggetto, associare
questo e' gia' possibile con il meccanismo di associazione dei files 
per filtro (*.xxx) o tipo (attributo esteso). Sta' poi al programma 
aprire piu' sessioni per ogni file o utilizzare IPC/DDE per comunicare
con la sessione primaria.
E Ulrich su XWorkplace sta' predisponendo un framework di 
programmazione per estendere piu' facilmente le funzionalita' di WPS.
Bye,
	Yuri Dario
/*
 * member of TeamOS/2 - Italy
 * 
http://www.quasarbbs.com/yuri
 */

piu' efficiente del multiprocessing... 
Dipende dall'ambito, ovviamente.
Obelix