Il caricamento del kickstart all'avvio del sistema

Classic, anche retrogaming

Il caricamento del kickstart all'avvio del sistema

Messaggioda FeliceMente » lun feb 25, 2008 4:52 pm

Un altro dubbio che mi attanaglia, dopo quello sui diversi tipi di RAM per Amiga classici, relativo al caricamento del kickstart.

Il kickstart si trova in un chip apposito (su Amiga 500 era da 256 kb), e contiene le funzioni principali del sistema operativo, le librerie fondamentali.

Ora, se è come ricordo io, questo chip è solo un chip di memoria RO, e non un microcontroller o qualcosa del genere, per cui, all'accensione del sistema, qualche altro microcontroller sulla motherboard si occupava di avviare quanto presente nel chip (e a quel punto sullo schermo appariva la manina col dischetto).

Lo faceva, però, leggendo quell'area di memoria, copiandola nella RAM di sistema, e facendo eseguire il codice al processore, per cui dopo questa operazione i contenuti di questo chip non erano più accessibili/indirizzabili dal sistema, vero?

Il codice del kickstart non veniva eseguito mappando in memoria questo chip e leggendo direttamente da lì il codice, giusto?

Spero di essermi spiegato.
Marco Iannaccone
http://www.felicemente.altervista.org/

Quando una cosa complessa appare semplice,
intuitiva e naturale, e sembra l'unico modo in cui dovrebbe essere,
allora è stata progettata bene.
Avatar utente
FeliceMente

Veterano
 
Messaggi: 309
Iscritto il: lun ott 31, 2005 5:19 pm
Località: Avellino

Messaggioda Kyle » lun feb 25, 2008 8:51 pm

Da vero ignorante in materia...
BOH :sperduto:
AmigaOne X5000/20 - 4GB - RadeonHD 4670 - HD 1TB + 512GB- AmigaOS 4.1 Final Edition / MorphOS 3.16
A1200 Diamond Red - Vampire V1200 - 130 MB - CF 32GB - Gotek Drive - Coffin R59
A1200 - Blizzard 1230 IV + FPU - 34 MB - KS 3.1 - CF 4GB - ClassicWB Full
A3000 - 18 MB - KS 3.1.4 - ClassicWB 3.1.4
CDTV - 10MB - T30 - Extended roms 2.30 - KS 1.3/3.1 - built in Gotek Drive - ClassicWB 68K
A500 & A570 - 3MB - KS 1.3 - OS1.3
Avatar utente
Kyle

Leggenda
 
Messaggi: 8787
Iscritto il: dom dic 24, 2006 11:15 am
Località: Livorno

Messaggioda FeliceMente » lun feb 25, 2008 9:01 pm

Kyle ha scritto:Da vero ignorante in materia...
BOH :sperduto:


:-P :-)
Marco Iannaccone
http://www.felicemente.altervista.org/

Quando una cosa complessa appare semplice,
intuitiva e naturale, e sembra l'unico modo in cui dovrebbe essere,
allora è stata progettata bene.
Avatar utente
FeliceMente

Veterano
 
Messaggi: 309
Iscritto il: lun ott 31, 2005 5:19 pm
Località: Avellino

Messaggioda NubeCheCorre » lun feb 25, 2008 9:28 pm

Da quanto ne so io, il Kickstart e' appunto una rom removibile in quanto zoccolata su scheda, l' immagine del disco o della maninae' li' nel kickstart e viene letta all' avvio di amiga os. Sempre all' accensione del computer, nel kickstart vi sono tutte le info per far partire il computer e ad esempio l' early startup menu quello che appare se tieni premuto i due pulsanti del mouse..

Non so se e' questo che volevi sentire.. :felice:
W il Veneto :ride:
Avatar utente
NubeCheCorre

Leggenda
 
Messaggi: 10624
Iscritto il: dom set 21, 2003 9:21 pm
Località: San remo

Re: Il caricamento del kickstart all'avvio del sistema

