powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Что-то с ПАМЯТЬЮ моей стало
8 сообщений из 33, страница 2 из 2
Что-то с ПАМЯТЬЮ моей стало
    #33480633
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasilis onstat-2. Если бы это был адрес в пространстве ОС , то для каждого SERVERNUM нужно было бы указывать свой SHMBASE.
SHMBASE - условный, а не реальный адрес и именно в совокупности с SERVERNUM и определяет уникальный адрес, так что никакого противоречия, IMHO.

Когда стратует первый просесс он запрашивает у ОС область разделяемой памяти. И подключает ее по адресу SHMBASE в свое
адресное пространство.
Последующие процессы CPUVP AIOVP etc просто подключают к своему адресному пространству эту память и совмесно ее используют.
Это стандартный Unix механизм по работе с разделяемой паматью.
Я не вижу смысла разрабатывать свой велосипед в данном направлении.
Есть хорошая статейка которая прояснит основные принципы рабты IPC
в unix Interprocess Communication
И насколько я знаю MS
в этом направлении принципиально ничего нового не придумал.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33480733
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-И насколько я знаю MS в этом направлении принципиально ничего нового не придумал.Вот только зачем ipc информиксу под ms? И на что влияет SHMBASE под вин. А он влияет.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33480833
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денис onstat-И насколько я знаю MS в этом направлении принципиально ничего нового не придумал.Вот только зачем ipc информиксу под ms? И на что влияет SHMBASE под вин. А он влияет.

IPC это не только разделяемая память, это еще и семафоры и очереди.
Без симафоров нормальное многопроточное приложение не напишешь.
А разделяемую память под виндой информикс использует для работы onmode
& onstat. IHMO
Я не спец по системному программированю в винде, и не знаю
как можно пустить другой процесс в память приложения без использования разделяемой памяти(В unix это точно не получится).
Думаю Разделяемая память - самый простой и стандартный вариант для
совмесной работы приложений(программ) с разным кодом в любой ОС.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33480920
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-...
А разделяемую память под виндой информикс использует для работы onmode
& onstat. IHMO
...И точно, торможу.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33485412
zaiets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может что-то упустил, но вот ссылка на IBM по поводу памяти на виндах:
http://www-1.ibm.com/support/docview.wss?rs=630&context=SSGU8G&dc=DB520&uid=swg21179997&loc=en_US&cs=utf-8〈=en
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33487126
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zaietsМожет что-то упустил, но вот ссылка на IBM по поводу памяти на виндах:
http://www-1.ibm.com/support/docview.wss?rs=630&context=SSGU8G&dc=DB520&uid=swg21179997&loc=en_US&cs=utf-8〈=en
Много лет наблюдаю за Informix, а теперь и за IBM, и складывается впечатление, что на Виндовую платформу они всегда "забивали" и даже саппорт не всегда корректно пишет свои рекомендации. Куча примитивных багов IDS на Windows исправляются очень долго, невнятные инструкции и т.п., т.е. впечатление, что до Винды "руки доходят" в последнюю очередь.
Вот и здесь, я бы не очень доверял тому, что написано в статье.
Пример приведен только для Win2003, не упоминается о ключике /3GB, тот же РАЕ, насколько я знаю, работает по умолчанию не только на Win2003, а и на WinХР+SP2, версии IDS упоминаются только 9.4 и 9.5 (!?)... А почему нельзя на 9.3 ? А ведь можно...
К сожалению, проверить положения статьи на практике сейчас не могу - большие инстансы стоят только у клиентов, да и то старые версии и IDS и Win.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33487249
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробую вернутся еще раз к SHMBASE :)
Вроде бы правильно говорите, но чего то я все же не понимаю, наверное...
Может идет путаница двух параметров SHMBASE и INFORMIXSHMBASE ?
А ведь "They are referring to two different types of shared memory".
А может путаница одноименного параметра ядра в Unix и Informix ?

Непонятно, почему тогда существует значение SHMBASE = 0x0 (кажется, на HP/UX мелькало)...
Есть SHMBASE 0xa000000 , 0x10000000L, 0x0c000000, 0x20000000, 0x80000000, 0x50000000
Почему адрес такой разный и от чего он зависит ? Даже на одной платформе рекомендации могут меняться в зависимости от внешних условий , т.е. ОС...

Вот еще...(Feb 09, 2004, Tatiana Ilinikh)
mashine notes к 9.40UC3.
TI> В ids_machine_notes_9.40.txt прочитала, что надо установить
TI> SHMBASE 0x10000000L, в то время как
TI> 'The default start address for shared libraries on Linux is 0x40000000',
TI> Therefore, the maximum available space for shared memory is 768 MB
TI> when using 0x10000000L as the SHMBASE value.
TI> И еще мне непонятно, зачем по умолчанию выставлять 0x44000000L,
TI> если можно 0x10000000L? И что лучше, оставить, как есть по умолчанию,
TI> или все же перевести в 0x10000000L?
В исходниках ядра (include/asm/page.h) есть такой вот комментарий:
* A __PAGE_OFFSET of 0xC0000000 means that the kernel has
* a virtual address space of one gigabyte, which limits the
* amount of physical memory you can use to about 950MB.
* If you want more physical memory than this then see the CONFIG_HIGHMEM4G
* and CONFIG_HIGHMEM64G options in the kernel configuration.
#define __PAGE_OFFSET (0xC0000000)

И наконец,
The default load address for a dynamic link library (DLL) on Windows NT
is 0x10000000. Informix Dynamic server uses a default shared memory base
address (SHMBASE) of 0x0C000000. This means that shared memory in the
engine can grow up to 0x10000000, which corresponds to an additional 64
MB.
If the Dynamic Server shared memory at startup is more than or close to 64
MB, a clash of addresses is possible. (тем не менее сервер будет работать даже с начальным сегментом в 256М) In this case, set the SHMBASE value in
ONCONFIG to a higher value, for example 0x20000000.
To find the Dynamic Server shared memory size, run "onstat -g seg" and view
the total memory.

Кто бы разложил все по полочкам и внятно объяснил ?
А то у меня не складывается четкая и ясная картина :(
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33488236
Quasimodo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот это слегка проливает свет на линуксы :

http://www.puschitz.com/TuningLinuxForOracle.shtml#IncreasingSpaceForLargerSGA
...
Рейтинг: 0 / 0
8 сообщений из 33, страница 2 из 2
Форумы / Informix [игнор отключен] [закрыт для гостей] / Что-то с ПАМЯТЬЮ моей стало
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]