The OpenNET Project / Index page

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

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

"Разделяемая память или очереди сообщений"  
Сообщение от patriot_sd (ok) on 16-Июн-06, 11:36 
Есть некоторый сетевой демон. Входящие сообщения обрабатываются отдельным процессом. Есть некоторые данные, которые должны храняться в любом случае в памяти; доступ к этим данным должны иметь все процессы-обработчики (как для чтения, так и для записи). Где лучше (лучше с точки зрения быстродействия) организовать хранение этих данных в shared memory и синхронизировать с помощью семафоров или массив в отдельном процессе, с которым другие будут взаимодейтсвовать с помощью очереди сообщений.

Данные представляют из себя массив максимум из 10000 элементов. Каждый элемент структура размером 1Кб. Массив должен создаваться сортированным по одному из полей. Предполагается, что работать все будет на мультипроцессорной системе. Язык программирования с++

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

 Оглавление

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


1. "Разделяемая память или очереди сообщений"  
Сообщение от chip email(ok) on 16-Июн-06, 16:25 
>Есть некоторый сетевой демон. Входящие сообщения обрабатываются отдельным процессом. Есть некоторые данные,
>которые должны храняться в любом случае в памяти; доступ к этим
>данным должны иметь все процессы-обработчики (как для чтения, так и для
>записи). Где лучше (лучше с точки зрения быстродействия) организовать хранение этих
>данных в shared memory и синхронизировать с помощью семафоров или массив
>в отдельном процессе, с которым другие будут взаимодейтсвовать с помощью очереди
>сообщений.

С точки зрения быстродействия - разделяемая память. Однако, на мой взгляд, многое будет определяться в этом случае блокировками и необходимостью нескольких процессов в модификации данного массива. Если большинство обращений - на чтение, то shared memory будет хорошим решением.


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

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

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




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

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