Программное увеличение свободной RAM

Материал из PDA Prime_wiki

Forum Link.png Обсуждение на форуме.

Проверялось на Dell Axim X51v A12 с целью запуска Quake. Эти советы подойдут для любого приложения и любого кпк под управлением Windows Mobile 5/Windows Mobile 6 (Возможно Windows Mobile 2003)

Приведенные ниже операции по освобождению RAM с высокой вероятностью абсолютно безопасны для КПК. Проделав их Вы не лишитесь гарантии производителя. А при любом неприятном исходе поможет хард-резет.

1 этап - Подготовка

Перво-наперво: делаем бэкап всей системы, чтобы затем вернуться к тому состоянию в котором сейчас ваш КПК, так как впереди предстоит сделать хард-резет.

Далее: необходимо скачать программы, которые нам пригодятся:

Также нам понадобится картинка 1х1 формата bmp. монохромная. Делаем ее в Paint (создаем картинку, меню рисунок-атрибуты-точки, укажите ширину 1 и высоту 1, ок, затем сохраните как монохромный bmp).

Копируем нужные нам .CAB файлы и картинку на карту памяти. (у Oxios Memory в подпапке CAB\PocketPC или CAB\Smartphone - выберите подходящий; у Tweaks2K2 файл tweaks2k2.Arm 1100 (4K) v3.00.CAB)

2 этап - Действия для освобождения RAM

1) Хард-резет

Он необходим. Чистая система = нет мусора в памяти. В Axim X51v он делается так: нажимаем одновременно Reset и Power, подтверждаем выполнение хардрезета (жмем кнопку Контакты (вторая)). Ждем загрузки, калибруем экран, настройки Lock пропускаем (Skip).

2) Установка приложений

С помощью стандартного File Explorer с карты памяти, запуская CAB-файлы, устанавливаем перечисленные выше программы (Registry add-in ставим после Explorer) во внутреннюю память КПК.

3) Background

Копируем картинку 1х1 во внутреннюю память кпк (например My Documents), затем открываем эту картинку с внутренней памяти и делаем фоновым рисунком для рабочего стола, устанавливая 0% прозрачность.

4) Настройка Windows Mobile 5

Производим настройку Windows Mobile 5 стандартными средствами (Start->Settings).

  • Buttons> Назначаем на кнопку WiFi (#6) Resco File Explorer; на кнопку Record (#5) Tweaks2k2 .NET.
  • Input> Word Complection> Откл предложение слов
  • Menus> Отключаем ВСЕ пункты
  • Sounds & Notifications> Снимаем все галки, на второй вкладке так же
  • Today> Items> Снимаем все галки

Переходим на вкладку System:

  • Error Reporting> Отключаем (Disable)
  • GPS> Access> Снимаем галку
  • Screen> ClearType> Отключаем

Переходим на вкладку Connections:

  • USB to PC> Снимаем галку

5) StartUp

Очищаем содержимое папки Windows\StartUp: жмем кнопку WiFi (не забыли что это теперь эксплорер?) В меню File>Options>Browser выбираем Show all files. (так же советую настроить двухпанельный вид для удобства) Переходим в указанную выше папку и очищаем ее от всех файлов.

6) Tweaks2k2

Запускаем Tweaks2k2 нажав кнопку Record. Скорей всего придется заново запускать эту программу, по ее же просьбе. Потом в меню Tweaks переходим:

  • Keyboard Tweaks> Hide> Снимаем все галки
  • System Tricks> System Tricks> Collection 1> Снимаем единственную галку
  • System Tricks> Clear Recent Prog. List
  • System Tricks> Today Soft Keys> Жмем на иконку папки и указываем Program Files-Oxios-Memory-CloseApps.exe; Apply; Так же на проделайте со следующей настройкой, но укажите местоположение q3ce.exe (в папке с Quake3) (или требуемого вам приложения); Apply.

Теперь выходите (Exit), предложат перезагрузиться - соглашайтесь.

7) Уменьшение объема кэша карты памяти

Q: Как перейти в реестр?
A: Жмем кнопку WiFi чтобы запустить Resco File Explorer.
   В нем переходим на самый верхний уровень чтобы можно было перейти в реестр (My Registry).

В реестре переходим в ветку: HKEY_LOCAL_MACHINE\System\StorageManager\FATFS Находим ключ CacheSize и меняем его значение на 128. Это задаст кэш карты памяти вручную равным 64кб RAM (128/2=64[кб]).

8) Снижение кэша шрифтов и отключение ClearType

В реестре переходим в ветку: HKEY_LOCAL_MACHINE\System\GDI\GLYPHCACHE Меняем значение Limit на 1024.

На всякий пожарный отключаем ClearType: HKEY_LOCAL_MACHINE\System\GDI Меняем значение ClearType на 0.

9) Отключение сервисов #1

Отключаем сервисы так: В папке с названием сервиса переименовываем ключ dll на dll0
Для включения сервиса проделываем обратную операцию
Для того, чтобы применились изменения в реестре нужно произвести софт-ресет
Чтобы узнать, какие сервисы запущены сейчас, переходим в ветку HKEY_LOCAL_MACHINE\Drivers\Active

В реестре переходим в ветку HKEY_LOCAL_MACHINE\Services

  • BTHIDSVC > отключаем; связано с BlueTooth (возможно гарнитура)
  • credsvc > отключаем; Credential Service, я не понял что это
  • DTPT > отключаем; что-то связаное с сетью\интернет
  • LASSD > НЕ ОТКЛЮЧАЕМ; после отключение WM не загрузится
  • NOTIFY > отключаем; система оповещения
  • OBEX > отключаем; интерфейс OBEX (используется например при передаче файлов через ИК-порт)
  • SNApi > отключаем; звучит страшно но не заметил на что влияет

10) Отключение сервисов #2

В реестре переходим в ветку HKEY_LOCAL_MACHINE\Drivers\BuiltIn

  • AFD > НЕ ОТКЛЮЧАЕМ; после отключения WM не загрузится
  • Battery > НЕ ОТКЛЮЧАЕМ; мониторинг батареи, если откл, то WM не заметит разряда батареи, что может повлечь ПОВРЕЖДЕНИЕ КПК
  • BtA2dpSnd > отключаем; стереозвук по BlueTooth
  • BTControl > отключаем; сам BlueTooth
  • BTUart > отключаем; тоже служба BlueTooth
  • CODEC_GSM610 > отключаем; кодек, который используется в диктофоне
  • ErrorReporting > отключаем; служба отправки инфы о ошибках микрософту
  • Ethman > отключаем; сетевая служба
  • FrontLight > как хотите; если отключить то дисплей не будет автоматом тушить подсветку
  • GPSID > отключаем; служба GPS
  • ipsecsvc > отключаем; сетевая служба
  • ipv6hlp > отключаем; сетевая служба
  • IrCOMM > отключаем; служба модема через ИК-порт
  • IrDA > отключаем; сам ИК-порт
  • NDIS > отключаем; вроде сетевая служба, после откл получаем +1мб памяти
  • NDISUIO > отключаем; что-то к службе выше
  • NLed > отключаем; не знаю что это
  • NTLMSSP_SVC > отключаем; вроде сервис шифрования NTLM
  • PCC_SOCKET0 > отключаем; сетевой сервис
  • PCCARD > отключаем; не знаю что это
  • Perhiperal > отключаем; вроде сервис устройств в картах памяти
  • PPP > отключаем; вроде сетевая служба (протокол PPP)
  • SDBusDriver > не отключаем; если отключить то не будет работать SD/MMC карта
  • SDHC > не отключаем; если отключить то не будет работать SD/MMC карта
  • Serial > отключаем; COM-порт (возможно повлияет на Activesync)
  • SIP > не отключаем; если отключить то не будет наэкранной клавиатуры
  • SmartCard > отключаем; смарткарты
  • TAPI > отключаем; служба телефонии
  • TrueFFS > отключаем; не знаю что это
  • TrueFFS1 > отключаем; не знаю что это
  • usbfndrv > отключаем; USB-порт (возможно повлияет на Activesync)
  • WAPIMAN > НЕ ОТКЛЮЧАЕМ; если отключить то будут глюки
  • WaveDev > не отключаем; если отключить то пропадет звук (ку3 не запустится)
  • WWN > отключаем; вроде WiFi
  • ZeroConfig > отключаем; поддержка ZeroConf?

11) Отключение сервисов #3

В реестре отключаем службы в ветках:

HKEY_LOCAL_MACHINE\Comm\Devices

  • Redir > отключаем; не знаю что это

HKEY_LOCAL_MACHINE\Comm\Devices\TCPIP

  • IPDevice > отключаем; сетевая служба
  • TCPDevice > отключаем; сетевая служба

HKEY_LOCAL_MACHINE\Comm\Devices\TCPIP6

  • DHCPV6L > отключаем; сетевая служба
  • IPDevice > отключаем; сетевая служба

HKEY_LOCAL_MACHINE\Comm\Cellular\WAP

  • Driver > отключаем; связано с WAP

HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth

  • BTHLINK > отключаем; связано с Bluetooth


12) Финал

Производим перезагрузку.

Левой софт-кнопкой запускаем CloseApps, жмем ок, затем правой софт-кнопкой Quake3CE (или то что вы указали до этого).


На Dell Axim X51v после проведенных манипуляций стало свободно ~37300кб RAM (было ~30000кб изначально), достаточных для запуска Quake3CE (требовалось 35600кб). Вынув карту памяти и отключив ее сервисы получим еще немного кб.

Потеряв функционал мы получаем +~7 свободной RAM, что очень неплохо для КПК с Windows Mobile 5

Hint: Если сделать бэкап после данных операций, то после его восстановления необходимо будет стереть файлы из StartUp и исправить несколько ключей в реестре.