The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"shmget и fork"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"shmget и fork"  
Сообщение от Rublev on 10-Янв-07, 13:26 
Здравствуйте

после каждого shmget память родителя увеличивается на 4К (похоже на размер до округленного сегмента PAGE_SIZE) - соответственно каждый потом увеличивается в размере на 4К. После долгого цикла создания, память постепенно сьедается.

Подскажите откуда беруться эти 4К и как их очищать в родителе/потомках

Спасибо заранее!

int shm_id;

for (i = 0; i < 500; i++) {

    if ((shm_id = shmget (IPC_PRIVATE, 1, IPC_CREAT|0666)) < 0) {
        perror("shared memory - create pipe status"); //exit(1);
        exit(0);
    }

                
    if (((int *) shmat (shm_id, 0, 0)) == NULL) {
        perror("shared memory attach - create pipe status");
        exit(0);
    }
    
    pid = fork();

    if (pid < 0) {
        perror("fork");
        printf("exit %d\n", i);
        exit(1);
    } else if (pid > 0) {
        printf("parent, forked pid: %d\n", pid);
    } else {
        printf("child: %d, pid: %d\n", i, getpid());
        sleep(10);
        exit(1);
    }

}

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

  • shmget и fork, BigHo, 17:20 , 10-Янв-07, (1)  
    • shmget и fork, Rublev, 10:29 , 11-Янв-07, (2)  

Сообщения по теме [Сортировка по времени, UBB]


1. "shmget и fork"  
Сообщение от BigHo on 10-Янв-07, 17:20 
shmget следует использовать крайне осторожно. Лучше посмотри в сторону mmap/munmap/madvise.
Их кстати можно комбинировать с shm* вызовами
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "shmget и fork"  
Сообщение от Rublev on 11-Янв-07, 10:29 
>shmget следует использовать крайне осторожно. Лучше посмотри в сторону mmap/munmap/madvise.
>Их кстати можно комбинировать с shm* вызовами


спасибо, уже смотрю

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру