|
|
|
![]() |
|
Strumenti |
![]() |
#81 | |||||
Member
Iscritto dal: Jun 2003
Città: Torino (ma non indigeno)
Messaggi: 117
|
Re: Architetture CPU ed OS
Quote:
Quote:
Non era quello che cercavo, ma mi sono perso l'indirizzo. Quote:
Quote:
![]() Quote:
Infine, l'universo tecnologico è pieno di scelte sbagliate ![]() Per tutto il resto hai ragione tu, quoque Homerus... anche se io non sono Homerus ![]()
__________________
-=Onyno=- FATTI PROCESSARE Lui sa chi è, lui sa perchè, lui sa che ha fatto. |
|||||
![]() |
![]() |
![]() |
#82 | |||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Re: Architetture CPU ed OS
Quote:
![]() Quote:
![]() "The interrupt controller was originally a separate IC, the 68901. This chip performed a rather complicated dance on the bus to translate the seven pull-down interrupt lines into vectored interrupts (level 1 through 7). The 68901 also provided a basic UART and (if memory serves) a periodic interrupt timer. The Motorola 68901 had a number of severe defects, including the ability to lose the highest-priority interrupt if it and the clock interrupt happened within some window of each other. The Mostek part was superior." Come puoi vedere, il problema era dovuto al controller dell'interrupt, non al processore in sé. Tant'è che viene specificato che l'integrato della Mostek non ha di questi problemi... ![]() Una precisazione: il livello 0 non era un interrupt vero e proprio, perché, in quanto più basso, era il valore con cui veniva caricata la maschera di interrupt all'inizio, e con cui girava il codice normalmente, per cui il corrispodente vettore non è mai stato utilizzato. Da Motorola viene definito interruzione spuria quella associata a questo livello, perché in teoria una periferica potrebbe generare un interrupt di livello 0 quando ne è presente uno con priorità più elevata, e servirlo quando quest'ultimo terminerà la sua esecuzione. Ma si capisce bene che un interrupt che può venir gestito esclusivamente se ne è presente già un altro di priorità più elevata, non è di alcuna utilità pratica... ![]() Quote:
![]() "The 68000 was also unable to correctly return from an exception on a failing memory access, a crucial feature to enable true virtual memory. To simulate unlimited RAM, one wants to interrupt when a memory access fails, and then the interrupt routine will allocate a block of real RAM, and read a piece of data on disk into it. Several companies did succeed in making 68000 based Unix workstations with virtual memory that worked, so there must have been a way. But they upgraded to the 68010 as quickly as possible." Come vedi, il 68000 non è stato progettato già di per sé per poter gestire la memoria virtuale. Si parla di fallimento dal ritorno da un'eccezione provocata da un memory fault soltanto per sottolineare appunto che questo processore non metteva a disposizione alcuna tecnologia per poter sfruttare anche quest'interessantissima possibilità, e quindi implementare la gestione della memoria virtuale. Non era stato progettato per farlo. ![]() Col 68010, come avevo citato in precedenza, furono introdotte delle nuove eccezioni che permettevano di farlo. In conclusione, non si tratta di bug del processore, ma semplicemente di feature non ancora implementate... Quote:
Un "errore" nel processore comunque c'era: per poter leggere/scrivere i flag del registro di stato (8 bit) era necessario ricorrere ad un'istruzione non privilegiata (e quindi eseguibile sia in user che in supervisor mode) che, però, leggeva/scriveva l'intero registro (a 16 bit), ma che sfortunamente conteneva nella parte alta dati che la cui gestione avrebbe dovuto essere di esclusivo appannaggio della modalità supervisore. Motorola corresse questo "bug" facendo diventare quest'istruzione privilegiata (e quindi eseguibile soltanto nella modalità supervisore), e ne introdusse una non privilegiata che permetteva di leggere e scrivere soltanto il byte che conservava i flag di stato... Quote:
![]() Ho lavorato per anni con questa famiglia di processori da quando comprai l'Amiga (2000 prima e il 1200 poi), e ho fatto di tutto, compreso sviluppare videogiochi e imbarcarmi nella creazione di un (a mio avviso innovativo) emulatore 80186 (era quasi finito, quando m'è morto il 1200 e sono passato poi al PC, abbandonando di conseguenza il progetto...) ![]() Quote:
![]() Quote:
![]() ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||||||
![]() |
![]() |
![]() |
#83 |
Member
Iscritto dal: Jun 2003
Città: Torino (ma non indigeno)
Messaggi: 117
|
Re: Architetture CPU ed OS
C'è sempre da imparare (mi riferisco a me naturalmente
![]() [quote="cdimauro" ![]() ![]() [/quote] La frase "quoque Homerus" vuol dire ... anche un grande come Omero alle volte ha sbagliato...ovviamente (e ironicamente) l'Omero della situazione dovevo essere io ![]()
__________________
-=Onyno=- FATTI PROCESSARE Lui sa chi è, lui sa perchè, lui sa che ha fatto. |
![]() |
![]() |
![]() |
#84 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
eh eh eh
![]() Adesso mi torna tutto più chiaro: grazie per l'informazione. ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#85 |
Member
Iscritto dal: Dec 2002
Città: roma
Messaggi: 106
|
Forse sono un po' di parte avendo lavorato anch'io col 68000 per MOLTI anni...
Fatto sta che alla Sapienza, per fare didattica, la CPU se la sono creata ad hoc... hanno preso un paio di caratteristiche dal 8088 e quasi tutto il resto dal 68000, tirando fuori il PD (in varie incarnazioni ad 8,16 e 32 bit). Non aggiungo altro perché finirei per dire le stesse cose già dette da cdimauro... ;-))) Riguardo alla memoria, era ovvio che mi riferivo a quella indirizzabile. Il 68000 arrivava a 16 megabyte... uno sproposito per l'epoca. E intanto Bill Gates aveva detto che "640K dovrebbero bastare a chiunque!" :-)) Se trovo in rete poi le divertentissime vicende (e i bug) che portarono alla creazione delle FPU per l'8088 vi mando subito il link... |
![]() |
![]() |
![]() |
#86 | |||
Member
Iscritto dal: Jun 2003
Città: Torino (ma non indigeno)
Messaggi: 117
|
Quote:
![]() Quote:
"Internet? può interessare solo l'ambiente universitario" B.Gates "Nn si venderanno più di 2 o 3 computer l'anno", Dirigente IBM, 1979 "Non c'è motivo per cui tutti debbano avere un computer a casa". Altro dirigente IBM Quote:
__________________
-=Onyno=- FATTI PROCESSARE Lui sa chi è, lui sa perchè, lui sa che ha fatto. |
|||
![]() |
![]() |
![]() |
#87 | |||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() Si vede che adoro i 680x0, vero? ![]() Quote:
Quote:
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:39.