Четверг, 28.03.2024, 11:18
Mobile-RepairГлавная
| RSS
[ Личные сообщения() · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: DrGEM  
Форум » КПК и Коммуникаторы » КПК и Коммуникаторы - перепрошивка » Оперативная память и где ее взять (Оперативная память и где ее взять)
Оперативная память и где ее взять
gindulДата: Вторник, 01.04.2008, 13:57 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 6
Репутация: 1
Статус: Offline
Симбиан, Нокия и память.

Дисклаймер: данное пособие имеет цель обобщить известные факты о распределении памяти в смартфонах Нокии 60-й серии и не претендует на всеобъемлющее изложение. Для изучения оперативной памяти применялись программы AppMan и DevMan, а также SeleQ для работы с накопительной памятью. На N-Gage проблем с оперативной памятью быть не должно, т. к. она имеет большой ее объем (до 10 Мб).

Изложение будет иметь два основных этапа: сначала мы познакомимся с памятью, как вещью в себе, а затем рассмотрим приемы работы с ней. Можете переходить ко второй части сразу, если Вас интересуют только практические советы.

Подразумевается, что у Вас имеется ИК-порт или Bluetooth-адаптер для соединения телефона и компьютера.

Итак, немного сведений о распределении памяти в наших любимых аппаратах. Можно выделить 4 ее типа:

1) Постоянная память телефона (ПЗУ, около 17,8 Мб)
2) Накопительная память телефона (примерно 3,4 Мб доступно пользователю)
3) Память на ММС-карте (В последнее время появились карты объемом 256 Мб)
4) Оперативная память (около 4 Мб для 7650/3650, впрочем, тут есть несколько моментов, о них ниже)

Сразу же отметим, что исполняться программы могут только в оперативной памяти. Это важно. Кроме того, первые три типа памяти являются энергонезависимыми, а оперативная очищается при перезапуске телефона. А теперь подробнее про каждый из них.

Постоянная память телефона используется для хранения данных, жизненно важных для работы телефона, таких как операционная система Симбиан с ее ядром и компонентами и всеми программами, предустановленными в телефоне. Сразу же хочу огорчить: запись сюда ЗАПРЕЩЕНА! Обратите внимание, ее предназначение хранение, а не исполнение. Таким образом, программа для запуска должна быть размещена в оперативной памяти. К чему это приводит, мы поговорим ниже. А в данном разделе содержится информация, с которой мы видим телефон в магазине или после применения кода *#7370#: стандартные картинки, мелодии, программы. Отсюда берется и информация о структурах, которые создает система в накопительной памяти телефона, например, стандартные каталоги. Часть компонентов ОС также переносится отсюда в накопительную память, к примеру, 4 стандартные картинки для вставки в СМС-сообщения.

Накопительная память телефона имеет размер приблизительно 4 Мб, но он уменьшается за счет копирования сюда некоторых программ из ПЗУ, составляя примерно 3, 4 Мб. Объем явно недостаточен. По всей видимости, Нокия, выпуская 7650, не предполагала, насколько шустрыми окажутся софтостроители и насколько высокими окажутся запросы к новому смартфону. Впрочем, не будем отвлекаться. В 3650 появилась память на ММС-карте, а объем внутренней памяти остался прежним. Чем она интересна для владельцев 7650 ясно, а вот для тех, у кого 3650? Во-первых, некоторые программы не могут идти с карты памяти. Это те, что разрабатывались для 7650, да так и не были обновлены для работы с 3650. Их не так много осталось сейчас, но, тем не менее, они встречаются. Среди наиболее известных: CameraFX и игра Snails. Следует заметить, что объем их, как правило, невелик, хотя бывают и исключения. Во-вторых, есть здесь каталог C:\Nokia\Installs. На него смотрят программы установки java-приложений и Диспетчер, то есть, находящийся там установочный файл они безусловно отобразят. Впрочем, это не столь критично, потому что установить приложение можно несколькими способами, мы их рассмотрим.

Возможность расширения памяти за счет ММС-карты появилась в 3650. При этом Нокия не смогла не извернуться, и слот для нее поместила под аккумулятором, да еще и сделала так, что он не поддерживает SD-карту. Владельцам 3650 имеет смысл устанавливать все приложения на карту, кроме тех, которые не умеют работать с ней. Собственно, все преимущества ММС довольно очевидны, так что не будем задерживаться и перейдем к оперативной памяти.

Наша задача - обеспечить как можно более большой ее объем наиболее малой кровью. На самом деле, и 7650 и 3650 имеют небольшой объем оперативной памяти. В 6600 картина меняется к лучшему, хотя и не сильно. Так что, N-Gage с ее 10 Мб является безусловным лидером в плане возможности запуска ресурсоемких программ.

