Многозадачность и смартфоны

В общем смысле под многозадачностью понимают способность операционной системы работать с несколькими приложениями одновременно. Но несмотря на, казалось бы, всю простоту этого определения, на примере операционных систем Android и Apple iOS4 многие убедились в том, что не все так просто, как может показаться на первый взгляд. В то время как основной идеей воплощения многозадачного режима непосредственно в смартфонах было максимально приблизить их к мини-образу ПК, оказалось, что и функционально и визуально многозадачность в смартфонах и в ПК реализована двумя разными способами.

В частности, если говорить о мобильных платформах, то для них функция «многозадачный режим» характеризуется двумя основными возможностями: во- первых, это способность приложения работать в фоновом режиме (что аналогично происходит и на обычном ПК, когда пользователь сворачивает окно с работающей программой), а во-вторых, это возможность сохранять текущее состояние приложения, или, проще говоря, ставить его на паузу. Все приложения, работающие в фоновом режиме, требуют гораздо большего количества системных ресурсов, нежели приложения, которые были временно приостановлены. Таким образом, для повышения продолжительности работы аккумулятора телефона подобная функция окажется весьма полезной. Простейшим примером является музыкальный плеер, который будет постоянно воспроизводить музыку, находясь при этом в свернутом состоянии, при этом совершенно не важно, с какими другими приложениями вы при этом работаете. А календарь, например, не требует постоянных ресурсов для своей работы, так как может обновлять свое состояние через определенный промежуток времени, в течение которого работа приложения фактически приостанавливается.

Теперь рассмотрим операционные системы iOS 4 и Android. В операционной системе от Apple (iOS4), под управлением которой работает iPhone, имеется большое количество различных функциональных возможностей, которые являлись «фирменной гордостью» этой американской компании начиная с выпуска самого первого iPhone в 2007. Тем временем, в 2008 году был выпущен первый аппарат под управлением ОС Android HTC G1, в котором впервые была реализована возможность работы приложений в фоновом режиме, стоит отметить, что именно iPhone подобной возможности недоставало. Забавно, что Apple забраковала неофициальный патч iPhone OS, выпущенный сторонними разработчиками, благодаря которому в многозадачном режиме появилось гораздо больше различных функциональных возможностей, чем было предусмотрено самой компаний. Складывалось впечатление, что в Apple были враждебно настроены по отношению к многозадачности, и что ее поддержка была добавлена будто бы под давлением ОС Android.

С технической точки зрения, многозадачность в iOS4 имеет ряд существенных различий, по сравнению с ОС Android, в которой, например, имеется возможность свернуть приложение без приостановления ее рабочего процесса. То есть, даже если пользователь запустит любую другую программу, то ранее запущенное приложение будет работать в фоновом режиме до тех пор пока его не закроют, или в смартфоне не закончится оперативная память. С другой стороны, iOS4 позволяет приложениям сохранять работоспособность лишь некоторой части своих функций при сворачивании в фоновый режим (например, Skype будет по-прежнему отображать сетевой статус, а FM-приемник будет продолжать воспроизводить выбранную радиостанцию, при этом само приложение не будет работать «в полную силу»). Таким образом, приложение запоминает свое последнее рабочее состояние и как бы «уходит в тень», позволяя пользователю беспрепятственно открывать и работать с другими программами. Подобная опция дает право утверждать, что в некотором смысле iPhone OS с момента своего рождения поддерживала многозадачный режим, а появление у пользователя возможности выбирать, как он хочет свернуть приложение: поставить его на паузу или оставить в рабочем режиме – лишь еще одна новая функция для разработчиков приложений. Если же сравнивать реализацию многозадачного режима в операционных системах Android и iOS4, то они имеют одно весьма важное, хоть и незначительное, различие. Так, в Android операционная система управляет большой частью самого многозадачного режима, в то время как в iOS4 разработчикам предоставляется возможность самим выбрать, как их приложение будет вести себя при работе в фоновом режиме. Конечно, в этом и проявляется более ограниченный подход Apple к довольно узконаправленной реализации многозадачности, потому что, по сути, им ведь необходимо обеспечить поддержку всего лишь нескольких девайсов (в первую очередь это, конечно же, iPhone), по сравнению с огромным разнообразием устройств, которые работают под управлением операционной системы Android. Как факт, обе системы достаточно хорошо разработаны, и, в конечном счете, они обе нашли своих приверженцев среди пользователей.

Подводя итог, хотелось бы отметить, что нельзя определенно ответить на вопрос, какая мобильная операционная система лучше: Android или iOS4. А если рассматривать реализацию в данных двух операционных системах многозадачного режима, то, как оказывается, у них подобная функция реализована достаточно схожим образом. В любом случае, все зависит от личных потребностей каждого пользователя в частности, ведь у каждой мобильной платформы есть как свои преимущества, так и свои недостатки.
По материалам PCWorld

Павел Новик


Компьютерная газета. Статья была опубликована в номере 26 за 2010 год в рубрике mobile

©1997-2024 Компьютерная газета