IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation d'OS Assembleur Discussion :

Primitive du noyau


Sujet :

Programmation d'OS Assembleur

  1. #1
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut Primitive du noyau
    Bonjour,

    Es-ce que l'on peut m'expliquer ce que c'est exactement une primitive du noyau ?

    Merci ! !

  2. #2
    Membre éclairé
    Avatar de D[r]eadLock
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    504
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 504
    Points : 750
    Points
    750
    Par défaut
    je pense que c'est une fonction que le noyau (le systeme) te fourni et qui permet generallement d'acceder a une partie restreinte de l'ordi.

    Par exemple, sur certain systeme la primitive get_mem (j'invente mais bon) te permet de reserver de la memoire. De cette maniere, le systeme peut controler les processus et eviter que n'importe qui fasse n'importe quoi.

    Ceci permet d'unifier et de simplifier les programmes.

    J'espere etre assez clair, mais on ne sait jamais...

  3. #3
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    c'est trés clair merci !!! mais... avec get_mem par exemple, es-ce qu'on y accede par programme C++ par exemple ?

  4. #4
    Membre éclairé
    Avatar de D[r]eadLock
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    504
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 504
    Points : 750
    Points
    750
    Par défaut
    Generallement, on accede pas directement aux primitives du systeme.
    Pour allouer de la memoire en c++, c'est new qui fait appel aux primitives system.De meme en C, c'est malloc.


    Si tu desassemble un code, ca donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    08048460 <mm>:
     8048460:       55                      push   %ebp
     8048461:       89 e5                   mov    %esp,%ebp
     8048463:       83 ec 08                sub    $0x8,%esp
     8048466:       83 ec 0c                sub    $0xc,%esp
     8048469:       6a 10                   push   $0x10
     804846b:       e8 ac fe ff ff          call   804831c <_init+0x38> 
     8048470:       83 c4 10                add    $0x10,%esp
    pour l'appel a malloc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    void mm(void){
    int *t=(int *)malloc(4*sizeof(int));
    et si tu regarde le _init+0x38 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     804831c:       ff 25 38 95 04 08       jmp    *0x8049538T
    et enfin, si on regarde 0x8049538T:
    on a des valeurs, qui doivent rediriger vers le noyan. (les parametres etant passes sur la pile (push $0x10).

  5. #5
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    je crois que cela me suffit pour l'instant
    merci bcp !!

  6. #6
    jbe
    jbe est déconnecté
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 32
    Points : 38
    Points
    38
    Par défaut
    voila une bonne explication (en anglais) sur les notions de primitives d'un noyau :

    http://www4.ncsu.edu:8030/~abdudani/...erization.html

    a+

    JB

Discussions similaires

  1. Erreur de compilation du noyau
    Par pierreg dans le forum Administration système
    Réponses: 12
    Dernier message: 31/01/2007, 19h53
  2. Problème de modules (noyau 2.6.6)
    Par Francois Trazzi dans le forum Administration système
    Réponses: 14
    Dernier message: 04/06/2004, 01h13
  3. Primitives : "bavures"
    Par delire8 dans le forum DirectX
    Réponses: 22
    Dernier message: 06/07/2003, 00h00
  4. Noyau
    Par wincroc dans le forum Administration système
    Réponses: 2
    Dernier message: 03/07/2003, 09h33
  5. Recompilation du noyau
    Par keikoz dans le forum Administration système
    Réponses: 7
    Dernier message: 18/02/2003, 00h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo