Gå til innhold

Anbefalte innlegg

Jeg prøver å flytte verdien i en c-variabel inn i esp for så å gjøre et absolutt hopp til minneaddressen inneholdt i en annen c-variabel.

 

// Dette er deklarasjonen av c-variablene
int userstack = current_running->user_stack;
int location = current_running->LOCATION;

// Her er det jeg vil gjøre i inline-assembly
__asm__ volatile ("movl userstack, %esp");
__asm__ volatile ("ljmp $0x0000, location");

Eksempelet over er det jeg har forsøkt til nå, men det fungerer ikke. Når jeg kompilerer får jeg bare feilene:

Error: suffix or operands invalid for ljmp"

og

"undefined reference to `userstack'".

Så nå sitter jeg her og skjønner ikke hvordan jeg skal få dette her til.

Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...