Newsgroup: it.comp.macintosh
Titolo: multitasking preeaptive

Salve,
Su vari giornali che ho acquistato di recente si parla d Mac Os X
e tra le varie caratteristiche si legge di questo multitasking
preeaptive???? ( spero si scriva cosi)
Qualcuno gentilmente mi potrebbe dire di cosa si tratta , o meglio , da
cosa si differenzia dal multitasking "normale"?
Vi ringrazio infinitamente
Ciao

 cosa si differenzia dal multitasking "normale"?
Nel multitasking cooperativo un'applicazione impegna la CPU per un
numero di cicli deciso dall'applicazione stessa, nel multitasking
prelazionale (preemptive) e' il sistema operativo a suddividere in
maniera insindicabile il tempo/CPU disponibile tra le varie applicazioni
aperte, al termine del  numero cicli assegnatole ogni applicazione viene
forzatamente 'messa a cuccia' finche' non tocca di nuovo a lei,
indipendentemente dal fatto che abbia o meno completato quello che stava
facendo, che sia bloccata o in loop.
Il vantaggio sta proprio qui, cioe' nel fatto che, magari anche a
scapito della velocita', comunque non puo' accadere che un'applicazione
rincoglionita rifiuti di cedere il controllo portando con se nella tomba
tutto il sistema operativo; cosa invece consentita da un multitasking
cooperativo.
Ciao.
-- 
"The basic tool for the manipulation of reality is the manipulation of
words. If you can control the meaning of words, you can control the
people who must use the words." 
-Philip K. Dick (1928-1982)

 cosa si differenzia dal multitasking "normale"?
Il preemptive sarebbe quello 'normale', e' quello del Mac attuale che e'
strano!!
Nel multitasking preemptive e' il sistema operativo a decidere quanto
tempo dare alle vari processi (applicazioni) in corso e il tempo viene
frazionato in piccole quantita', servite molto rapidamente, in modo tale
da far SEMBRARE che questi processi girino contemporaneamente senza
particolari rallentamenti. 
Nel multitasking del Mac (detto 'cooperative') le applicazioni stesse
decidono quando rilasciare del tempo macchina al sistema operativo
affinche' lo possa utilizzare per altre cose (in genere per le altre
applicazioni/processi aperti).
In questo caso se le applicazioni si comportano "male" (cioe' non
rilasciano spesso tempo macchina) il multitasking va a farsi benedire, o
quantomeno va a "scatti, il che non e' piacevole...
Alberto

 Ciao.
Ciao
Diego

 Ciao
Il multitasking del MacOS attuale é cooperative, ovvero sono le 
applicazioni a decidere quanto tempo-CPU dedicarsi. Se qualcuna fa 
l'ingorda le altre rimangono a secco.
Nel multitasking preemptive é il sistema operativo a suddividere il 
tempo-CPU tra i vari processi, assicurando (teoricamente) una maggiore 
efficenza (vedi, ad esempio, i vari UNIX)
Ciao ciao
-- 
------------------------------------------------------------------------------
pu...@intercom.it
, ICQ#20390352, 
http://home.intercom.it/~puce
------------------------------------------------------------------------------
La Tariffa Urbana a Tempo diminuisce la liberta' di tutti gli utenti Internet.
Anche la tua. 
http://www.notut.org
------------------------------------------------------------------------------


Allora se non ho capito male il preeamptive é  anche quello di Win???!!!
Bhé insomma ho appena cambiato macchina non vorrete dirmi che torno al
schifosissimo MT di Win??

 cerchero' un'altra donna dentro ai sogni di Tarzan...


Bene ora mi sento meglio
E per curiosità Win 2000 che MT avrà?  se ce l'avrà
Grazie

E per curiosità Win 2000 che MT avrà?  se ce l'avrà
Dipende dalla versione di 2000... quella che sostituisce 95/98 sara'
ancora preemptive, quella server e advanced server avra' ancora quel
mix osceno stile "vorrei ma 'un posso" del preemptive di NT ;)


 schifosissimo MT di Win??
Di win NT... e comunque microcozz ha vinto svariati premi perche' sono
riusciti a fare un preemptive che sembra un cooperative mal fatto ;)


 cooperativo.
In pratica poi succede questo ed altro...
Gérard

 Preemptive _sarebbe_ normale... se vivessimo in un mondo perfetto ;)
Win ha avuto multitasking cooperativo (come il Mac) fino alla versione 3.11,
da Win95 in poi è completamente preemptive. WinNT invece, essendo basato su
un kernel unix, è sempre stato preemptive.
Gérard

 E per curiosità Win 2000 che MT avrà?  se ce l'avrà
Mi spiace deluderti ma Win2000, così come Win95, 98 ed NT in tutte le sue
versioni, avrà un multitasking preemptive.
Non conosco altri sistemi cooperative correntemente in uso su personal
computer...
Gérard

 riusciti a fare un preemptive che sembra un cooperative mal fatto ;)
Se il multitasking fosse l'unico metro di paragone fra i personal, il Mac
sarebbe all'ultimo posto dietro a tutti i Win, Linux, QNX, BeOs, Amiga...
Gérard

 da Win95 in poi č completamente preemptive.
Sicuro? Io sapevo che 95 fosse cooperative.


 sfruttare al meglio il tempo della cpu.
Non e' del tutto vero, in condizioni *ideali* non esiste motivo perche'
un preemptive superi in prestazioni un cooperative.


 Sicuro? Io sapevo che 95 fosse cooperative.
Io sapevo fosse un preemptive 'imperfetto' (solo alcuni tipi di processi
possono andare in multitasking preemptive). Chi ne sa di piu'?
Alberto

Scusate se metto li i miei due cent, ma mi sembrava che l'applicazione in
foreground si beccasse piu' priorità, per cui e' quella che risponde
meglio, e le altre si adattano con quello che avanza, il che per me e'
spesso il comportamento piu' veloce per l'utente (le altre applicazioni
vanno avanti di quanto posssono, e' comunque tempo guadagnato.)
O no?
Inoltre mi sembra che programmi come Peekaboo permettono di cambiare
queste priorita' manualmente, se proprio a qualcuno gli frigge...
Maurizio
ema wrote:

--
___________________ ______ ___________________
       @     Maurizio Maggiore - 
m.mag...@agora.stm.it
      @_     Via B. Oriani 54 - 20156 MILAN, ITALY
   /\/|_\    Megalomaniac!    As well as... technical journalist
  /_  | _\   and translator, photographer and author of the picture
 / _ |\/|_\  archiving, labelling & management software PHOTOBASE
/___||  |  \ Check it out at 
http://www.weblink.it/photobase


Solo le applicazioni DOS e Win16 (ossia quelle di win 3.11 e prec.) non
funzionano in multitasking preemptive (mi sembra ovvio), bensě all'interno
di altrettante macchine virtuali (che a loro volta girano in multitasking
con win 95) (e da ciň il degrado di prestazioni).
Mi sembra che dovrebbero girare in questo modo anche le applicazioni MacOS
all'interno di MacOS X Server e anche le applicazioni carbon su Mac OS X
(non ne sono sicurissimo, ma č la soluzione piů semplice e garantisce un
passaggio indolore verso le nuove API).
Ciao,
Gérard

 un preemptive superi in prestazioni un cooperative.
Se per condizioni ideali intendi analizzare il comportamento di un singolo
processo per volta hai ragione, ma proseguendo sul tuo ragionamento allora
maggiore è l'intervallo di tempo che un processo cooperative ha a
disposizione e migliori saranno le prestazioni del sistema, dato che lo
swith fra i vari processi richiede un certo tempo di elaborazione
(overhead), e di multitasking resta ben poco...
In condizioni reali un sistema cooperative spreca una quantità incredibile
di cicli cpu, con processi che avrebbero bisogno di molto meno tempo.
Dopo tutto, i sistemi preemptive sono nati negli anni '50, quando i computer
erano costosissimi ed era essenziale sfruttarli fino in fondo, senza tempi
morti.
Ciao,
Gérard

    altrui ?
Volendo fare i pignoli in entrambi i casi si tratterebbe di un multitasking
"apparente" dato che comunque, almeno nel caso di MacOS e Win98, i sistemi
girano su una sola CPU... ma questo è un altro discorso...
Ciao,
Gérard

un kernel unix, è sempre stato preemptive.
Siiii, come no?
Con pezzi dell'Explorer infilati a livello di kernel, che chiodano
tutto... Nelle intenzioni era cosi', e tutto sommato e' stato cosi'
per un po' di tempo, ma gia' con NT3.51 (e peggio che mai con il 4)
questa era solo la favoletta per i bambini, tipo "il Mac non si pianta
mai". Su Win95/98 stenderei invece un velo pietoso...
Quello che e' vero (e che va detto) e' che per quanto osceno quel mix
garantisce (quando va) un multitask sensibilmente piu' efficiente di
quello dei MacOS attuali.


girano su una sola CPU... ma questo è un altro discorso...
Per non parlare poi di quelle CPU che hanno ancora i registri
dedicati, tipo lo SP ed il PC che devono essere quelli e basta: per
passare da un task ad un altro ogni volta va copiato lo stato di
*quei* registri nello stack. Certo, gia' lo Z8000 non aveva questo
limite.. ma vallo a dire ai PentiumIII ;o))


    altrui ?
Dai, inutile nascondersi dietro un dito... il multitasking del Mac fa
schifo!! Ed e' il motivo principale (insieme alla memoria protetta ed ad
un memoria virtuale vera) per cui l'attuale MacOS verrà mandato in
pensione per far posto ad un sistema operativo completamente nuovo quale
e' il MacOS X.
L'avrebbe già fatto da tempo anche la Apple il multitasking preemptive,
ma non essendo stato progettato il sistema operativo all'origine per
supportarlo, il meglio che gli e' riuscito di fare e' quest'aborto di
multitasking chiamato 'cooperative'. Certo, meglio di niente... Il Mac
ha altri vantaggi rispetto alla concorrenza, ma non questo.
Alberto

    altrui ?
Ma,... personalmente tendo a diradare sempre piu' i rapporti di tipo
erotico-sessuale con i mei computer, cercando di rendermi il piu'
possibile indipendente da dogmi vari ;)
Con un MT "vero" si lavora meglio, la macchina risponde meglio, non hai
tempi morti... un'altra cosa.
MacOS da questo punto di vista (e altri) fa semplicemente schifo e,
annusando l'aria che tira, MacOSX....
Diego
 

 sarebbe all'ultimo posto dietro a tutti i Win, Linux, QNX, BeOs, Amiga..
Son daccordo ma cambierei la classifica in Linux, Amiga a parimerito
BeOs solo un gradino + giu ,Win, Qnx(ma lo pacioccato poco quindi
potrebbe anche scavalcare Win) e Mac che ancora ora con Os 9 se gli
inserisci un Cd si perde un attimino con 400 mhz sotto il culo e che gli
hanno tolto il floppy altrimenti ancora si bloccherebbe un quarto d'ora
prima di farci rimuovere il mouse........mahhhh
Quando con Amiga formattavo contemporaneamente tre floppy, ascoltavo
moduli con audiomaster4 in background che campionava....Apple
svegliaaaaaaaaaaa.....
Ciaoo
Erik

 moduli con audiomaster4 in background che campionava....
... e usavi Shapeshifter insieme a tutto il resto;P
(shapeshifter: emulatore mac della miseria, lo uso ancora sul 1200 per
stampare con la HP deskjet attaccata all'amiga le cose fatte col 6400)
Saimon
Per rispondere togli "nunrompe" dall'indirizzo

 cosa si differenzia dal multitasking "normale"?
Uno e' il cooperative multitask, l'altro il preemptive. La questione e'
questa: il processore e' quasi sempre uno solo e si vogliono far girare
contemporaneamente piu' applicazioni o processi sullo stesso processore.
Nel caso del multitask cooperativo (MacOS tradizionale) sono le
applicazioni che decidono loro quando far ritornare il controllo al S.O.
per gestire il processore, mentre nel caso del preemptive (MacOS X,
Linux, NT) e' il S.O. che viene a riprendersi il controllo in modo
autoritario. 
MacOS, da sempre quasi esclusivamente cooperativo, se l'e' sempre cavata
abbastanza bene, ma il fenomeno della mancanza di un preemptive
multitasking, lo si nota quando una periferica o qualche applicazione
congela l'intero sistema per qualche secondo o piu'.
Se poi l'applicazione che ha il controllo decide di non ritornarlo piu'
al S.O. - perche' magari la software house che lo ha scritto ha commesso
qualche leggerezza e l'applicazione si e' impiantata - allora devi
sperare che option-mela-esc ti consenta di chiudere l'applicazione
congelante: e' il caso in cui l'applicazione congela il sistema.
Con MacOS X questo non succede piu', almeno in teoria...
Ciao
Marco
************************************************************
Marco Tenuti                 | Responsabile Sviluppo Tencas
Ingegnere informatico        | "Macintosh e' ancora molto meglio..." 
ma...@tencas.nospam.com
      | 
http://www.tencas.com

 all'interno di MacOS X Server e anche le applicazioni carbon su Mac OS X
Su X Server attuale non sono le singole applicazioni ma l'intero Mac OS
8.6 che viene fatto girare all'interno dello workspace manager; le
applicazioni 'Carbon' invece gireranno sfruttando le caratteristiche del
nuovo OS, quelle che verranno eseguite come dici tu sono le 'Classic'.


 > cerchero' un'altra donna dentro ai sogni di Tarzan...
-- 
Sergio Aletta
nyr...@thebrain.net
Note: 
the address at the left of the @ is ROT13 encoded

 Preemptive _sarebbe_ normale... se vivessimo in un mondo perfetto ;)
Mhmmm... sicuro sicuro???
A me risulta che sia preemptive, anche se é implementato così da schifo 
che funziona meglio il nostro cooperative. Addirittura Win9x dovrebbe 
avere la memoria protetta, eppure i crash si sprecano...
Ciao ciao
-- 
------------------------------------------------------------------------------
pu...@intercom.it
, ICQ#20390352, 
http://home.intercom.it/~puce
------------------------------------------------------------------------------
La Tariffa Urbana a Tempo diminuisce la liberta' di tutti gli utenti Internet.
Anche la tua. 
http://www.notut.org
------------------------------------------------------------------------------

 mix osceno stile "vorrei ma 'un posso" del preemptive di NT ;)
Quella che sostituisce Win9x si chiamerà Millennium e vedrà la luce tra 
un'annetto. Win2000 é destinato a rimpiazzare solo NT, anche se in base 
ad alcune dichiarazioni le richieste hw sono così elevate che non so 
quanti saranno disposti ad effettuare il cambio: a parte i 128Mb di RAM 
minima, oggi ho letto che per avere le stesse prestazioni di NT 
serviranno 250MHz in più!!! Senza contare che, visti i 30milioni di 
linee di codice, si stimano oltre 60.000 bug (+ o - gravi) ancora da 
scovare.


 Se per condizioni ideali[...]
In condizioni di "tempo reale spinto" può essere migliore il 
cooperative, soprattutto in quei casi in cui determinati processi devono 
essere necessariamente portati a termine entro un determinato tempo, ed 
é l'applicazione che decide quanto tempo macchina gli serve per 
rispettare questa condizione.
Si tratta cmq di casi estremi: il preemptive é normalmente la soluzione 
migliore, purché sia implementata bene (e non come, mi ripeto, in 
WinDOS9x)


Mhmmm... sicuro sicuro???
Sono sicuro che _dicono_ che sia preemptive... e che non lo sia ;o)


 WinDOS9x)
Anche un sistema preemptive può soddisfare la tua condizione : il processo
critico viene eseguito con una priorità di esecuzione più alta degli altri e
pertanto userà il 100% della cpu fino a che, a compito eseguito, non si
porrà in uno stato di attesa e rilascerà le risorse agli altri processi.
Ciao,
Gérard

 scovare.
