Hallo,
ich benötige kurz mal hilfe bei einer implementation eines Syscalls unter x86_64bit System:
der code (übungsaufgabe)
1. ich erstelle einen neuen Ordner im Patch oder kompletten source Kernel prosys/
2. erstelle ich das Makefile im selben ordner:
obj-y := prosys.o
3. in globalen Makefile eintragen:
core-y. += kernel/ mm/ fs/ usw ... ... ... .... prosys/
4. dies in ter unistd.h eintragen
#define __NR_prosys 242
5. #define NR_syscalls um ein erhöhen
6. in arch/z.b i386/kernel in der datei syscall_table.S
.long sys_prosys
eintragen
7. wie mache ich das nun bei x86_64 bit systemen ?
vielen Dank
ich benötige kurz mal hilfe bei einer implementation eines Syscalls unter x86_64bit System:
der code (übungsaufgabe)
Code: [Auswählen]
# include <linux/linkage.h>
asmlinkage long sys_prosys(long n) {
long ergebnis=0;
int i;
for(i=1; i<=10; i++) {
ergebnis +=i;
}
ergebnis = ergebnis + n;
return ergebnis
}
1. ich erstelle einen neuen Ordner im Patch oder kompletten source Kernel prosys/
2. erstelle ich das Makefile im selben ordner:
obj-y := prosys.o
3. in globalen Makefile eintragen:
core-y. += kernel/ mm/ fs/ usw ... ... ... .... prosys/
4. dies in ter unistd.h eintragen
#define __NR_prosys 242
5. #define NR_syscalls um ein erhöhen
6. in arch/z.b i386/kernel in der datei syscall_table.S
.long sys_prosys
eintragen
7. wie mache ich das nun bei x86_64 bit systemen ?
vielen Dank

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken

Gespeichert
