IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當前所在位置:首頁操作系統(tǒng)LINUX → 父子進程共享內(nèi)存問題

父子進程共享內(nèi)存問題

時間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評論(0)

  #include <sys/mman.h>

  #include <sys/types.h>

  #include <fcntl.h>

  #include <unistd.h>

  #include <stdlib.h>

  #include <stdio.h>

  int

  main (int argc, char *argv[])

  {

  pid_t cpid;

  int *data = NULL;

  int fd;

  fd = open ("/dev/zero", O_RDWR);

  if (fd < 0) {

  perror ("open /dev/zero");

  exit(1);

  }

  data = (void *) mmap (0, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);

  if (data == MAP_FAILED) {

  perror ("mmap");

  exit(2);

  }

  *data = 0;

  close (fd);

  cpid = fork ();

  if (cpid == 0)

  {

  for (;;)

  {

  sleep (1);

  printf ("Child-0: %d\n", *data);

  }

  } else if (cpid > 0)

  {

  cpid = fork ();

  if (cpid == 0)

  {

  for (;;)

  {

  sleep (1);

  (*data)++;

  printf ("Child-1: %d\n", *data);

  }

  } else if (cpid > 0)

  {

  for (;;)

  {

  sleep (1);

  printf ("Parent-0: %d\n", *data);

  }

  }

  }

  munmap (data, 4096);

  return 0;

  }

關鍵詞標簽:進程共享,內(nèi)存

相關閱讀

文章評論
發(fā)表評論

熱門文章 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程使用screen管理你的遠程會話使用screen管理你的遠程會話GNU/Linux安裝vmwareGNU/Linux安裝vmware如何登錄linux vps圖形界面 Linux遠程桌面連如何登錄linux vps圖形界面 Linux遠程桌面連

相關下載

人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址linux tc實現(xiàn)ip流量限制dmidecode命令查看內(nèi)存型號linux下解壓rar文件安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程Ubuntu linux 關機、重啟、注銷 命令lcx.exe、nc.exe、sc.exe入侵中的使用方法查看linux服務器硬盤IO讀寫負載