top of page
UC-TECH-LOGO.jpg

Операционная система для мобильных

UCM.os

Как устроена и работает наша OS для мобильных - UCM 1.02

 

Упрощенная блок-схема 
Boot
Root
нашаOS

с привязкой к железу или без

Оболочка

от поставленной задачи "дружит"

или с

Linux Kernel

UCM.os

ART

+

x

UCM.os

Linux Unix

+

Android

или с

Apple

или с

другими...

Архитектура платформы

Linux Kernel

Данный уровень (boot) является базовым в архитектуре UCM, так как вся система UСM построена на ядре Linux с необходимыми архитектурными изменениями.

Основные задачи, выполняемые ядром.

Ядро содержит в себе драйверы, необходимые для взаимодействия с оборудованием. Такие как Audio, Binder (IPC), Display, Bluetooth, Camera, Keypad, Shared Memory, USB, WIFI.

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

Linux Kernel обеспечивает управление памятью и процессом.

Управление памятью.
При запуске различных приложений ядро ​​гарантирует, что пространство памяти, которое они используют, не конфликтует и не перезаписывает друг друга. Также оно проверяет, что все приложения получают достаточный объем памяти для своей работы, и в то же время следит, чтобы ни одно приложение не занимало слишком много места.

Управление процессом.
Каждое приложение в UCM работает в отдельном процессе. Ядро же отвечает за управление этими процессами, а именно за создание, приостановку, остановку, или завершение процессов, за одновременное выполнение нескольких процессов, обмен данными между процессами, запуск процессов в фоновом режиме. Помимо этого ядро распределяет работу между процессорами устройства, что максимизирует производительность устройств с несколькими ядрами.

Hardware Abstraction Layer (HAL)

HAL обеспечивает связь между драйверами и библиотеками. Состоит он из нескольких библиотечных модулей, каждый из которых реализует интерфейс для определенного аппаратного компонента (Bluetooth, Камера и т.д.). И когда к оборудованию устройства обращаются через API-интерфейс, загружается необходимый для его работы модуль.

Компоненты Android, которые мы используем

Android Runtime (ART)

Основным языком для UCM, как и для Android был выбран Java, поскольку это один из самых популярных языков программирования. Для Java существует много наработок и специалистов, а написанные на нем программы переносимы между операционными системами.

Но для того, чтобы программа работала на Java необходима виртуальная машина ‒ Java Virtual Machine. В Android используется виртуальная машина Android Runtime (ART), мы так же ее используем. Эта машина специально оптимизирована для работы на мобильных устройствах: с нехваткой памяти, с постоянной выгрузкой и загрузкой приложений и т.д.

 

Native C/C++ Libraries

Набор библиотек, написанных на языках C или C++ и используемых различными компонентами UCM, такие как WebKit, Media Framework,OpenGL, SQLite.

Java API Framework (Application Framework)

Набор API, написанный на языке Java и предоставляющий разработчикам доступ ко всем функциям ОС UCM. Эти API-интерфейсы образуют строительные блоки, необходимые для создания приложений, упрощая повторное использование основных, модульных, системных компонентов и сервисов, таких как:

  • Activity Manager - управляет жизненным циклом приложения и обеспечивает общий навигационный стек обратных вызовов.

  • Window Manager - управляет окнами и является абстракцией библиотеки Surface Manager.

  • Content Providers - позволяет приложению получать доступ к данным из других приложений или обмениваться собственными данными, т.е. предоставляет механизм для обмена данными между приложениями.

  • View System - содержит строительные блоки для создания пользовательского интерфейса приложения (списки, тексты, кнопки и т.д.), а также управляет событиями элементов пользовательского интерфейса.

  • Package Manager - управляет различными видами информации, связанными с пакетами приложений, которые в настоящее время установлены на устройстве.

  • Telephony Manager - позволяет приложению использовать возможности телефонии.

  • Resource Manager - обеспечивает доступ к таким ресурсам, как локализованные строки, растровые изображения, графика и макеты.

  • Location Manager - возможность определения местоположения.

  • Notification Manager - отображение уведомлений в строке состояния.

 

System Apps

Верхний уровень в архитектуре OS UCM строится согласно поставленным задачам и может не только выглядеть как IOS или Android, но и дружить с RUStore, Google Play, AppGallery, Apple и другими магазинами приложений.

Смотрим живьем>>>

bottom of page