Messaggioda clros » lun feb 25, 2008 9:28 pm

FeliceMente ha scritto:
Il kickstart si trova in un chip apposito (su Amiga 500 era da 256 kb), e contiene le funzioni principali del sistema operativo, le librerie fondamentali.


Fino all'1.3 era da 256KB, poi è diventato da 512KB .Inoltre, alcune macchine ne avevano 2 (ma non saprei dirti se da 256KB ciascuno)

Ora, se è come ricordo io, questo chip è solo un chip di memoria RO, e non un microcontroller o qualcosa del genere, per cui, all'accensione del sistema, qualche altro microcontroller sulla motherboard si occupava di avviare quanto presente nel chip (e a quel punto sullo schermo appariva la manina col dischetto).


Non so come funzioni bene il tutto...LA CPU non poteva leggere direttamente dalla ROM?
Infatti, tutto il necessario al BOOT si trovava nel kickstart per cui penso il kick sia mappato in modo tale che all'avvio, la CPU iniziasse a leggere le istruzioni al suo interno.
Ma, ripeto, non ne sono sicuro.


Lo faceva, però, leggendo quell'area di memoria, copiandola nella RAM di sistema, e facendo eseguire il codice al processore, per cui dopo questa operazione i contenuti di questo chip non erano più accessibili/indirizzabili dal sistema, vero?

Bella domanda...non so se il Kick venisse copiato integralmente in RAM o se venissero copiate solo le librerie...

Il codice del kickstart non veniva eseguito mappando in memoria questo chip e leggendo direttamente da lì il codice, giusto?

Spero di essermi spiegato.

Ti sei spiegato bene...sono io che non so risponderti!
Only AMIGA makes it possible !!
La colpa è sempre del Kernel!!
...un bit è formato da 8 byte...

Claudio "CP" La Rosa
Avatar utente
clros

Supremo
 
Messaggi: 3473
Iscritto il: ven mag 07, 2004 2:41 pm
Località: SYS 64738

Messaggioda MacGyverPPC » lun feb 25, 2008 9:40 pm

NubeCheCorre ha scritto:Da quanto ne so io, il Kickstart e' appunto una rom removibile in quanto zoccolata su scheda, l' immagine del disco o della maninae' li' nel kickstart e viene letta all' avvio di amiga os. Sempre all' accensione del computer, nel kickstart vi sono tutte le info per far partire il computer e ad esempio l' early startup menu quello che appare se tieni premuto i due pulsanti del mouse..

Non so se e' questo che volevi sentire.. :felice:

Io ricordo che togliendo il vecchio Kickstart dal 1200 e mettendo il Kickstart 3.1"nuovo" per l'OS 3.9, anche la barra in alto dei menu
sul WB 3.1 giovava di molto, aveva/ha caratteristiche in più rispetto a prima.
OS4.1.3Immagine+SAM= ImmagineNG c'è!
SAM440EP: OS4.1.4Up4:con USB2.0 UP,RunInUae integrato con Kickstart 3.1,1.3,CD32 originali, MUI migliorato ecc/HD400GbSata/masterizzatore sataDVD/SB Audigy5.1.
AMIGA1200PPC/060(HomeTower):OS4Classic/USB/BlizzardPPC/BVision/Ram128Mb/HD/CD-DVD/RW :rock:
AMIKIT WinUAE:OS3.9/OS4 FE : AMD A8 x64
Advance
Multitask
Integrated
Grafic
Architecture
Avatar utente
MacGyverPPC

Leggenda
 
Messaggi: 10872
Iscritto il: sab set 22, 2007 4:51 pm
Località: Alessandria

Messaggioda Amiga Supremo » lun feb 25, 2008 9:41 pm

Il Kickstart è il BIOS di AMIGA.
...A good friend of flew on the Commodore Jet to Irving Gould's house in the Bahamas in about 1996. At that time Irving Gould was alive and well living in retirement and was believed to still be a Canadian citizen. Go CANADA!!!
Avatar utente
Amiga Supremo

