Мобильные устройства получат единый набор системных API

Ассоциация Multicore Association вырабатывает спецификации для модели программирования, которая позволит снизить сложность кода под современные многоядерные мобильные процессоры для смартфонов, планшетов и различных встраиваемых систем. Ассоциация намерена представить единый набор API для стандартизации коммуникаций, разделения ресурсов, виртуализации процессорных ядер.

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

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

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

На сегодня Multicore Association уже завершила работу над MCAPI (multicore communication API) и MRAPI (multicore resource management API) для коммуникаций и управления ресурсами соответственно. Также была создана рабочая группа для создания новых инструментов и API, связанными с виртуализацией.

Сейчас в отрасли есть много игроков, кто бы выиграл от установления таких API. Наша основная цель — предоставить всем заинтересованным сторонам требуемую переносимость и универсальность, — говорит Леви.

Он отметил, что ранее были попытки создания универсальных моделей разработки и универсальных API, но все они были пропиетарными и ограничивались узким кругом оборудования.

Смартфоны могут быть созданы для работы с разными процессорными ядрами, разными операционными системами и каждое ядро может в принципе предоставлять различный функционал, — говорит Колин Уоллс, разработчик программного обеспечения в компании Mentor Graphics, создающей ОС реального времени Nucleus. По его словам, в некоторых устройствах одно процессорное ядро могло бы управлять операционной системой, другое пользовательским интерфейсом и приложениями, третье коммуникационными процессами, связанным с сотовой сетью, четвертое управлять данными и процессами.

За счет использования MCAPI встроенные устройства могут обойтись без использования собственного внутриядерного кода для коммуникации. Этот код переносим между операционными системами и чипами разных архитектур, — говорит Уоллс.

MCAPI позволяет писать программистам код под многоядерные чипы единократно и использовать его повторно на разных мобильных продуктах, причем таким же образом упрощается работа разработчиков по обновлению программного обеспечения. Свен Бремер, гендиректор PolyCore Software, говорит, что MCAPI будет использоваться в телекоммуникационной инфраструктуре и сервисах передачи данных. Возможно и специализированное использование набора, например в электронных медицинских устройствах, высокопроизводительных вычислительных системах и военном/аэрокосмическом оборудовании.

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

Например, симметричные многопроцессорные Linux-системы не поддерживают возможность оповещения приложений об изменении доступности ресурсов динамически. Для преодоления этой сложности, MRAPI предлагает набор функций для управления разделяемыми ресурсами и ответа на измененные ресурсы.

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

На сегодня инициативе Multicore Association поддержку уже оказали компании Intel, Freescale Semiconductor, Mentor и Texas Instruments, каждая из которых предложила свои инструменты для отладки и трассировки кода. Также в ассоциацию входят компании IBM, Samsung и Advanced Micro Devices.

cybersecurity.ru

Редакция
Оцените автора
BYBANNER.COM

Добавить комментарий