Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.18;
Скачать: CL | DM;

Вниз

Программа в сессии терминального сервера   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.064 c
10-1102629822
turonix
2004-12-10 01:03
2005.09.18
Создание Excel файла


14-1124526656
Веретенников
2005-08-20 12:30
2005.09.18
Оцифровка видио


3-1123485949
Zaero
2005-08-08 11:25
2005.09.18
При изменении информации, размер *.mb файла не уменьшается!


14-1124569059
ronyn
2005-08-21 00:17
2005.09.18
Кто знает где русская справка по DS Pack и сопутствующему есть


9-1116673417
Кирилл
2005-05-21 15:03
2005.09.18
Direct Sound