[SYS2] Afficher l'id du process

Voir le sujet précédent Voir le sujet suivant Aller en bas

resolu [SYS2] Afficher l'id du process

Message  Hana le Jeu 29 Mar 2012, 12:43

Dans mon projet je dois récupérer l'id du process et l'afficher sur l'écran (en assembleur),

je déclare donc une variable pour contenir l'id:
Code:
pid    RESD    1      ;numéro du process
je demande au système de me donner l'id et je la stocke dans pid:
Code:
mov    eax,20          ;getpid
int    0x80
mov    [pid],eax      ;récupère l'id
ensuite je l'affiche:
Code:
mov    eax,4          ;write
mov    ebx,1          ;écran
mov    ecx,pid        ;ce qu'il faut écrire
mov    edx,4          ;longueur
int    0x80

Et à l'exécution j'obtiens un caractère inconnu <?>. Comme getpid ne peut pas échouer le problème vient forcément du write, quelqu'un pour me donner une piste ?


Dernière édition par Hana le Sam 31 Mar 2012, 01:04, édité 1 fois

Hana

Nombre de messages : 40
Prénom : Quynh Anh
Date d'inscription : 29/03/2011

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  nvs le Jeu 29 Mar 2012, 13:49

binaire vs. texte...







Suspect

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  pbt le Jeu 29 Mar 2012, 16:28

+'0' si ton pid est <10 ... mais ce ne sera pas la cas ;-)

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  Hana le Jeu 29 Mar 2012, 17:04

J'ai ajouté une boucle pour la conversion du binaire en ascii:

*edit*
Code:
        mov    eax,20          ;getpid
        int    0x80
        mov    [pid],eax      ;récupère l'id
        mov    ebx,3          ;ebx est un compteur
        mov    ecx,10          ;ecx=10 pour la division
        mov    esp,pidAscii

.conversionF:
        mov    edx,0
        div    ecx            ;eax=eax/10, reste dans edx
        add    dl,'0'          ;conversion en ascii
        add    esp,ebx        ;ajuste le pointeur
        mov    [esp],dl        ;sauvegarde dans pidAscii
        inc    ebp
        dec    ebx
        mov    esp,pidAscii
        cmp    eax,0          ;tant que eax!=0 on continue la conversion
        jne    .conversionF
Ca a l'air de fonctionner correctement. Est-ce la bonne façon de procéder ?

Hana

Nombre de messages : 40
Prénom : Quynh Anh
Date d'inscription : 29/03/2011

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  galaeron le Jeu 29 Mar 2012, 20:37

A première vue, tu semble avoir compris la logique.
Voici une petite fonction codée par M. JcJ pour te donnée une idée de ce que lui fait.
http://pastie.org/3693358

galaeron

Nombre de messages : 113
Age : 28
Prénom : Arthur
Statut : 3IR12
Date d'inscription : 29/06/2011

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  nvs le Jeu 29 Mar 2012, 22:00

sinon, en c, printf le fait assez bien...






Rolling Eyes

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  michaelvd le Sam 31 Mar 2012, 23:18

galaeron a écrit:A première vue, tu semble avoir compris la logique.
Voici une petite fonction codée par M. JcJ pour te donnée une idée de ce que lui fait.
http://pastie.org/3693358
Aahh, le bon vieux printd de première...

michaelvd

Nombre de messages : 117
Age : 28
Prénom : Michaël
Statut : 2ième Réseaux/Télécom
Localisation : Bruxelles
Date d'inscription : 16/09/2009

http://www.binturong.be

Revenir en haut Aller en bas

resolu Re: [SYS2] Afficher l'id du process

Message  Contenu sponsorisé Aujourd'hui à 10:57


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum