Приложения требуют больше памяти

Софт только для использования в DOS

Приложения требуют больше памяти

Сообщение LLIMEJIKO » 05 дек 2010, 03:53

Привет всем! На днях я сделал себе флешку с FreeDos, напихал софта, а многий из него не работает, утверждая, что на флешке недостаточно памяти для работы с программой. В чём может быть причина? Форматировал стандартным FAT.
Cast off the crutch that kills the pain,
The red flag wavin' never meant the same,
the kids of tomorrow don't need today,
When they live in the sins of yesterday.
Аватара пользователя
LLIMEJIKO
Опытный даунгрейдер
 
Сообщения: 22
Зарегистрирован: 21 ноя 2010, 17:10
Откуда: Из модема
Железо: Intel Atom 1.60 ггц, ОЗУ 3 ГБ, Nvidia ION 512 мб, 450 гб места

Re: Приложения требуют больше памяти

Сообщение Rodegast » 05 дек 2010, 21:07

Может тебе верхней памяти не хватает? Какой размер раздела?
Rodegast
Мастер Даунгрейда
 
Сообщения: 182
Зарегистрирован: 15 сен 2009, 15:40

Re: Приложения требуют больше памяти

Сообщение LLIMEJIKO » 06 дек 2010, 19:08

2 гб, свободно 1.73
Cast off the crutch that kills the pain,
The red flag wavin' never meant the same,
the kids of tomorrow don't need today,
When they live in the sins of yesterday.
Аватара пользователя
LLIMEJIKO
Опытный даунгрейдер
 
Сообщения: 22
Зарегистрирован: 21 ноя 2010, 17:10
Откуда: Из модема
Железо: Intel Atom 1.60 ггц, ОЗУ 3 ГБ, Nvidia ION 512 мб, 450 гб места

Re: Приложения требуют больше памяти

Сообщение Daemon » 07 дек 2010, 14:35

Интересует список неработающих программ и содержание autoexec.bat and config.sys
В пламени брода нет... (С) Егор Летов
Аватара пользователя
Daemon
Мастер Даунгрейда
 
Сообщения: 353
Зарегистрирован: 16 янв 2009, 16:26
Железо: 80286 и выше

Re: Приложения требуют больше памяти

Сообщение LLIMEJIKO » 08 дек 2010, 00:18

файл config.sys отсутствует, а содержание autoexec.bat вот:
Код: Выделить вс
programs\tools\mouse\dos\gmouse
programs\tools\kill
programs\filema~1\norton\nc

Не работают: wolf3d, red alert, djvu и т. д.
Cast off the crutch that kills the pain,
The red flag wavin' never meant the same,
the kids of tomorrow don't need today,
When they live in the sins of yesterday.
Аватара пользователя
LLIMEJIKO
Опытный даунгрейдер
 
Сообщения: 22
Зарегистрирован: 21 ноя 2010, 17:10
Откуда: Из модема
Железо: Intel Atom 1.60 ггц, ОЗУ 3 ГБ, Nvidia ION 512 мб, 450 гб места

Re: Приложения требуют больше памяти

Сообщение Daemon » 08 дек 2010, 11:36

Что и требовалось доказать. Верхней памяти нет вообще, базовая забита. Вот config and autoexec с моей боевой досовской флеши:
BUFFERS=80
FILES=80
DEVICE=C:\DOS\HIMEM.SYS
device=c:\dos\emm386.exe noems
dos=high,umb
COUNTRY=007,866,C:\DOS\COUNTRY.SYS
DEVICEHIGH=C:\DOS\DISPLAY.SYS CON=(EGA,,2)
STACKS=9,256
SHELL=C:\COMMAND.COM C:\ /P

ECHO OFF
c:\dos\SMARTDRV.EXE /L
PATH C:\DOS;C:\VC
lh rkega
lh AMOUSE.COM
lh \vc\vc
В пламени брода нет... (С) Егор Летов
Аватара пользователя
Daemon
Мастер Даунгрейда
 
Сообщения: 353
Зарегистрирован: 16 янв 2009, 16:26
Железо: 80286 и выше

Конфигурация DOS

Сообщение SergeCpp » 16 апр 2011, 22:41

Нашёл сохранившиеся распечатанным на бумаге CONFIG.SYS и AUTOEXEC.BAT, которые использовались в течение нескольких лет на множестве машин с MS-DOS 6.22 в одной организации (сеть NOVELL 3, объёмные приложения на FOXPRO).

Дело было в конце 90-х — начале 2000-х, помню, что много тогда экспериментировал с настройкой этих файлов, так как нужно было как можно больше памяти. Интернета не было, читал всякую документацию (из QEMM всё прочитал), MSDN от VS5 и VS6.

С этой конфигурацией машины (около 20 штук) работали несколько лет. Видимо, посчитав, что стоит сохранить результаты этих трудов по настройке, я и распечатал тогда файлы. И — вот, бумага оказалась долговечнее всего.

Очень жаль, что сохранились только три листа распечаток, помню, что были и дискеты... Сейчас перепечатаю самое основное тут для истории.

Вместо EMM386 использовался QEMM, версию которого я, к сожалению, уже забыл (вроде, 5.0). Помню, что в QEMM была программа, которая "настраивает всё сама". При детальном разбирательстве (по чтению документации) оказалось, что настройка "вручную" — гораздо лучше. Припоминаю, что в каталоге QEMM был какой-то конфигурационный файлик, который тоже надо было настроить (dos-up.dat?).

Ещё в распечатках этих упоминаются программы, про которые я уже и забыл совсем, увы.

// так буду писать сегодняшние комментарии

Код: Выделить вс
CONFIG.SYS
----------
[common]
DOS     = HIGH
STACKS  = 0,0
BUFFERS = 1
FCBS    = 1
NUMLOCK = ON

rem * русские буквы в именах файлов
rem * COUNTRY=007,866,c:\dos\country.sys

[qemm]
SHELL=C:\QEMM\LOADHI.COM /R:2 C:\DOS\COMMAND.COM C:\DOS /E:512 /P
device=c:\qemm\dosdata.sys
device=c:\qemm\qemm386.sys EMS:N FRAME=NONE RAM ROM REGION=1 NW3 BF:N BC:1F:F1:1F:1F:1C:1F // перепроверено
device=c:\qemm\dos-up.sys @c:\qemm\dos-up.dat

[Menu]
menuitem=DOS, DOS
menuitem=NET, Net
menuitem=CV, CV    // конфигурация для работы в отладчике Code View
menudefault=NET,4
menucolor=15,1

[DOS]
include=qemm
FILES=40

[NET]
include=qemm
FILES=140
LASTDRIVE=Z

[CV]
FILES=40
SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P
device=c:\dos\himem.sys

AUTOEXEC.BAT
------------
@echo off

PATH C:\ME;C:\UTIL;C:\DOS;C:\NC
SET TEMP=C:\TEMP
SET TMP=C:\TEMP
SET NC=C:\NC

c:\dos\scandisk.exe c: d: /autofix /nosave /nosummary
if ERRORLEVEL 1 goto bad_scan
del c:\scandisk.log
:bad_scan

rem * c:\qemm\vidram.com on
rem * pause

c:\qemm\loadhi.com /r:1 c:\nu\diskmon.exe /light+            > nul
c:\qemm\loadhi.com /r:2 c:\util\keyrus\keyrus.com            > nul
c:\qemm\loadhi.com /r:2 c:\dos\smartdrv.exe /u /q 16384 1024 > nul

goto %config%

:DOS
set config=
goto end

:NET
set config=
call c:\pcntnw\startnet.bat // там, помню, что-то подобное :CV ниже
goto end

:CV
set config=
c:\pcntnw\lsl.com       > nul
c:\pcntnw\pcntnw.com    > nul
c:\pcntnw\ipxodi.com /A > nul

:end
c:
cd \
util\map.com /M > nul // вроде бы, эта программа тут объединяла последовательные свободные блоки памяти
cls
nc\nc.exe

Карта памяти. Тоже распечатал тогда, частично здесь наберу — самое важное.
Какой программой выводилась эта карта — вроде бы, той map.com, что в конце AUTOEXEC.BAT.
Какая тут конфигурация из трёх — вроде, NET (VLM загружен, он, кажется, из startnet.bat).
-----------------------------------------------------------------------------------------

  Type MCB  PSP  Bytes  Names    ...
  ---- ---- ---- ------ -------- ...
  ...
  Data 0106 0008    784 Dos data
       0107 Dev     768 QEMM386
  Data 0138 0008      0 Dos data
  Data 0139 0008     64 Dos data
  Code 013E 013F     96 LOADHI
  Env  0145 C805    512 COMMAND
  Env  0166 02C5    128 MAP
* Free 016F 0000     80 Free
  Code 0175 0176   5344 VLM
  Code 02C4 02C5   3200 MAP
* Free 038D 0000 640800 Free // 625 килобайт

       A000

  Code B000 B001   2816 QEMM386
  Code B0B1 B0B2    208 DOS-UP
  Code B0BF B0C0   5536 DOSDATA
  Code B21A B21B   7984 FILES
  Code B40E B40F     80 FCBS
  Code B414 B415    512 WKBUFFER
  Code B435 B436   2288 LASTDRIV
  Code B4C5 B4C6    144 INSTALL
  Code B4CF B4D0   9600 DISKMON
* Free B728 0000   3424 Free
  Data B7FF 0108  65536 QEMM386
  ...
  Code DD9F DDA0  36176 UMB
  ...
* Free EA4E 0000  23312 Free

       F000
Аватара пользователя
SergeCpp
Мастер Даунгрейда
 
Сообщения: 484
Зарегистрирован: 11 апр 2011, 13:49
Откуда: At Home

Re: Приложения требуют больше памяти

Сообщение Daemon » 18 апр 2011, 14:39

А в связи с чем так жестоко придушен stacks, да и один буфер всего разрешен? Я бы еще смартдрайв попользовал...
В пламени брода нет... (С) Егор Летов
Аватара пользователя
Daemon
Мастер Даунгрейда
 
Сообщения: 353
Зарегистрирован: 16 янв 2009, 16:26
Железо: 80286 и выше

Конфигурация DOS

Сообщение SergeCpp » 18 апр 2011, 17:53

Про STACKS тогда много противоречивого читал, вот кое-что (файл сегодня скачал, однако помню, что тогда подобное же читал):

The STACKS=0,0 line actually speeds up your system.
If you find out that your Windows 3.1x/95 programs won't need stack handling,
set STACKS to 0 in your CONFIG.SYS:

STACKS=0,0

to save memory space.

Файл: ftp://ftp.elf.stuba.sk/pub/pc/text/w31-10.zip (EMM386.TXT в архиве).

Тут про Win, а тогда про DOS подобное читал. Оказалось, что работало без ошибок.

Про BUFFERS и FCBS тоже что-то читал, да и по размышлении: SMARTDRV-то всё кэширует. Эксперименты показали, что работает хорошо.

SMARTDRV установлен, строка в AUTOEXEC.BAT:
c:\qemm\loadhi.com /r:2 c:\dos\smartdrv.exe /u /q 16384 1024 > nul

P.S. QEMM, вроде бы не 5, а 7 был, всё никак не вспомню.

P.P.S. В файле помощи от DOS написано про BUFFERS:

1. BUFFERS — Notes: If you are using SMARTDRV.EXE, either use a smaller value for BUFFERS,
or do not specify a BUFFERS command at all.

2. BUFFERS — Syntax: The default setting for the number of disk buffers
depends on the configuration of your system, as shown in the following table:

Код: Выделить вс
Configuration          Buffers  Bytes

128 K to 255 K of RAM   5       2672
256 K to 511 K of RAM  10       5328
512 K to 640 K of RAM  15       7984


Из 1. и 2. заключаем, что при использовании SMARTDRV
меньше памяти будет использовано при BUFFERS = 1
(насчёт BUFFERS = 0 — не помню уже, что было).

Там рекомендуется BUFFERS = 10 при использовании SMARTDRV.

Вот ещё кое-что: "Unfortunately DOS looks through all its buffers
before going to the disk cache, so you can speed up performance
by reducing the number of buffers it has to search.
With SMARTDrive, about 10 read-write buffers and no look-ahead buffers
is usually sufficient (and is Microsoft's recommendation).".

Это отсюда: http://www.tcs.org/ioport/read9711.htm

Буферы "look-ahead", про которые говорится — это, может,
"secondary buffers" из справки DOS (параметр "m": BUFFERS = n,[m]).
По умолчанию m = 0.

Ага: "The second parameter specifies a secondary buffer.
This secondary buffer is a read-ahead buffer,
loading more data than may have been called for.".

Это отсюда: http://bellevuecollege.edu/distance/cs110rh/IT217/week04/22_start.htm

Там же: "Warning — Setting BUFFERS= to more than 20 may cause SMARTDRV
to load into conventional memory.".
Аватара пользователя
SergeCpp
Мастер Даунгрейда
 
Сообщения: 484
Зарегистрирован: 11 апр 2011, 13:49
Откуда: At Home

Re: Приложения требуют больше памяти

Сообщение Daemon » 19 апр 2011, 11:13

Ну да, с параметрами стека в досе много непонятного было. У меня привычка прописывать его явным образом появилась с тех пор, как я замучался с непонятными глюками софта для цифрового осциллографа. Он начинал нормально работать только с явным указанием стека 9, 256. Хотя это и так дефолтное значение. Было это с досом 6.22, а вот с досом от win98 этот глюк пропал.
Проглядел я строчку со смартдрайвом ) Немного поэксперементировал сейчас, действительно при загруженном смартдрайве игры с количеством буферов практически не оказывают влияния на скорость работы (разница в пределах погрешности)
В пламени брода нет... (С) Егор Летов
Аватара пользователя
Daemon
Мастер Даунгрейда
 
Сообщения: 353
Зарегистрирован: 16 янв 2009, 16:26
Железо: 80286 и выше

STACKS

Сообщение SergeCpp » 19 апр 2011, 17:21

По поводу значений по умолчанию для STACKS:

"MS-DOS 3.3 and later use special case codes that check for PC, PC XT, and PC Convertible.
If any of these is detected, STACKS defaults to 0,0. Otherwise, STACKS defaults to 9,128."

http://support.microsoft.com/kb/84300

Посмотрел help от dos, там почти то же самое (IBM PC, IBM PC/XT, IBM PC-Portable: 0,0; остальные: 9,128).

Так что, действительно, "в случае чего" лучше уж явно указать.
Аватара пользователя
SergeCpp
Мастер Даунгрейда
 
Сообщения: 484
Зарегистрирован: 11 апр 2011, 13:49
Откуда: At Home

Программа MAP

Сообщение SergeCpp » 20 апр 2011, 12:00

Нашёл программу MAP, с помощью которой сделана таблица с распределением памяти из сообщения выше:

MAP.RAR
(3.11 Кб) Скачиваний: 386

Код: Выделить вс
C:\Z>map /?

        Memory map  release 1.72
                by SEN, Kemerovo 1992,1993.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        /M     - merge free blocks
        /V     - verbose map
        /Rxxxx - release memory
        /E     - EMM status

SEN — автор Hiew.

P.S. Программа была в каталоге C:\WINDOWS\COMMAND, помещённая туда давным давно.
Аватара пользователя
SergeCpp
Мастер Даунгрейда
 
Сообщения: 484
Зарегистрирован: 11 апр 2011, 13:49
Откуда: At Home

Re: Приложения требуют больше памяти

Сообщение Daemon » 20 апр 2011, 13:29

Ну, значит перепутал дефолтное значение, подзабыл уже кое-что...
В пламени брода нет... (С) Егор Летов
Аватара пользователя
Daemon
Мастер Даунгрейда
 
Сообщения: 353
Зарегистрирован: 16 янв 2009, 16:26
Железо: 80286 и выше

Re: Приложения требуют больше памяти

Сообщение SergeCpp » 05 май 2011, 16:55

Несколько интересных ссылок относительно памяти (информация на английском языке):

MS-DOS 6.xx MEMory Specs: http://www.mdgx.com/mem6.htm
MS-DOS 7.xx MEMory Specs: http://www.mdgx.com/mem7.htm

Драйвер UMB для DOS и Win 95/98: http://www.uwe-sieber.de/umbpci_e.html

UMBPCI.SYS is a FREEware MS-DOS/MS Windows 9x/3.xx UMB (Upper Memory Block) driver
(MS HIMEM.SYS extender) for Intel, ALI, VIA and SiS PCI/AGP chipsets.

It is a replacement for EMM386.

It needs only 160 Bytes of low memory, that's all!

Изображение

Есть ограничения:
UMBPCI is chipset dependent and brings several restrictions. Don't use it without a good reason,
especially not on boot media which shall work on several different computers.

Дата последнего изменения UMBPCI.SYS: 22.05.2010

Ещё страничка про UMBPCI.SYS: http://www.mdgx.com/umb.htm
Аватара пользователя
SergeCpp
Мастер Даунгрейда
 
Сообщения: 484
Зарегистрирован: 11 апр 2011, 13:49
Откуда: At Home


Вернуться в Программы для DOS

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1