Как работает смартфон объясните
Включаем экран, нажимаем пальцем на иконку видеоплеера, сенсорный слой считывает координаты прикосновения, смартфон понимает, какая это иконка и запускает соответствующее приложение. Теперь выбираем фильм, происходит загрузка из памяти и картинка отображается на экране, а звук подается на динамики. Вот и всё!
Минутка безумия
Но магии не существует. О том, что происходит на самом деле и пойдет речь в этой статье.
Черно-белый мир
Раньше каждая ячейка памяти могла хранить только один нолик или единичку (проверялось просто само наличие электронов в ловушке), теперь же каждая ячейка способна хранить несколько единичек и нулей, так как система может считывать заряд более точно.
Подведем небольшой итог
То есть, процессор обращается к какой-то ячейке памяти, считывается заряд (кол-во электронов в ловушке) и затем этот сигнал (ток) посылается на конкретный транзистор. Взяли единичку из памяти и сделали так, чтобы определенный транзистор был открыт. А если в памяти была не единица, а ноль (то есть, другое количество электронов), тогда процессор закрывает определенный транзистор.
Единички и нолики
Смартфон делает 3 базовые вещи:
- Собирает входящую информацию с различных датчиков (сенсорный экран, камера, микрофон, датчик давления или температуры и пр.).
- Обрабатывает эту информацию, посылая ток по миллиардам транзисторов, закрывая и открывая их в строго определенном порядке.
- Выдает результат. Это может быть изображение на экране, музыка, речь собеседника во время телефонного разговора или мигающий индикатор низкого заряда батареи.
Вся собираемая информация переводится в единички и нолики (бинарный код), которые затем распределяются по ячейкам памяти в виде определенного количества электронов. Процессор обращается к памяти и получает значение каждой ячейки, на основе которого открывает/закрывает конкретные транзисторы.
Переводим текст в бинарный вид
Решение проблемы оказалось элементарным! Давайте просто скажем, что каждой букве или символу соответствует какой-то номер и создадим таблицу кодов. Например, заглавные буквы A, B, C, D будут идти под номерами 65, 66, 67, 68 и так далее. Маленькие буквы будут начинаться с номера 97. Теперь нам осталось пронумеровать все остальные символы, включая те, которые будут сообщать смартфону, что нужно начинать текст с абзаца.
И такая таблица была составлена:
В итоге перешли на табличку Unicode, которая уже включала более 65 тысяч чисел и соответствующие им знаки, буквы и смайлики.
Забавная математика или почему 1+1 не равно 2
Когда мы видим большое число, например, 2134, то прекрасно понимаем, что здесь есть две тысячи (1000), одна сотня (100), три десятка (10) и четыре единицы (1).
Таким образом, если мы хотим записать десятичное число 9 в двоичной системе, нам нужно взять одну восьмерку и одну единичку (записать цифры на первой и четвертой позициях), в итоге получится число 1001 в двоичной системе:
Теперь возвращаемся к нашей кодовой таблице символов. Если букве А соответствует число 65 в десятичной системе, то в двоичной оно будет выглядеть как 100001:
Подытожим
А как быть с фотографией или фильмом? Как мы можем картинки перевести в единички и нолики?
Переводим фото и видео в единицы и нули
Если мы возьмем 12-мегапиксельную фотографию, она состоит из 4032 точек по горизонтали и 3024 точек по вертикали. Получается, один снимок содержит 12 млн 192 тыс. 768 точек (4032*3024). Звучит уже пугающе. А если мы берем современные камерофоны, которые умеют снимать с разрешением 108 Мп, то один такой снимок содержит более 108 миллионов точек.
Но что делать с этими точками дальше? Как их перевести в набор нулей и единиц? Чтобы ответить на этот вопрос, рассмотрим очень простой пример.
У нас есть картинка 4 на 4 точки (всего 16 пикселей), которую мы хотим сохранить на смартфоне:
Вначале давайте все пиксели разместим в одну строчку, чтобы избавиться от бесполезного квадрата:
Если первую красную точку можно было бы сохранить в десятичной системе, как набор чисел 213, 43 и 43, то в двоичной системе это будет набор из чисел 11010101, 00101011 и 00101011. Естественно, никаких запятых нам не нужно, так как в описании (метаданных) файла мы указывали глубину цвета (сколько бит использовать для кодирования каждого из 3 цветов), поэтому можем смело сохранять первый пиксель нашей фотографии в таком виде:
110101010010101100101011
Что интересно, на экране смартфона пиксели отображаются не так:
Но так как эти субпиксели (лампочки) очень крохотные и находятся на очень маленьком расстоянии друг от друга, наш глаз не способен различить три цвета и мозг смешивает их в один.
А как же быть с видео!?
Что касается видео, система не просто сохраняет информацию о цвете каждого пикселя, а использует так называемое внутри- и межкадровое кодирование. К примеру, вы снимаете видео, на котором рассказываете о чем-то.
Прежде, чем сохранить нули и единицы, система анализирует каждый кадр и замечает, к примеру, что ваш нос не очень-то отличается от кадра к кадру. Хм, может его вовсе удалить? Но, согласитесь, без носа ваше лицо выглядело бы немного странно.
О том, как смартфон превращает звук в нули и единицы, мы рассказывали в другой статье, поэтому не буду здесь повторяться.
Подводим итог первой части
Происхождение термина и функции смартфона
Смартфон – это составное слово из двух английских «Smart» и «Phone», то есть в буквальном переводе слово смартфон означает «умный телефон». Эта характеристика точно отображает, что же представляет собой смартфон. По сути, смартфон – это уменьшенный компьютер, который умеет выполнять аналогичные функции, если не больше. Достаточно часто смартфон именуют телефоном или коммутатором. В определенном роде это правильно, но все же отличия есть.
На заметку! Коммуникатор и смартфон – это очень близкие понятия. Если углубиться в историю создания, то можно увидеть, что из коммуникаторов появились смартфоны. Можно утверждать, что смартфон – это обычный телефон, интегрированный в коммуникатор.
Как был создан смартфон: основные вехи
Идея создать телефон с функционалом ПК витала в воздухе очень давно, если говорить точно, то об этом задумались после выпуска первых КПК (1990е годы).
В 1997 году на Тайване появляется компания HTC. Цель – создание смартфонов и коммутаторов.
1998 год – это появление суббренда Symbian для создания единой ОС для смартфонов.
В этом же году появляется HTC Dream на Android (первое использование ОС), Nokia N5800 на Symbian с сенсорным экраном.
2009 год дарит нам Nokia N97 – слайдер с сенсорным экраном и выдвижной полноценной клавиатурой.
Дальнейшее развитие устройств – это изменение концепции, размеров, функций и многих других вещей, которые привели к появлению современных аппаратов. Многие считают, что смартфон придумал Стив Джобс. Это не совсем верно, так как Джобс смог совместить самые полезные функции, но, пожалуй, главная его заслуга в том, что уже в 2007 году он понял, как нужно делать устройства и продавать их так, чтобы завоевать мир. Не секрет, что его формула внедрения новых фишек и яростной рекламы работает и сегодня. Не случайно именно Apple задают тенденции, и до настоящего времени практически всем брендам приходится равняться или догонять американскую компанию.
Из чего состоит смартфон
Многие не задумываются о том, что в небольшом корпусе смартфона скрывается огромное количество деталей и узлов, которые обеспечивают те или иные функции. Основные компоненты смартфона:
- корпус;
- процессор;
- материнская плата;
- память основная и оперативная;
- батарея;
- камера;
- датчики;
- модули беспроводных интерфейсов;
- дисплей.
Корпус
Это первое, что бросается в глаза пользователю. Он может иметь разные размеры и формы, но основной важный параметр – это материал исполнения. Он него зависит эргономичность и удобство использования. Основные материалы – стекло, пластик, металл, керамика. Чаще всего производители комбинируют эти материалы, и редкий девайс состоит лишь из одного металла или пластика.
Процессор
Важно! Процессор при работе выделяет тепло. Значит, данную проблему нужно решать не охлаждением, так как смартфон слишком мал, а силами самого процессора – для этого используются разные модели работы, а также снижают потребление энергии чипсетом.
Материнская плата
Это своего рода костная и кровеносная система устройства. Именно к ней присоединяются все остальные узлы, а также по ней сигналы от одной детали передаются к другой.
Оперативная и основная память
Оперативная память отвечает за быстродействие. В ней хранится информация, необходимая для непосредственной работы процессора. Часто ее называют временной, так как при выключении смартфона информация в ней не сохраняется. Оперативная память имеет относительно небольшую емкость в сравнении с основной, и в настоящий момент в смартфонах достигает 8 гигабайт.
Основной накопитель – своего рода жесткий диск. Здесь постоянно хранится вся информация. В настоящий момент самая быстрая память для оперативной – LPDDR 4X, в 2019 году анонсирован выход 5 поколения этой памяти. У постоянных накопителей самый скоростной тип USF 2.1. Максимальная емкость памяти современного смартфона достигает 512 Гб.
Батарея
Она отвечает за время автономной работы. Основные типы батарей в смартфонах – литий-ионные и литий-полимерные. Последний тип считается более современным и безопасным для работы.
Камера
Говорить о ее назначении смысла нет, так как редкий человек не пользуется камерой в своем смартфоне. Развитие современных камер для мобильных устройств идет огромными темпами. Двойная камера уже никого не удивляет, и есть смартфоны, которые работают с тремя или четырьмя матрицами. Основные показатели – фокусное расстояние, количество пикселей, физический размер матрицы. Для телефонов разрабатывается множество дополнительных фишек, которые делают съемку лучше – лазерный фокус, оптическая стабилизация, монохромный сенсор, оптическое приближение и многое другое.
Датчики
Это маленькие узлы, которые делают пользование устройством более приятным. Существуют датчики освещенности, гироскоп, приближения, акселерометр, компас, сканер пальца, сканер лица, пульсометр и множество других.
Модули
Современный смартфон обязан работать с Wi-Fi, в LTE сетях, с GPS. За это отвечают специальные модули, которые имеют антенны, расположенные непосредственно под корпусом девайса.
На заметку! Из последних нововведений, которое еще не получило повсеместное распространение – NFC. Наиболее широкое использование – бесконтактные платежи.
Дисплей
На заметку! Есть девайсы, которые имеют принцип строения дисплея типа «бутерброд», где есть стекло, металлическая основа, гибкий слой, сенсорный слой и многое другое. Такие лицевые панели не боятся ударов.
Принцип работы смартфона
Виды смартфонов
Конечно, при слове смартфон в голову сразу приходит привычное всем устройство – корпус с дисплеем и ничего лишнего, но по факту видов смартфонов много. Некоторые совсем исчезли, другие еще представлены узким сегментом, третьи возрождаются из небытия. Итак, смартфоны бывают следующих типов.
В этой серии статей я расскажу о внутреннем устройстве Android — о процессе загрузки, о содержимом файловой системы, о Binder и Android Runtime, о том, из чего состоят, как устанавливаются, запускаются, работают и взаимодействуют между собой приложения, об Android Framework, и о том, как в Android обеспечивается безопасность.
Немного фактов
Android — самая популярная операционная система и платформа для приложений, насчитывающая больше двух миллиардов активных пользователей. На ней работают совершенно разные устройства, от «интернета вещей» и умных часов до телевизоров, ноутбуков и автомобилей, но чаще всего Android используют на смартфонах и планшетах.
Компания Android Inc. была основана в 2003 году и в 2005 году куплена Google. Публичная бета Android вышла в 2007 году, а первая стабильная версия — в 2008, с тех пор мажорные релизы выходят примерно раз в год. Последняя на момент написания стабильная версия Android — 7.1.2 Nougat.
Android is Linux
По поводу такой формулировки было много споров, так что сразу поясню, что именно я имею в виду под этой фразой: Android основан на ядре Linux, но значительно отличается от большинства других Linux-систем.
Среди исходной команды разработчиков Android был Robert Love, один из самых известных разработчиков ядра Linux, да и сейчас компания Google остаётся одним из самых активных контрибьюторов в ядро, поэтому неудивительно, что Android построен на основе Linux.
Другая причина того, что в Android не используется софт от GNU — известная политика «no GPL in userspace»:
We are sometimes asked why Apache Software License 2.0 is the preferred license for Android. For userspace (that is, non-kernel) software, we do in fact prefer ASL 2.0 (and similar licenses like BSD, MIT, etc.) over other licenses such as LGPL.
Android is about freedom and choice. The purpose of Android is promote openness in the mobile world, and we don’t believe it’s possible to predict or dictate all the uses to which people will want to put our software. So, while we encourage everyone to make devices that are open and modifiable, we don’t believe it is our place to force them to do so. Using LGPL libraries would often force them to do just that.
Само ядро Linux в Android тоже немного модифицировано: было добавлено несколько небольших компонентов, в том числе ashmem (anonymous shared memory), Binder driver (часть большого и важного фреймворка Binder, о котором я расскажу ниже), wakelocks (управление спящим режимом) и low memory killer. Исходно они представляли собой патчи к ядру, но их код был довольно быстро добавлен назад в upstream-ядро. Тем не менее, вы не найдёте их в «обычном линуксе»: большинство других дистрибутивов отключают эти компоненты при сборке.
В качестве libc (стандартной библиотеки языка C) в Android используется не GNU C library (glibc), а собственная минималистичная реализация под названием bionic, оптимизированная для встраиваемых (embedded) систем — она значительно быстрее, меньше и менее требовательна к памяти, чем glibc, которая обросла множеством слоёв совместимости.
В Android есть оболочка командной строки (shell) и множество стандартных для Unix-подобных систем команд/программ. Во встраиваемых системах для этого обычно используется пакет Busybox, реализующий функциональность многих команд в одном исполняемом файле; в Android используется его аналог под названием Toybox. Как и в «обычных» дистрибутивах Linux (и в отличие от встраиваемых систем), основным способом взаимодействия с системой является графический интерфейс, а не командная строка. Тем не менее, «добраться» до командной строки очень просто — достаточно запустить приложение-эмулятор терминала. По умолчанию он обычно не установлен, но его легко, например, скачать из Play Store (Terminal Emulator for Android, Material Terminal, Termux). Во многих «продвинутых» дистрибутивах Android — таких, как LineageOS (бывший CyanogenMod) — эмулятор терминала предустановлен.
Второй вариант — подключиться к Android-устройству с компьютера через Android Debug Bridge (adb). Это очень похоже на подключение через SSH:
Из других знакомых компонентов в Android используются библиотека FreeType (для отображения текста), графические API OpenGL ES, EGL и Vulkan, а также легковесная СУБД SQLite.
Кроме того, раньше для реализации WebView использовался браузерный движок WebKit, но начиная с версии 7.0 вместо этого используется установленное приложение Chrome (или другое; список приложений, которым разрешено выступать в качестве WebView provider, конфигурируется на этапе компиляции системы). Внутри себя Chrome тоже использует основанный на WebKit движок Blink, но в отличие от системной библиотеки, Chrome обновляется через Play Store — таким образом, все приложения, использующие WebView, автоматически получают последние улучшения и исправления уязвимостей.
It’s all about apps
Как легко заметить, использование Android принципиально отличается от использования «обычного Linux» — вам не нужно открывать и закрывать приложения, вы просто переключаетесь между ними, как будто все приложения запущены всегда. Действительно, одна из уникальных особенностей Android — в том, что приложения не контролируют напрямую процесс, в котором они запущены. Давайте поговорим об этом подробнее.
Основная единица в Unix-подобных системах — процесс. И низкоуровневые системные сервисы, и отдельные команды в shell’е, и графические приложения — это процессы. В большинстве случаев процесс представляет собой чёрный ящик для остальной системы — другие компоненты системы не знают и не заботятся о его состоянии. Процесс начинает выполняться с вызова функции main() (на самом деле _start ), и дальше реализует какую-то свою логику, взаимодействуя с остальной системой через системные вызовы и простейшее межпроцессное общение (IPC).
Поскольку Android тоже Unix-подобен, всё это верно и для него, но в то время как низкоуровневые части — на уровне Unix — оперируют понятием процесса, на более высоком уровне — уровне Android Framework — основной единицей является приложение. Приложение — не чёрный ящик: оно состоит из отдельных компонентов, хорошо известных остальной системе.
У приложений Android нет функции main() , нет одной точки входа. Вообще, Android максимально абстрагирует понятие приложение запущено как от пользователя, так и от разработчика. Конечно, процесс приложения нужно запускать и останавливать, но Android делает это автоматически (подробнее я расскажу об этом в следующих статьях). Разработчику предлагается реализовать несколько отдельных компонентов, каждый из которых обладает своим собственным жизненным циклом.
In Android, however, we explicitly decided we were not going to have a main() function, because we needed to give the platform more control over how an app runs. In particular, we wanted to build a system where the user never needed to think about starting and stopping apps, but rather the system took care of this for them… so the system had to have some more information about what is going on inside of each app, and be able to launch apps in various well-defined ways whenever it is needed even if it currently isn’t running.
Для реализации такой системы нужно, чтобы приложения имели возможность общатся друг с другом и с системными сервисами — другими словами, нужен очень продвинутый и быстрый механизм IPC.
Этот механизм — Binder.
Binder
Binder — это платформа для быстрого, удобного и объектно-ориентированного межпроцессного взаимодействия.
Разработка Binder началась в Be Inc. (для BeOS), затем он был портирован на Linux и открыт. Основной разработчик Binder, Dianne Hackborn, была и остаётся одним из основных разработчиков Android. За время разработки Android Binder был полностью переписан.
Binder работает не поверх System V IPC (которое даже не поддерживается в bionic), а использует свой небольшой модуль ядра, взаимодействие с которым из userspace происходит через системные вызовы (в основном ioctl ) на «виртуальном устройстве» /dev/binder . Со стороны userspace низкоуровневая работа с Binder, в том числе взаимодействие с /dev/binder и marshalling/unmarshalling данных, реализована в библиотеке libbinder.
Низкоуровневые части Binder оперируют в терминах объектов, которые могут пересылаться между процессами. При этом используется подсчёт ссылок (reference-counting) для автоматического освобождения неиспользуемых общих ресурсов и уведомление о завершении удалённого процесса (link-to-death) для освобождения ресурсов внутри процесса.
Высокоуровневые части Binder работают в терминах интерфейсов, сервисов и прокси-объектов. Описание интерфейса, предоставляемого программой другим программам, записывается на специальном языке AIDL (Android Interface Definition Language), внешне очень похожем на объявление интерфейсов в Java. По этому описанию автоматически генерируется настоящий Java-интерфейс, который потом может использоваться и клиентами, и самим сервисом. Кроме того, по .aidl -файлу автоматически генерируются два специальных класса: Proxy (для использования со стороны клиента) и Stub (со стороны сервиса), реализующие этот интерфейс.
Для Java-кода в процессе-клиенте прокси-объект выглядит как обычный Java-объект, который реализует наш интерфейс, и этот код может просто вызывать его методы. При этом сгенерированная реализация прокси-объекта автоматически сериализует переданные аргументы, общается с процессом-сервисом через libbinder, десериализует переданный назад результат вызова и возвращает его из Java-метода.
Stub работает наоборот: он принимает входящие вызовы через libbinder, десериализует аргументы, вызывает абстрактную реализацию метода, сериализует возвращаемое значение и передаёт его процессу-клиенту. Соответственно, для реализации сервиса программисту достаточно реализовать абстрактные методы в унаследованном от Stub классе.
Такая реализация Binder на уровне Java позволяет большинству кода использовать прокси-объект, вообще не задумываясь о том, что его функциональность реализована в другом процессе. Для обеспечения полной прозрачности Binder поддерживает вложенные и рекурсивные межпроцессные вызовы. Более того, использование Binder со стороны клиента выглядит совершенно одинаково, независимо от того, расположена ли реализация используемого сервиса в том же или в отдельном процессе.
Для того, чтобы разные процессы могли «найти» сервисы друг друга, в Android есть специальный сервис ServiceManager, который хранит, регистрирует и выдаёт токены всех остальных сервисов.
Binder широко используется в Android для реализации системных сервисов (например, пакетного менеджера и буфера обмена), но детали этого скрыты от разработчика приложений высокоуровневыми классами в Android Framework, такими как Activity, Intent и Context. Приложения могут также использовать Binder для предоставления друг другу собственных сервисов — например, приложение Google Play Services вообще не имеет собственного графического интерфейса для пользователя, но предоставляет разработчикам других приложений возможность пользоваться сервисами Google Play.
Подробнее про Binder можно узнать по этим ссылкам:
В следующей статье я расскажу о некоторых идеях, на которых построены высокоуровневые части Android, о нескольких его предшественниках и о базовых механизмах обеспечения безопасности.
Каждый смартфон состоит из множества сложных компонентов и вы не всегда будете думать о них перед выбором модели аппарата. Но, тем не менее, важно знать какие аппаратные средства помогают вашему смартфону функционировать.
В этой статье мы разберем основные части того, что стало одним из самых важных электронных устройств на рынке. Рассмотрим из чего состоит смартфон и для чего нужен тот или иной компонент. Сейчас существует множество различных моделей смартфонов, разных конструкций, с разными характеристиками, временем автономной работы и так далее. Но если вы разбираетесь в аппаратной начинке смартфона, то выбрать нужную модель будет намного проще.
Из чего состоит смартфон
1. Дисплей
Один из самых очевидных компонентов смартфона - это его экран. Все что вы видите на экране обрабатывается и контролируется внутренними компонентами. Сейчас существуют две технологии изготовления дисплеев:
- Жидкокристаллические экраны, они изготовляются по технологии IPS или TFT;
- Светодиодные экраны, изготовленные по технологии AMOLED или Super AMOLED.
Жидкокристаллический дисплей использует подсветку для получения изображения. Белый свет проходит сквозь фильтры и благодаря возможности управления свойствами кристаллов вы можете видеть разные цвета. Свет не создается самим экраном, он создается источником света за ним.
Светодиодный экран работает по-другому. Каждый пиксель, который вы видите на экране - это отдельный светодиод. Здесь сам экран создает яркие и красочные цвета. Преимущество Super AMOLED по сравнению с IPS в том, что когда пиксель выключен вы будете видеть черный цвет, он не использует батарею. Поэтому смартфоны с AMOLED более эффективны для автономной работы. Но экраны AMOLED дороже чем IPS, поэтому смартфон с таким дисплеем будет стоить значительно дороже.
2. Аккумулятор
В смартфонах обычно используются литий-ионные аккумуляторы, они могут быть съемными или не съемными. Благодаря этой технологии вам не понадобиться калибровка или тестирование аккумулятора, как при использовании батарей на основе никеля. Тем не менее у этих аккумуляторов есть множество своих проблем.
3. System-on-a-Chip (SoC)
SoC или материнская плата с процессором - это самый важный компонент вашего смартфона. Некоторые пользователи могут думать, что это процессор устройства, но это нечто большее. SoC включает в себя не только процессор, но и графический процессор, LTE-модем, контроллер экрана, беспроводные адаптеры и другие блоки кремния, которые заставляют телефон работать.
Существуют смартфоны, использующие SoC от Qualcomm, MediaTek, Samsung, собственные чипы компании Krirn, Apple, но все они используют одну и ту же архитектуру - ARM. ARM не только производит процессоры, но и лицензирует их архитектуру для других компаний, поэтому все могут использовать одну технологию для создания современных и мощных SoC.
Некоторые компании выпускают свои архитектурные линейки, которые совместимы с ARM и могут использоваться в смартфонах. Примером могут служить наборы микросхем Apple, работающие на процессорах Cyclone или процессоры Qualcomm Kryo. SoC - это основные компоненты из чего состоит смартфон.
4. Внутренняя и оперативная память
Ни один смартфон не сможет работать без оперативной памяти и системного хранилища. Большинство устройств используют оперативную память LPDDR3 или LPDDR4, а некоторые высококлассные модели поставляются с LPDDR4X. Сочетание LP означает Low Power, напряжение питания этих микросхем снижено, а это делает их более эффективными в плане потребления энергии.
LPDDR4 более эффективен чем LPDDR3, а LPDDR4X эффективнее и экономичнее обоих. Также есть еще более аффективная память - LPDDR5.
Что касается внутреннего хранилища, то здесь применяется флеш память от 32 до 256 Гб. Требования пользователей постоянно растут и в соответствии с ними будут расти объемы. Когда вы включите телефон, то увидите что размер накопителя меньше чем заявлен. Например, сказано что накопитель на 64 Гб, а для записи доступно 53-55 Гб. Эта память занята операционной системой и приложениями.
5. Модемы
Каждый из производителей пытается выпустить самый быстрый LTE-чип. На данный момент самый быстрый 9-LTE чип, но его нет смысла брать, если ваша сотовая сеть не поддерживает такую скорость.
6. Камера
У всех смартфонов есть фронтальная и передняя камеры. Камеры состоят из трех основных частей:
- Сенсор - обнаруживает свет;
- Линза - концентрирует изображение;
- Процессор изображений.
Количество мегапикселей камеры смартфона по-прежнему остаются очень важным критерием, но теперь это имеет намного меньшее значение. Сейчас основным ограничивающим фактором становится сенсор камеры, а также его чувствительность когда через него проходит свет.
Сенсор может вести себя по-разному в каждом смартфоне, поэтому фото или видео будет иметь разный контраст, оттенки, насыщенность по сравнению с другими смартфонами. Поскольку смартфоны имеют небольшой размер сенсора, они, как правило, плохо работают в условиях слабого освещения.
7. Датчики
В большинство современных смартфонов встроено пять основных датчиков которые позволят использовать смартфон более удобно. Вот они:
- Акселерометр - используется приложениями для определения ориентации устройства и его движений. Например, позволяет использовать встряхивание смартфона для переключения музыки;
- Гироскоп - работает с акселерометром, чтобы обнаружить вращения вашего телефона. Полезно для игр в гонки;
- Цифровой компас - помогает найти Север для нормальной ориентации на картах;
- Датчик освещенности - этот датчик позволяет автоматически устанавливать яркость экрана в зависимости от окружающего света и помогает увеличить время автономной работы.
- Датчик приближения - во время разговора если устройство приближается к вашему уху, этот датчик автоматически блокирует экран чтобы предотвратить нежелательные касания.
Это были все основные элементы смартфона, в различных моделях могут быть и другие датчики, например, датчик пульса, давления и температуры, но они встречаются намного реже.
Выводы
Мы рассмотрели из чего состоит смартфон. Теперь, когда у вас больше информации о сложных компонентах, из которых состоит каждый смартфон, вы можете выбирать вашу будущую покупку сравнивая характеристики различных компонентов. Так вы выберите лучшее устройство, которое будет полностью отвечать вашим потребностям.
Читайте также: