==========================================================

Многозадачность на смартфонах с WP7, Android и iOS

Написано 08 мая 2011 in S-Блог, Sтатьи

Попала мне на глаза интересная статья, и думаю для читателей блога это тоже будет интересно почитать. Источник etenclub.ru

Windows Phone 7, iOS, Android

Термин “многозадачность” имеет несколько значений и способов реализации. Как стало известно, апдейт Mango привнесёт многозадачность в Windows Phone 7, но по сравнению с Windows Mobile ( 2000-2010 годов ) она реализована совсем по другому принципу. Многозадачность на WM практически такая же, как у Windows для обычных ПК. Запущенное приложение остается в оперативной памяти, выполняя задачу — оно расходует столько времени процессора, сколько ему нужно, что приводит к тому, что процессора может не хватить для выполнения другого, более важного задания.
смартфон с Windows Phone 7
Реализация многозадачности в Windows Mobile дала возможность упростить работу, что дало возможность пользователю управлять ресурсами и приложениями. Если приложения не используются какое-то время, то система выгружает их, тем освобождая ресурсы для других заданий. Для освобождения процесса так же нужна оперативная память, но очень часто ее не хватает, что приводит к подвисанию на несколько секунд или же аппарат полностью зависает. Разработанная в 2003 году операционная система Android, а в 2005 году купленная компанией Google, по сравнению с Windows Mobile реализует многозадачность очень схожим, но чуть более сложным способом. В Android используется ряд правил, которые определяют степень важности каждого процесса и в соответствии с этим выгружает их. Так же Android поддерживает специальные сервисы для фоновой роботы, которые могут работать всё время. Если системе хватает оперативной памяти, то все приложения могут работать как угодно долго, не выгружает ни одного.
HTC Incredible S Android
Рассмотрим теперь реализацию многозадачности на iOS. Изначально многозадачность там не поддерживалась. Это давало очень высокую производительность, ведь вся оперативная память и процессор находились в распоряжении единственного запущенного приложения. Работа фоновых приложений в этом случае, конечно же, осложнена. Apple в iOS 4 реализовала новый способ многозадачности, в нем приложения, которые требуют постоянной работы, так как регистрируются в системе и работают в одном потоке до тех пор, пока их не выключат. Так могут работать только приложения IP-телефонии, аудио/видео приложения и геолокация. Нажав кнопку «Домой» все приложения iOS 4 уходят в режим временной остановки. Для начала роботы приостановленного таким образом приложения нужно к нему возвратится. В этом режиме приложения занимают оперативную память, но не используют процессор. При возникновении потребности в памяти, iOS выгружает сначала те программы, к которым позже всего обращались. В режиме многозадачности, таком как в ранних версиях iOS, могут работать и некоторые приложения на WP7. Этот метод позволят продлить роботу аккумулятора и обеспечить высокую производительность для активного приложения. В многозадачности на WP7 всё изменится после выхода в этом году Mango, где будут использоваться методы как Android, так и iOS.
iphone 4
Если у разработчиков появится необходимость в фоновых приложениях, они смогут создать «фоновый агент». Вы спросите, какая разница между этим агентом и простым процессом, который может использовать любые ресурсы системы? Для фоновых агентов будет выделятся 5 мегабайт оперативной памяти и не более 10% процессорного времени, также «фоновые агенты» будут работать не более 15 секунд каждые 30 минут (например, при синхронизации информации). И самое интересное — устройство подключенное к зарядному устройству, будет иметь гораздо меньше ограничений: приложению будет дозволено использовать больше ресурсов системы, работать оно будет чаще и дольше. Скорее всего, это будет схоже с реализацией синхронизации по Wi-Fi через Zune, где спустя пару минут после подключения телефона к зарядному устройству, Windows Phone 7 будет автоматически синхронизировать с компьютером музыку, видео и изображения.

Причиной использования разных методов реализации многозадачности послужило, необходимость в соблюдении тонкого баланса между низким энергопотреблением и высокой производительностью системы, а также для работы фоновых приложений. Один из этих методов требует особого внимания к системе со стороны пользователя, а другой – более ограничивающий – не требует подобного внимания, но он более сложен для разработчиков приложений.

Похожие записи:


Если Вам нравится читать блог, вы можете подписатmся на обновление через RSS или следить за блогом через Twitter

Автор spectator


Ответить

Я не робот.

This Blog will give regular Commentators DoFollow Status. Implemented from IT Blögg

Подписаться без написания комментария