Форум: "Основная";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];
ВнизПрограмма в сессии терминального сервера Найти похожие ветки
← →
DmiSb (2005-08-23 08:32) [0]Уважаемые мастера, дайте совет.
Нужно написать программу, которую предпологается запускать в окне терминального сервера. Пользователей около 30. Запуск 30 копий программы скушает значительное количество памяти терминального сервера. Даст ли экономию памяти компиляция программы без пакетов или лучше часть общей функциональности вынести в *.dll ?
Возможно кто-то уже задавался этим вопросом или писал что-то подобное.
← →
alex_*** (2005-08-23 08:53) [1]пакеты влияют только на размер файла. внешний СОМ сервер спасет ситуацию может?
← →
DmiSb (2005-08-23 09:33) [2]А как же утверждение "...Так же, как и остальные динамические библиотеки, пакеты содержат код, который может быть использован одновременно несколькими приложениями...".
Не сильно хочется заморачиваться с СОМ сервером, другие пути существуют ?
← →
Игорь Шевченко © (2005-08-23 09:49) [3]
> Запуск 30 копий программы скушает значительное количество
> памяти терминального сервера
Это утверждение обосновано ? Память кушает не программа, а собственно терминальная сессия.
← →
DVM © (2005-08-23 12:08) [4]
> Память кушает не программа, а собственно терминальная сессия.
Память кушает программа, т.к. запускается одновременно несколько ее копий, что видно в таскменеджере.
← →
Anatoly Podgoretsky © (2005-08-23 12:10) [5]Не стоит так сильно верить диспетчеру задач.
← →
DVM © (2005-08-23 12:16) [6]
> Anatoly Podgoretsky © (23.08.05 12:10) [5]
Тогда глядите диспетчер служб терминалов - процессы
← →
Игорь Шевченко © (2005-08-23 12:27) [7]DVM © (23.08.05 12:08) [4]
> Память кушает программа, т.к. запускается одновременно несколько
> ее копий, что видно в таскменеджере.
Кроме программы для терминального сеанса запускается еще очень много программ. Например, вся подсистема Win32. Я очень надеюсь, что программа вряд ли сравнится по потреблению памяти с указанной подсистемой.
← →
DmiSb (2005-08-23 12:31) [8]Игорь Шевченко
>Кроме программы для терминального сеанса запускается еще очень >много программ. Например, вся подсистема Win32. Я очень надеюсь, >что программа вряд ли сравнится по потреблению памяти с >указанной подсистемой.
Это уж точно, но хотелось бы помочь серверу. Тогда поставим вопрос конкретно: Даст ли экономию памяти компиляция программы без пакетов ?
← →
Alexander Panov © (2005-08-23 12:44) [9]DmiSb (23.08.05 12:31) [8]
Для терминального сервера только одно решение - увеличение ОП.
Но и недостаток ее будет влиять только лишь на производительность. Не думаю, что твоя программа будет постоянно требовать актуальным огромный кусок в оперативной памяти.
Если же именно это и будет происходить, то, возможно стоит подумать о разделении программы на 2 части - по функциональности: Сервер и Клиент.
← →
BiN © (2005-08-23 12:51) [10]DmiSb (23.08.05 12:31) [8]
Даст ли экономию памяти компиляция программы без пакетов ?
Нет.
← →
Anatoly Podgoretsky © (2005-08-23 12:58) [11]DmiSb (23.08.05 12:31) [8]
Даст, незначительную, возможно тебе не удастся это увидеть.
← →
Anatoly Podgoretsky © (2005-08-23 12:59) [12]Кстати а о какой памяти ведешь речь?
← →
Slym © (2005-08-23 13:12) [13]Программа (если не упакована) 1 раз рагружается в память (и в своп) и все скока бы ее не запускали...
А вот dll нет... Она может 1 раз загрузится, а может и 30 в зависимости от настройки BASE_ADDRESS и порядка загрузки длл в программу:
может оказаться что BASE_ADDRESS уже занят и загрузчику придется перестраивать табл и соответственно занимать доп виртуальную память (ИЛИ Я ЧТО-ТО ПУТАЮ, НО ВРОДЕ ТАК)
← →
DmiSb (2005-08-23 13:14) [14]Anatoly Podgoretsky
>Кстати а о какой памяти ведешь речь?
Программа запущенная в ХР (в диспетчере задач) отъедает в среднем 15-20 Мб.
Alexander Panov
>Если же именно это и будет происходить, то, возможно стоит >подумать о разделении программы на 2 части - по >функциональности: Сервер и Клиент
Программа в принципе и есть клиент-сервер. Но часть машин совсем слабых, и мы подумали может быть на их базе организвать тонких клиентов под терминальный сервер. Потому и возник вопрос о том, сильно ли это затормозит сервер, если повесить на него 30 тонких клиентов с нашей программой.
← →
Alexander Panov © (2005-08-23 13:49) [15]DmiSb (23.08.05 13:14) [14]
Программа в принципе и есть клиент-сервер. Но часть машин совсем слабых, и мы подумали может быть на их базе организвать тонких клиентов под терминальный сервер. Потому и возник вопрос о том, сильно ли это затормозит сервер, если повесить на него 30 тонких клиентов с нашей программой.
Под Клиент-Серверной технологие не имеется ввиду терминальный доступ, а вариант, в котором основная пожирающая память часть выделена в отдельную программу, которая зхапускается в отдельном экземпляре и обеспечивает обмен с клиентскими программами, запущенными в терминальных сессиях.
← →
Игорь Шевченко © (2005-08-23 16:04) [16]Slym © (23.08.05 13:12) [13]
> Программа (если не упакована) 1 раз рагружается в память
> (и в своп) и все скока бы ее не запускали...
Неправда. Она вообще в память не загружается и тем более, не остается там.
DmiSb (23.08.05 13:14) [14]
> Программа запущенная в ХР (в диспетчере задач) отъедает
> в среднем 15-20 Мб.
Какой памяти ?
← →
Defunct © (2005-08-23 19:59) [17]Игорь Шевченко © (23.08.05 16:04) [16]
> Какой памяти ?
Ну и к чему этот вопрос? Ясно что виртуальной.
← →
Alexander Panov © (2005-08-23 20:22) [18]Defunct © (23.08.05 19:59) [17]
Ясно что виртуальной.
Кому ясно?
← →
Defunct © (2005-08-23 20:33) [19]Alexander Panov © (23.08.05 20:22) [18]
Во всяком случае мне. т.к. taskmgr в WinXP другую память показывать не умеет.
← →
Alexander Panov © (2005-08-23 20:37) [20]Defunct © (23.08.05 20:33) [19]
Во всяком случае мне.
Автор вопроса ведь не виноват в этом.
← →
begin...end © (2005-08-23 20:40) [21]> Defunct © (23.08.05 20:33) [19]
> taskmgr в WinXP другую память показывать не умеет.
Видимо, не составит труда объяснить, в чём причина различия показаний столбцов "Память" и "Виртуальная память".
← →
Defunct © (2005-08-23 20:45) [22]> Alexander Panov
ИШ imho в курсе, что отображается (в диспетчере задач), а вот автор ветки скорее всего нет.
← →
Defunct © (2005-08-23 20:52) [23]> begin...end © (23.08.05 20:40) [21]
Конечно. Memory Usage - это кол-во занятой виртуальной памяти. VM Size - зарезервированное адресное пространство ВП.
Memory Usage
In Task Manager, the current working set of a process, in kilobytes. The current working set is the number of pages currently resident in memory.
← →
Defunct © (2005-08-23 20:59) [24]> begin...end
не пользуйтесь русской виндовс. там много чего неправильно переведено.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.013 c