Articles of linux kernel

Pourquoi le raccordement d’appels système produit chaque fois un résultat différent dans Linux / Android 2.6.29?

J’ai implémenté la connexion d’appel système pour le kernel Android 2.6.29 via un LKM module . Je suis en train de retracer une application Android pour les appels système. Mais curieusement, il renvoie des résultats différents chaque fois que je reçois une liste d’appels système. Je ne parviens pas à mettre du texte en gras […]

Pourquoi est-ce que make “make: rien à faire pour” tous “.?

Ceci est un module “Hello.c” et “Makefile”. Après avoir exécuté make partir du répertoire woking, je reçois le message suivant: make: Rien à faire pour “tous”. C’est le fichier “Hello.c”: #include // included for all kernel modules #include // included for KERN_INFO #include // included for __init and __exit macros MODULE_LICENSE(“GPL”); MODULE_AUTHOR(“Lakshmanan”); MODULE_DESCRIPTION(“A Simple Hello […]

Netlink Sockets en C utilisant le kernel Linux 3.X

Bonjour, J’ai essayé de faire fonctionner les sockets Netlink pour le kernel Linux 3.2 , mais je n’arrive pas à comprendre comment le faire. J’ai cherché des exemples des bases des sockets Netlink , mais il semble que tous les exemples que je trouve concernent le kernel 2.6. Ce que j’essaie de trouver, c’est comment […]

SO_SNDBUF et SO_RCVBUF sur des sockets Linux

Je programme une application client-serveur. Simplement, le serveur peut utiliser UDP ou TCP pour chaque client. Je veux que le client TCP et le client UDP impriment la valeur par défaut pour SO_SNDBUF et SO_RCVBUF , mais je suis surpris que j’imprime la valeur par défaut pour sndbuf et rcvbuf avant l’établissement de la connexion, […]

Comment utiliser un appel système Linux à partir d’un module de kernel Linux

J’ai quelques difficultés à appeler un appel système depuis un module de kernel Linux. Les appels système ont été testés et fonctionnent correctement à partir d’un programme d’espace utilisateur c standard, mais je n’arrive pas à obtenir le module du kernel pour les comstackr et les exécuter. Dans mon programme utilisateur, j’inclus le code suivant […]

Savoir où les structures sont remplies

J’essaie actuellement d’écrire un pilote Linux et pour cela, il est nécessaire que je comprenne quelques apis pour en tirer le meilleur parti. Souvent, je rencontre un motif dans lequel je commence à creuser une fonction et je me retrouve à un point où la fonction se lit comme suit: returnType OperationX(args…) { … struct […]

Comment obtenir la liste de toutes les pages appartenant à un processus (linux)

Existe-t-il un moyen d’obtenir une liste de toutes les pages appartenant à un processus dans le kernel Linux? J’aurais besoin d’appeler ‘page_free ()’ sur ces pages. S’il vous plaît, faites-moi savoir!!

Accéder aux données .eh_frame pendant l’exécution

J’essaie d’accéder au contenu de la section .eh_frame d’un programme en cours d’exécution depuis celui-ci (plus précisément, le programme est le kernel Linux 2.6.34.8). Le .eh_frame contient des données utiles utilisées pour la gestion des exceptions et j’aimerais les utiliser en interne à partir du code du kernel. La section est déjà écrite par gcc […]

Puis-je utiliser strtok () dans un module de kernel Linux?

Je dois parsingr les données écrites dans mon module et utiliser la fonction strtok () de ssortingng.h serait utile. Cependant j’ai essayé #include et #include sans succès. Est-ce possible? Ou devrais-je écrire ma propre fonction strtok? Merci

Comment router les paquets fractionnés en utilisant les hooks netfilter dans l’espace kernel

Je dois diviser de gros paquets en plus petits en utilisant le hook PRE_ROUTING J’ai fait les démarches nécessaires pour diviser un paquet en paquets plus petits, créer des skb, définir les en-têtes ip et udp, etc. Mais ce que je ne comprends pas, c’est comment acheminer les paquets? Je peux maintenant append des données […]