Ну а на 3650/7650 при отсутствии установленных программ мы имеем после запуска примерно 2,9 свободной памяти. Остальная сразу же занимается в процессе загрузки системными программами, в частности, необходимыми для обеспечения работы, скажем так, телефонной подсистемы, про них поговорим подробнее. Они отображается в списке процессов как Телефон и в сумме занимают примерно 296 Кб. Но если, к примеру, ядро операционной системы выгрузить нельзя, то эти почти 300 Кб можно высвободить. Естественно, звонить/принимать звонки при этом будет нельзя.

Куда еще утекает память? При запуске меню телефона теряем автоматически 80 Кб оперативной памяти. При этом, если мы выходим из меню, то этот процесс остается в памяти, занимая 68 Кб, то есть после первого входа свободная память уменьшается на эту величину. Пункт Избранное тоже не решает проблему, потому что занимает те же 80 Кб, правда полностью освобождая память при выгрузке. К сожалению, поделать что-либо радикальное с этим пока нельзя, будем рады, если кто-нибудь найдет способ.

Еще один неприятный момент - программы для ОС Симбиан, которые хранятся на в телефоне, создают утечки памяти одним фактом своего присутствия. Так, получившая в последнее время известность игра Metal Bluster "отъедает" практически 100 Кб. Метод борьбы - не устанавливайте слишком много программ, особенно игр, имеющих большой размер. Совет менее актуален для владельцев 7650.

ОС Симбиан является многозадачной. В двух словах это означает, что ядро операционной системы должно распределять процессорное время, контекст задачи (содержимое регистров и стека) и пространство оперативной памяти между всеми запущенными в системе процессами, таким образом, чтобы каждое запущенное в системе приложение не знало о существовании других. Таким образом, чем больше программ запущено, тем меньше свободной оперативной памяти имеется. Современные ОС используют механизмы динамического выделения памяти, так что приложение, скорее всего, столкнется с нехваткой памяти не сразу, а после некоторого времени работы, когда запросит больше, чем система сможет предоставить, хотя, к примеру, Опера требует свои 2,4 Мб сразу и одним куском. Не будем углубляться в дебри системного программирования, а скажем сразу, что работа с оперативной памятью в Симбиан реализована несколько неудачно. В чем это выражается? Дело в том, что при выгрузке программы ОС оставляет некоторую часть ее в памяти, при этом данная область считается занятой. При загрузке другой программы она уже не может быть использована. Это приводит к постоянному уменьшению объема доступной памяти в процессе работы телефона. Почему была допущена такая ситуация непонятно, видимо, Нокия торопилась поскорее выпустить телефон. Следует отметить, что ситуация характерна и для 7650 и 3650. В новом 6600 использована новая доработанная версия ОС, но отзывов мы пока не имеем. Еще один подводный камень - работа с Java-приложениями, которые не умеют чистить свою кэш-память, что приводит к постоянному уменьшению доступного объема оперативной памяти в процессе работы программы и к последующей ее остановке, если памяти больше не остается. В 6600 обещали решение и этой проблемы.

Теперь, на основе теоретического материала сделаем практические выводы. Переходим ко второй части. Здесь мы рассмотрим такие вопросы:

1) Что делать с ПЗУ?
2) Почему не следует забивать накопительную память телефона?
3) Как установить программу с MMC-карты?
4) О чем вещает AppMan?
5) Flight-Mode и "А оно нам надо?"
6) Благотворное влияние перезагрузки

Итак, по порядку:

1) Что делать с ПЗУ?

Такой вопрос задается часто. Ответ - просто оставить в покое. Запись туда все равно невозможна, а программы не занимают накопительной памяти телефона.

2) Почему не следует забивать накопительную память телефона?

Чтобы иметь возможность устанавливать программы, объем которых достаточно велик. Не секрет, что современные программы имеют исталляционные пакеты в 400-900 Кб. При этом для установка ведется из памяти телефона. Предвижу возражения: ведь можно закачать пакет на карту памяти и запустить оттуда. Можно-то можно, да вот только он предварительно будет скопирован на в память телефона и запущен оттуда. Таким образом, для гарантированной установки дистрибутива, в памяти телефона должно быть примерно в 1,2 раза больше свободной памяти, чем его размер.

3) Как установить программу с MMC-карты?

Разумеется, актуально только для владельцев 3650.

Сначала дистрибутив программы следует передать на карту памяти. Сделать это можно с помощью кард-ридера (порядок действий при этом очевиден и не требует описания). Размещать дистрибутив следует так, чтобы добраться до него было легко, например, в каталог E:\Others. Запустите SeleQ и откройте дистрибутив. Далее действуйте в соответствие с указаниями программы установки.

В случае отсутствия такой полезной вещи, как кард-ридер, следует поступить следующим образом. Откройте пункт меню Сообщения, выберите Функции - Настройки - Другие. Выберите Используется - Memory Card. Теперь все SMS/MMS/E-Mail сообщения будут приходить на карту памяти. Теперь можете передать файл по BT/ИК-порту в папку Входящие телефона. Откройте пришедшее сообщение. Дистрибутив будет автоматически скопирован в папку C:\Nokia\Installs и запущен на установку.