Leggenda
 
Messaggi: 8387
Iscritto il: dom apr 29, 2007 12:56 pm

Messaggioda clros » lun feb 25, 2008 9:44 pm

ORRORE!!!!!
dire che il Kickstart è il BIOS!!!!!
non c'è paragone tra i due ;-)
Only AMIGA makes it possible !!
La colpa è sempre del Kernel!!
...un bit è formato da 8 byte...

Claudio "CP" La Rosa
Avatar utente
clros

Supremo
 
Messaggi: 3473
Iscritto il: ven mag 07, 2004 2:41 pm
Località: SYS 64738

Messaggioda MacGyverPPC » lun feb 25, 2008 9:48 pm

clros ha scritto:ORRORE!!!!!
dire che il Kickstart è il BIOS!!!!!
non c'è paragone tra i due ;-)

Allora... meglio dire: Il Bios è una specie orrenda che prova ad essere come il mitico Kickstart!!! :ride:
OS4.1.3Immagine+SAM= ImmagineNG c'è!
SAM440EP: OS4.1.4Up4:con USB2.0 UP,RunInUae integrato con Kickstart 3.1,1.3,CD32 originali, MUI migliorato ecc/HD400GbSata/masterizzatore sataDVD/SB Audigy5.1.
AMIGA1200PPC/060(HomeTower):OS4Classic/USB/BlizzardPPC/BVision/Ram128Mb/HD/CD-DVD/RW :rock:
AMIKIT WinUAE:OS3.9/OS4 FE : AMD A8 x64
Advance
Multitask
Integrated
Grafic
Architecture
Avatar utente
MacGyverPPC

Leggenda
 
Messaggi: 10872
Iscritto il: sab set 22, 2007 4:51 pm
Località: Alessandria

Messaggioda NubeCheCorre » lun feb 25, 2008 10:02 pm

Effettivamente il kickstart non e' un bios.. e' .. il kickstart :ride:
W il Veneto :ride:
Avatar utente
NubeCheCorre

Leggenda
 
Messaggi: 10624
Iscritto il: dom set 21, 2003 9:21 pm
Località: San remo

Messaggioda Amiga Supremo » lun feb 25, 2008 10:12 pm

Effettivamente il termine BIOS si riferisce principalmente all'ambito PC IBM COMPATIBILE, però è pur vero che anche il KICKSTART si troverebbe a proprio agio nella seguente descrizione generale (senza dunque riferimenti ai PC IBM COMPATIBILI):

(http://it.wikipedia.org/wiki/BIOS), cit:

BIOS
Da Wikipedia, l'enciclopedia libera.


In informatica, il Basic Input-Output System o BIOS è il primo programma che viene eseguito da un personal Computer IBM compatibile dopo l'accensione, ed ha tre funzioni principali:

Eseguire una serie di test diagnostici per controllare lo stato di funzionamento dell'hardware (POST, Power on self test) e segnalare eventuali guasti rilevati tramite un codice sonoro (beep code);
Localizzare il sistema operativo e caricarlo nella RAM;
Fornire una interfaccia software a basso livello per l'accesso alle periferiche e all'hardware del PC.
Nei primi PC IBM il BIOS supportava tutte le periferiche e il DOS faceva completo affidamento su di esso per le operazioni a basso livello, ma con l'evoluzione tecnologica successiva le capacità offerte dalle routine di gestione del BIOS (all'epoca non aggiornabili, perché scritte in ROM) divennero rapidamente insufficienti. Attualmente i moderni sistemi operativi (Microsoft Windows e Linux) non usano più il BIOS per le loro operazioni di I/O ma accedono direttamente all'hardware.

Il BIOS è scritto di solito nel linguaggio assembler nativo della famiglia di CPU utilizzata. Attualmente il BIOS dei PC è scritto su memorie EEPROM riscrivibili, quindi può essere modificato e aggiornato: generalmente i costruttori mettono a disposizione nuove versioni di BIOS per correggere difetti o aggiungere supporto a periferiche hardware non previste inizialmente. Tuttavia non è consigliabile aggiornare il BIOS di un PC senza un motivo ben preciso, perché l'operazione di aggiornamento, se non va a buon fine, può rendere il PC inutilizzabile.

Il termine apparve per la prima volta con il sistema operativo CP/M e descriveva quella parte di CP/M che veniva caricata all'avvio e che si interfacciava direttamente con l'hardware. I computer che utilizzavano il CP/M avevano infatti solo un semplicissimo boot loader nella ROM. Anche le successive versioni del DOS avevano un file chiamato IBMBIO.COM o IO.SYS del tutto analogo.

Pur essendo il termine BIOS un acronimo, c'è un richiamo alla parola greca βιος (bios) vita.
...A good friend of flew on the Commodore Jet to Irving Gould's house in the Bahamas in about 1996. At that time Irving Gould was alive and well living in retirement and was believed to still be a Canadian citizen. Go CANADA!!!
Avatar utente
Amiga Supremo

Leggenda
 
Messaggi: 8387
Iscritto il: dom apr 29, 2007 12:56 pm

Messaggioda Kyle » lun feb 25, 2008 10:16 pm

Il calcio d'inizio dell'Amiga! :ahah:
AmigaOne X5000/20 - 4GB - RadeonHD 4670 - HD 1TB + 512GB- AmigaOS 4.1 Final Edition / MorphOS 3.16
A1200 Diamond Red - Vampire V1200 - 130 MB - CF 32GB - Gotek Drive - Coffin R59
A1200 - Blizzard 1230 IV + FPU - 34 MB - KS 3.1 - CF 4GB - ClassicWB Full
A3000 - 18 MB - KS 3.1.4 - ClassicWB 3.1.4
CDTV - 10MB - T30 - Extended roms 2.30 - KS 1.3/3.1 - built in Gotek Drive - ClassicWB 68K
A500 & A570 - 3MB - KS 1.3 - OS1.3
Avatar utente
Kyle

Leggenda
 
Messaggi: 8787
Iscritto il: dom dic 24, 2006 11:15 am
Località: Livorno

Messaggioda FeliceMente » lun feb 25, 2008 10:27 pm

Amiga Supremo ha scritto:Effettivamente il termine BIOS si riferisce principalmente all'ambito PC IBM COMPATIBILE, però è pur vero che anche il KICKSTART si troverebbe a proprio agio nella seguente descrizione generale (senza dunque riferimenti ai PC IBM COMPATIBILI):

(http://it.wikipedia.org/wiki/BIOS), cit:

BIOS
Da Wikipedia, l'enciclopedia libera.


In informatica, il Basic Input-Output System o BIOS è il primo programma che viene eseguito da un personal Computer IBM compatibile dopo l'accensione, ed ha tre funzioni principali:

Eseguire una serie di test diagnostici per controllare lo stato di funzionamento dell'hardware (POST, Power on self test) e segnalare eventuali guasti rilevati tramite un codice sonoro (beep code);
Localizzare il sistema operativo e caricarlo nella RAM;
Fornire una interfaccia software a basso livello per l'accesso alle periferiche e all'hardware del PC.
Nei primi PC IBM il BIOS supportava tutte le periferiche e il DOS faceva completo affidamento su di esso per le operazioni a basso livello, ma con l'evoluzione tecnologica successiva le capacità offerte dalle routine di gestione del BIOS (all'epoca non aggiornabili, perché scritte in ROM) divennero rapidamente insufficienti. Attualmente i moderni sistemi operativi (Microsoft Windows e Linux) non usano più il BIOS per le loro operazioni di I/O ma accedono direttamente all'hardware.

Il BIOS è scritto di solito nel linguaggio assembler nativo della famiglia di CPU utilizzata. Attualmente il BIOS dei PC è scritto su memorie EEPROM riscrivibili, quindi può essere modificato e aggiornato: generalmente i costruttori mettono a disposizione nuove versioni di BIOS per correggere difetti o aggiungere supporto a periferiche hardware non previste inizialmente. Tuttavia non è consigliabile aggiornare il BIOS di un PC senza un motivo ben preciso, perché l'operazione di aggiornamento, se non va a buon fine, può rendere il PC inutilizzabile.

Il termine apparve per la prima volta con il sistema operativo CP/M e descriveva quella parte di CP/M che veniva caricata all'avvio e che si interfacciava direttamente con l'hardware. I computer che utilizzavano il CP/M avevano infatti solo un semplicissimo boot loader nella ROM. Anche le successive versioni del DOS avevano un file chiamato IBMBIO.COM o IO.SYS del tutto analogo.

Pur essendo il termine BIOS un acronimo, c'è un richiamo alla parola greca βιος (bios) vita.


Si, la descrizione va bene anche per il kickstart... però comunque no dice niente di come effettivamente è implementata la cosa.

Se il chip che contiene il kickstart è solo una memoria, e no un micocontroller, c'è bisogno di un meccanismo che dica al processore, all'accensione, che deve eseguire determinate istruzioni all'avvio del sistema.

Quello che chiedevo è se il processore le va a leggere direttamente da lì, perché il contenuto di quel chip viene effettivamente mappato in memoria, e anche successivamente alla fase d'avvio quindi, rimane mappato in quel modo (e non credo che sia probabile) oppure, come per il BIOS di un PC, il programma viene prima copiato in RAM ed eseguito da lì, e non direttamente dalla EEPROM (o equivalente) del BIOS (o almeno così mi sembra di ricordare che funzioni).
Marco Iannaccone
http://www.felicemente.altervista.org/

Quando una cosa complessa appare semplice,
intuitiva e naturale, e sembra l'unico modo in cui dovrebbe essere,
allora è stata progettata bene.
Avatar utente
FeliceMente

Veterano
 
Messaggi: 309
Iscritto il: lun ott 31, 2005 5:19 pm
Località: Avellino

Messaggioda Turrican3 » gio feb 28, 2008 4:02 pm

http://www.ntrautanen.fi/computers/hard ... memory.htm

La ROM era mappata regolarmente nello spazio indirizzi del 68000 (quasi certamente potevi solo leggere a quelle locazioni), ma ricordo bene che all'epoca si raccomandava SEMPRE di non fare salti "diretti" al Kickstart perchè (ovviamente) in future release non vi era possibilità di garantire che quella determinata routine si sarebbe trovata sempre allo stesso posto.

Questo è uno dei motivi per cui si avevano piccole o grosse -a seconda dei casi- incompatibilità ad ogni major release (1.3 --> 2.0 fu drammatica)

Non saprei se il sistema facesse caching in RAM delle librerie/moduli presenti nel kickstart, ma ho (vaghi) ricordi di Sysinfo che mi suggeriscono che la risposta potrebbe essere affermativa.

PS: se ho detto corbellerie enormi correggetemi! :ride:
Currently administering: Gamers4um
Bren McGuire - Assault Suit Fighter since 1990
Avatar utente
Turrican3

Veterano
 
Messaggi: 367
Iscritto il: mar lug 20, 2004 4:45 pm
Località: Catania (provincia)

Re: Il caricamento del kickstart all'avvio del sistema

Messaggioda Raffaele » gio feb 28, 2008 6:02 pm

FeliceMente ha scritto:Un altro dubbio che mi attanaglia, dopo quello sui diversi tipi di RAM per Amiga classici, relativo al caricamento del kickstart.

Il kickstart si trova in un chip apposito (su Amiga 500 era da 256 kb), e contiene le funzioni principali del sistema operativo, le librerie fondamentali.

