Вопрос про фоновый режим для DOSприложения

Aлексей

Новичок
Поиском пользовался, но ответа не нашел :(
Извиняюсь, новичек в этом деле ...
Вот какая задача:
Нужно запустить в фоновом режиме несколько DOS-программ (fox-приложение), которые что-то достаточно долго делают, а потом завершают работу.

1. Запускаю так:
pclose(popen("z:/fox/foxpro26/foxr +x -t -cz:/fox/work/config.fp z:/fox/work/w_work.fxp", "r");
Fox-программа стартует, но нет возврата в php-программу

2. Тогда запускаю через ICEAffinity.exe:
pclose(popen("z:/fox/foxpro26/ICEAffinity.exe 3 z:/fox/foxpro26/foxr +x -t -cz:/fox/work/config.fp z:/fox/work/w_work.fxp", "r");
Fox-программа стартует, идет возврат в php-программу, т.е. все нормально работает, но см.далее ...

3. DOS-программы "забирают" оч.много оперативной памяти. А одновременно работать должны несколько экземпляров DOS-программы. Уже три одновременно работающих DOS-программы еле-еле ворочаются.

4. Для оптимизации использования оперативной памяти DOS-программами использую программу
time60.exe. Ее запуск прописывается в autoexec.nt. Выручает О Ч Е Н Ь !

Но тут и кроется проблема.
Когда DOS-программы из php запускаю под time60.exe, они работают великолепно, но при их завершении
идет вот такое системное сообщение:
"Инструкция по адресу "0x5801a16a" обратилась к памяти по адресу "0x0a0defac". Память не может быть "read".

Вот такая беда. Сломал голову... :(((
Спасибо!
 
Сверху