Discussione: [Linux] le syscall
View Single Post
Old 04-06-2009, 21:09   #11
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da misterx Guarda i messaggi
grazie per la risposta

Ti risulta che quando compili il kernel questo ha già indirizzi fissi in memoria dove piazzarci le varie tabelle per le varie gestioni degli interrupt ad esempio e le eccezioni ?
Alcuni kernel possono memorizzare delle strutture a indirizzi fissi, ma in questo modo si legano all'architettura.

In generale è sempre meglio non fare assunzioni su dove mettere certe strutture, anche perché le architetture moderne permettono di rilocare praticamente qualunque dato.
Quote:
Originariamente inviato da misterx Guarda i messaggi
accumulo un'altra domanda

Codice:
push eax
mov eax, 0+4(esp)
mov (old_eip), eax
mov eax, 4+4(esp)
mov (old_cs), eax
mov eax, 8+4(esp)
mov (old_eflags), eax
come mai non viene memorizzato il contenuto dello stack direttamente nelle variabili ma si passa prima dal registro eax ?

Cioè anzichè:
Codice:
mov eax, 0+4(esp)
mov (old_eip), eax
non si scrive:
Codice:
mov (old_eip), 0+4(esp)
Perché non hai un Motorola 68000, ma un ben più semplice 80386.
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
 
Hardware Upgrade Forum Database Error
Database Error Database error
The Hardware Upgrade Forum database has encountered a problem.

Please try the following:
  • Load the page again by clicking the Refresh button in your web browser.
  • Open the www.hwupgrade.it home page, then try to open another page.
  • Click the Back button to try another link.
The www.hwupgrade.it forum technical staff have been notified of the error, though you may contact them if the problem persists.
 
We apologise for any inconvenience.