Ich möchte meinen eigenen Systemaufruf implementieren. (Siehe Link unten)
Aber das Hinzufügen eines neuen Systemaufrufs erfordert die Kompilierung des Kernels.
Wie implementiere ich meinen eigenen Systemaufruf, ohne den Linux-Kernel neu zu kompilieren?
Sicher, Sie können.
Kurz gesagt, Sie müssen den laufenden Kernel patchen.
Es gibt mindestens zwei Möglichkeiten, einen neuen syscall hinzuzufügen:
sys_call_table
und ia32_sys_call_table
) und die Systemaufruflimitüberprüfungsanweisung (normalerweise cmp
auf x86) bei allen Systemaufrufeinträgen ( system_call
, ia32_system_all
usw.). ..) call
auf x86), um auf die Kopier- und Patch-Systemaufruflimitüberprüfungsanweisung der Tabelle bei jedem Systemaufrufeintrag zu zeigen. Sehen Sie dies für Details an:
Linux-Systemaufruf mithilfe von LKM implementieren
Wie 32-Bit Anwendungen machen Systemaufrufe auf 64-Bit-Linux?
:)
Tags und Links c linux linux-kernel system-calls