4) О чем вещает AppMan?

Рассмотрим вкратце содержание каждой вкладки и меню.

Первая вкладка -Summary. Здесь можно получить информацию о наличии количества свободной оперативной памяти, а также объема свободного пространства на карте памяти и в накопительной памяти телефона.

Следующая вкладка -Running Apps. В частности, обратите внимание на приложение Phone. В следующем пункте речь пойдет о борьбе с ним. Чтобы увидеть скрытые зарущенные приложения, выберите Options - Settings - Show hidden Apps

Processes. А вот здесь раздолье для любителей экстремальной очистки памяти. Впрочем, переусердствовать не стоит - были случаи, после которых помогал только СЦ.

На вкладке Open Files видим файлы, открытые системой в данный момент. Закрыть файл, кстати, нельзя. Впрочем, и не следует.

Вкладка Installed Apps интересна тем, что с помощью нее можно почистить накопительную память. Неиспользуемые системой файлы, "забытые" приложениями, отмечены в этом списке мусорной корзиной и их можно удалить прямо из программы. Случаи выхода телефона из строя при выполнении данной процедуры неизвестны, поэтому ее можно считать относительно безопасной.

На вкладке Summary зайдите в меню Options. Самый первый пункт (Compress Memory) позволит Вам очистить оперативную память от накопившегося в ней мусора. (см. пункт 6)

5) Flight-Mode и "А оно нам надо?"

Как уже говорилось выше, приложения, обеспечивающие работу телефона, занимают около 300 Кб оперативной памяти. Именно они отвечают за взаимодействие аппарата с сетью сотовой связи. Без них телефон - уже не телефон, а PDA с несколько урезанной функциональностью. Однако, освобождение такого объема оперативной памяти зачастую оказывает просто магическое действие на приложения, которые упорно не желают запускаться.

Известно, что многие (читайте - практически все) авиакомпании ревностно запрещают использовать (и даже просто включать) мобильные телефоны во время полета. Влияние излучаемой телефоном электромагнитной волны на навигационную аппаратуру - вопрос не до конца изученный, но запрет есть запрет. Видимо, именно для таких ситуаций был придуман режим работы, называемый "самолетным" или "полетным" - flight mode. Задействовать его позволяет программа System Tools (на сегоднящний день наиболее новой является версия 1.40). Запускаем программу, открываем закладку Tools и выбираем стоящий первым пунктом Flight Mode. Программа выведет предупреждающее сообщение и выключит телефон. Теперь Вам необходимо извлечь SIM-карту. Это обязательное действие, хотя неизвестно, необходимо ли это реально для входа в режим или сделано для того, чтобы не волновать особо впечатлительных стюардесс. Далее можно включить телефон и, по запросу программы, подтвердить желание работать во flight mode. Как показывает практика, после перехода в "самолетный" режим начинают свободно работать даже такие известные своими капризами программы, как Doom и Worms. Для Оперы такой метод, к сожалению, не подходит.

Для чего нам это нужно, думаю, понятно - увеличить объем оперативной памяти на значительную величину. А вот стоит ли - вопрос отдельный. Если любите играть - тогда, пожалуй, да. Больше никакой реальной пользы этот режим не приносит. Ну и, разумеется, пригодится он в самолете (то, для чего придумывался), и, пожалуй, в метро.

Не забудьте после завершения работы во flight mode зайти в System Tools и отключить включение режима, иначе он заберет некоторое количество оперативной памяти.

6) Благотворное влияние перезагрузки

Как уже говорилось выше, в Симбиан далеко не идеально обстоит дело с динамической памятью. Ситуация усугубляется малым количеством оперативной памяти. На все это накладываются проблемы с Java (отсутствие очистки кэша). В результате с течением времени память разделяется на фрагменты, занятые и незанятые данными. В результате, при запросе какой-либо ресурсоемкой программой непрерывного длинного блока памяти (так называемой кучи), такового может и не оказаться, хотя суммарный объем незанятых участков может по длине значительно превосходить запрашиваемую длину. Это приведет к сообщению о нехватке памяти. Рассмотренные выше утилиты AppMan и DevMan позволяют отследить и уничтожить потерянные фрагменты динамической памяти, но наиболее эффективным способом, тем не менее, является перезагрузка. Таким образом, имеет смысл перезагружаться перед каждым запуском достаточно ресурсоемкой программы, иначе даже после удачного запуска она может вылететь с ошибкой через некоторое (как правило очень короткое) время работы.


Сайт как женщина — мало быть красивой, надо быть юзабельной.
 
Форум » КПК и Коммуникаторы » КПК и Коммуникаторы - перепрошивка » Оперативная память и где ее взять (Оперативная память и где ее взять)
  • Страница 1 из 1
  • 1
Поиск:

Copyright Gindul © 2024