linux下查看运行程序的内存空间

ubuntu9.10

在程序运行是使用/proc文件系统查看程序的内存空间。

 

 

/*

   Program showes the memory map of itself.

   Author:Arthur Bryant 

   memory_map.c

   Date: 3.2, 2010

 */

#include

#include

 

/*Change the iterger to string*/

void itoa(int n, char *s)

{

char temp;

int i = 0, j;

int len;

do {

 

*(s + i++) = n % 10 + '0'; //鍙栦笅涓€涓暟瀛?

}

while ((n /= 10) > 0); //鍒犻櫎璇ユ暟瀛?

j = 0;

len = i;

i--;

/*Reverse string*/

while (j < i) {

temp = *(s + i);

*(s + i) = *(s + j);

*(s + j) = temp;

i--;

j++;

}

*(s + len) = '/0';

}

/*Build instruction*/

void make_command(char * command)

{

char s[10];

int pid;

pid = (int)getpid();

char *str1 = "cat /proc/";

char *str2 = "/maps";

 

itoa(pid, s);

strcat(command, str1);

strcat(command, s);

strcat(command, str2);

 

}

 

int main(int argc, char *argv[])

{

char command[30] = "";

make_command(command);

printf("%s/n", command);

/*run the command in shell to show you memory map*/

system(command);

 

return 0;

}

 

你可能感兴趣的:(linux下查看运行程序的内存空间)