السلام عليكم ورحمة الله وبركاته
اخوتي الكرام انا اريد استدعاء ايعازات لينكس (او اي برنامج تنفيذي مثلا اخذت الايعاز ls) من خلال مودل النواة kernel module فبداية جربت باستخدام لغة c البرنامج الاتي
اخوتي الكرام انا اريد استدعاء ايعازات لينكس (او اي برنامج تنفيذي مثلا اخذت الايعاز ls) من خلال مودل النواة kernel module فبداية جربت باستخدام لغة c البرنامج الاتي
كود:
#include <unistd.h> int main(int argc, char **argv) { // execve("/bin/ls", argv, NULL); execl("/bin/ls","ls", "-l",0); return 0; }
وقد تفذ بصورة صحيحة كلاتي
كود:
cc demo.c -o demo ./demo
والان اريد تنفيذ نفس العمل باستخدام الـ Kernel Module
فجربت كتابة الموديل اللاتي
فجربت كتابة الموديل اللاتي
كود:
/* * hello-1.c - The simplest kernel module. */ #include <linux/module.h> /* Needed by all modules */ #include <linux/kernel.h> /* Needed for KERN_INFO */ #include <linux/unistd.h> //#include <unistd.h> int init_module(void) { printk(KERN_INFO "Hello world 1.\n"); execl("/bin/ls","ls", "-l",0); return 0; } void cleanup_module(void) { printk(KERN_INFO "Goodbye world 1.\n"); }
وال make file الخاص به هو
كود:
obj-m += hello-1.o all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
المشكلة انه عندما اريد ان اترجم الموديل عن طريق الايعاز make يضهر الخطا الاتي
رجاء المساعدة في حل المشكلة او اذا كان هنالك اي طريقة لاستدعاء اوامر لينكس او البرامج التنفيذية من داخل موديلات النواة ولكم جزيل الشكر
والسلام عليكم ورحمة الله وبركاته
كود:
siddeeq@siddeeq-laptop:~/Kerne_Module$ make make -C /lib/modules/2.6.28.7-rtai-3.7/build M=/home/siddeeq/Kerne_Module modules make[1]: Entering directory `/usr/src/linux-2.6.28.7' CC [M] /home/siddeeq/Kerne_Module/hello-1.o /home/siddeeq/Kerne_Module/hello-1.c: In function ‘init_module’: /home/siddeeq/Kerne_Module/hello-1.c:15: error: implicit declaration of function ‘execl’ make[2]: *** [/home/siddeeq/Kerne_Module/hello-1.o] Error 1 make[1]: *** [_module_/home/siddeeq/Kerne_Module] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.28.7' make: *** [all] Error 2
والسلام عليكم ورحمة الله وبركاته
تعليق