Beh, visti gli sviluppi non so quante linee di codice potrà avere OS X, ma
penso che non si discosti molto da NT...
E quanto a parchezza delle richieste hardware il Mac non è messo tanto
meglio :-(
Ciao,
Gérard

 avere la memoria protetta, eppure i crash si sprecano...
Sul collegamento fra numero di crash e protezione della memoria ci sarebbe
da discutere a lungo... (guardate l'esempio di Amiga, multitasking
preemptive + memoria NON protetta, dato che gira anche senza MMU).
Diciamo solo che avere una memoria protetta non dovrà essere un pretesto per
mettere in circolazione applicazioni piene di bachi.
Ciao,
Gérard

 Per quello ci sara windows ME (millennium edition)
Seguito a ruota dal Service Pack R, poi dal D e infine... ;)


 Erik
Ciao
Diego

 PS.: se il MacOS ti fa schifo, perche' lo usi ?
Ti ricito: queste sono affermazioni assolutistiche. Nel mio post ho
detto che da questo punto di vista MacOS fa schifo.
          ^^^^^^^^^^^^^^^^^^^^^^^^
Per me e' ancora una ferita sanguinante. La potenza hw dei computer
personal attuali e' tale che se venissero sfruttati con sw e os
"decenti" e con architetture hw che non risalgono agli anni '70, non ci
sarebbe bisogno di processori piu' potenti per un bel pezzo.
Non sopporto lo spreco, tutto qui, e MacOS (che uso) e' sprecone.
Ciao
Diego

 destra e a manca dalla stampa "specializzata".
IMHO il motivo principale e' che il MT a prelazione e' meglio.
La disinformazione del pubblico e' quella che gli fa usare un sistema MT
a prelazione come se fosse un cooperativo (leggi i corsi di informatica
tipo "computer no problem); e' quella che gli fa comprare un processore
che infilato in sistemi giusti ti manda un satellite in orbita per
scrivere le lettere all'amministratore del condominio.
La disinformazione e' quella che ti fa credere che un computer colorato
si piu' innovativo di uno grigio.
Un OS piu' "moderno" non e' disinformazione; e' un atto dovuto agli
utenti.
Ciao
Diego

 destra e a manca dalla stampa "specializzata".
Il multitasking attuale e' una vera limitazione in alcuni casi (non
posso utilizzare il computer mentre masterizzo, per esempio) e una
scocciatura in molti altri (programmi che vanno a scatti, blocchi
improvvisi della macchina per diversi secondi, ecc). E' un bene che
arrivi anche su Mac.
Alberto

utenti.
IMHO, non e' un discorso di "modernizzazione" o altro.
Oha
-- 
"Qualcuno mi spieghi perche' 144 e' l'unico
quadrato perfetto della serie di Fibonacci"

multi-tasking pre-emptivo ci si pulisce il naso, per non dire di peggio.
Scusate se mi intrometto: supponendo di avere un preemptive
*fatto bene*, come decide il SO la priorita' dei vari processi?
In altre parole, se necessario, posso io-utente dare priorita'
piu' o meno alte ai processi che in certi momenti mi servono
maggiormente? (naturalmente, escludiamo i processi che
permettono la *sopravvivenza del SO).
Oppure al massimo, tale info e' passata dal programma
(quindi dal programmatore 
p.es
. di Cubase) al SO?
Cioe', se ho bisogno di scaricare la posta mentre registro
tracce audio, posso farlo o mi *attacco al maniglione*? :-)
Devo essere io a non far partire processi concorrenti?
Attualmente e' il programmatore che lascia solo lo spazio
che ritiene necessario ad altri programmi...
 = un po' di dubbi!
Grazie!
Massimo
------------------
MassimoM
per e-mail rimuovere un libero!
------------------

 porrà in uno stato di attesa e rilascerà le risorse agli altri processi.
In linea di massima si, ma non é sempre così...


 meglio :-(
Mah... la richiesta minima é un G3: macchina che sono già in giro da 
almeno un paio d'anni (se la memoria non m'inganna); inoltre questa 
scelta dovrebbe rispecchiare una migliore ottimizzatione del codice 
(almeno lo spero). Per Win2000 non mi pare che sia proprio la stessa 
cosa.


 Massimo
Ciao
Diego


eh, eh,.... circa uno ogni dieci righe di codice o giu' di li' ....?
 :-)