Ora, se è come ricordo io, questo chip è solo un chip di memoria RO, e non un microcontroller o qualcosa del genere, per cui, all'accensione del sistema, qualche altro microcontroller sulla motherboard si occupava di avviare quanto presente nel chip (e a quel punto sullo schermo appariva la manina col dischetto).

Lo faceva, però, leggendo quell'area di memoria, copiandola nella RAM di sistema, e facendo eseguire il codice al processore, per cui dopo questa operazione i contenuti di questo chip non erano più accessibili/indirizzabili dal sistema, vero?

Il codice del kickstart non veniva eseguito mappando in memoria questo chip e leggendo direttamente da lì il codice, giusto?

Spero di essermi spiegato.


Sì, si... ti sei spiegato!

In effetti il Kickstart fa parecchie cose, mantiene intuition, le librerie grafiche, il Kernel dell'OS e Autoconfig pure, se ben ricordo, ma a seconda degli Amiga, questo componente fondamentale dell'AmigaOS viene trattato in modo diverso...

L'approccio al kikcstart è diverso sulle macchine A1000, A500/2000 e A3000...

L'A1000 aveva una piccola EEPROM che faceva il primo boot del sistema, controllava che la macchina fosse a posto, e poi chiedeva il KIkcstart SU DISCO... (Manina che mostrava il disco con la scritta Kickstart)...

Una volta riconosciuto il disco Kickstart lo caricava nell'apposita area di memoria a lui dedicata, e poi avveniva il vero e proprio boot di Amiga, dove appariva la richiesta di introdurre il disco Workbench (Manina che mostrava il disco con la scritta Workbench)...

Solo a questo punto si poteva inserire un diso Amiga bootabile di qualsiasi tipo, DOS (Workbench) o NDOS (Amiga bootabile tipo giochi)...

C'era un bellissimo articolo che spiegava come tutto questo avveniva e quali erano i Chip che su Amiga in realtà facevano il boot, ed era spiegato sulle pagine della rivista TRANSACTOR USA, portata in Italia integralmente tradotta da Jackson...

Quando Transactor in USA venne chiusa, la rivista italiana corrispondente pure venne chiusa, e però venne MANTENUTO qualcosa di simile (ma solo in Italia) e per opera di Paolo Canali... Mi sembra...

Si tratta delle famose "Pagine di transactor" in bianco e nero poste al centro della rivista Amiga Magazine Italia)...

Chi ha per sua fortuna la collezione di Transactor Italia [io ne possiedo un solo numero], o Amiga Magazine (La mia è al 4° ripiano di un mobile irraggiungibile, potrà verificare tutto il processo e i chip coinvolti...

Inoltre:

Un libro che spiega tutto il boot di Amiga dovrebbe essere il ROM Kernel Manual seconda edizione...

[EDIT]

ci sono andato vicino!

Era il ROM Kernel Manual ma il reference manual riguardante i "DEVICES"

1a, 2a o 3a edizione...

http://www.angelfire.com/ca2/dev68k/amigabooks.html

This book covers the hardware interface to the AmigaOS. There are interfaces for every aspect of the AmigaOS including the Game Port, Audio, Console, Keyboard, Parallel, SCSI, Serial, Timer, TrackDisk, and other devices. The IFF (Interchange File Format) is detailed. Also covered is some information about the physical layout of the floppy, RigidDiskBlock, and Amiga Bootstrap. This book is great for AmigaOS system programmers needing to communicate at the hardware level or OS designers needing hints about Amiga hardware aspects. This book is also excellent for presenting a well thought out I/O interface for acessing the hardware and organinzing drivers.


Ovviamente la 3a edizione è la più completa e moderna cui fare riferimento...

[EDIT END]
Ultima modifica di Raffaele il gio feb 28, 2008 6:15 pm, modificato 2 volte in totale.
Que viva Amiga! :ammicca:
Avatar utente
Raffaele

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

Prossimo

Torna a Amiga OS Classic (1.x-3.x)

Chi c’è in linea

Visitano il forum: Nessuno e 18 ospiti