Jump to content

ThreadX

Затмение ThreadX
Разработчик Экспресс-логика (оригинал)
Майкрософт (ранее)
Фонд Затмения (текущий)
Написано в С
Рабочее состояние Текущий
Исходная модель Открытый исходный код
Первоначальный выпуск 1997 год ; 27 лет назад ( 1997 )
Последний выпуск 6.4.1 [1] / 28 февраля 2024 г .; 5 месяцев назад ( 28.02.2024 )
Репозиторий github /eclipse-threadx /threadx /
Маркетинговая цель Встроенные системы , Интернет вещей : включая датчики, устройства, пограничные маршрутизаторы, шлюзы.
Обновить метод Переустановить
Менеджер пакетов Никто
Платформы ARC , ARM , Blackfin, CEVA, C6x, MIPS , NXP , PIC , PowerPC , RISC-V , RX, SH, SHARC , TI , V850, Xtensa, x86 , Coldfire и другие
ядра Тип Встроенное , детерминированное , реального микроядро пикоядро времени
По умолчанию
пользовательский интерфейс
Поддержка встроенного пользовательского интерфейса (GUIX)
Лицензия МОЯ лицензия
Официальный сайт тредкс .что

Eclipse ThreadX (ранее называвшаяся Azure RTOS и ThreadX ) — это высокодетерминированная встроенная операционная система реального времени программируемая в основном на языке C. (RTOS) ,

ThreadX изначально был разработан и продан компанией Express Logic из Сан-Диего, Калифорния , США. Автор ThreadX — Уильям Лами , [2] который также был первоначальным автором Nucleus RTOS в 1990 году. Уильям Лами был президентом и генеральным директором Express Logic.

за нераскрытую сумму Express Logic была куплена Microsoft 18 апреля 2019 года и переименована в Azure RTOS. [3] 21 ноября 2023 года Microsoft объявила, что Azure RTOS перейдет на модель с открытым исходным кодом под управлением Eclipse Foundation и сделает проект доступным под разрешительной лицензией MIT . [4] Поскольку Eclipse Foundation стал новым домом, Azure RTOS была переименована в Eclipse ThreadX или в краткой форме «ThreadX».

Название ThreadX происходит от потоков , которые используются в качестве исполняемых элементов, а буква X обозначает переключение контекста , т. е. она переключает потоки. ThreadX обеспечивает упреждающее планирование на основе приоритетов, быстрый на прерывания отклик , управление памятью , межпоточную связь, взаимное исключение , уведомление о событиях и синхронизации функции потоков. Основные отличительные технологические характеристики ThreadX включают порог вытеснения, наследование приоритетов , эффективное управление таймерами, быстрые программные таймеры, дизайн пикоядра , цепочку событий и небольшой размер: минимальный размер процессора с архитектурой ARM составляет около 2 КБ.

ThreadX поддерживает многоядерные процессорные среды посредством асимметричной многопроцессорной обработки (AMP) или симметричной многопроцессорной обработки (SMP). Изоляция потоков приложений с помощью модуля управления памятью (MMU) или защиты памяти (MPU) доступна в модулях ThreadX.

ThreadX имеет обширные сертификаты безопасности от Technischer Überwachungsverein (TÜV, англ.: Ассоциация технической инспекции) и UL (ранее Underwriters Laboratories), а также Ассоциации надежности программного обеспечения автомобильной промышленности соответствует стандарту MISRA C .

ThreadX является основой платформы X-Ware Интернета вещей (IoT) Express Logic, которая также включает поддержку встроенной файловой системы (FileX), поддержку встроенного пользовательского интерфейса (GUIX), встроенный набор интернет-протоколов (TCP/IP) и возможность подключения к облаку (NetX). /NetX Duo) и универсальной последовательной шины ( USB поддержку ) (USBX). ThreadX завоевал высокую оценку разработчиков и является очень популярной ОСРВ. [5] По состоянию на 2017 год По данным маркетинговой исследовательской компании VDC Research, ОСРВ ThreadX стала одной из самых популярных ОСРВ в мире: она используется более чем в 6,2 миллиардах устройств, включая бытовую электронику, медицинские устройства, приложения для сетей передачи данных и SoC. [6]

Поддерживаемые платформы

[ редактировать ]
  • РУКА
    • ARM7
    • ARM9
    • ARM Кортекс-А
    • ARM Кортекс-Р
    • АРМ Кортекс-М
    • ARM Cortex-A 64-бит
    • ARMv8M TrustZone
  • Каденс
    • Кстенса
  • ЧТО-НИБУДЬ
    • ТикЛайт-III
  • Микрочип
    • АВР32
    • ПИК24
    • dsPIC33
    • ПИК32
    • Сэм резюме
    • САМ7
    • СЭМ9
    • САМА 5
  • МИПС
    • МИПС32 4Кх
    • МИПС32 14Кх
    • МИПС32 24Кх
    • МИПС32 34Кх
    • МИПС32 74Кх
    • МИПС32 1004Кх
    • ИнтерАптив
    • микроАптив
    • активный
    • М-Класс
  • НХП
    • Холодный огонь+/Холодный огонь
    • i.MX
    • Кинетический
    • ЛПК
    • PowerPC
    • С32
  • СТ
    • СТМ32Ф0
    • СТМ32Ф1
    • СТМ32Ф2
    • СТМ32Ф3
    • СТМ32Ф4
    • СТМ32Ф7
    • СТМ32H5
    • СТМ32H7
    • СТМ32Л
    • СТМ32U0
    • СТМ32У5
    • СТМ32ВБ
  • Кремниевые лаборатории
    • Геккон
    • Гигантский геккон
    • Гигантский геккон S1
    • Счастливый геккон
    • Джейд Геккон
    • Леопардовый геккон
    • Жемчужный геккон
    • Крошечный геккон
    • Чудо-геккон
    • Нулевой геккон
  • АРК
    • АРК 600
    • АРК 700
    • АРК ЭМ
    • АРК ХС

ThreadX был впервые представлен в 1997 году. ThreadX 4 был представлен в 2001 году. ThreadX 5 был представлен в 2005 году и является последней версией на 2020 год. .

FileX — встроенная файловая система для ThreadX была представлена ​​в 1999 году.

NetX – встроенный сетевой стек TCP/IP для ThreadX был представлен в 2002 году.

USBX — встроенная поддержка USB для ThreadX была представлена ​​в 2004 году.

ThreadX SMP для многоядерных сред SMP был представлен в 2009 году.

Модули ThreadX были представлены в 2011 году.

ThreadX получил сертификаты безопасности: TÜV IEC 61508 в 2013 году и UL 60730 в 2014 году.

GUIX — встроенный пользовательский интерфейс для ThreadX был представлен в 2014 году.

за нераскрытую сумму Express Logic была куплена Microsoft 18 апреля 2019 года. [3]

Технология

[ редактировать ]

ThreadX реализует алгоритм упреждающего планирования на основе приоритетов с собственной функцией, называемой порогом вытеснения. Было показано, что последний обеспечивает большую степень детализации критических разделов, уменьшает переключение контекста и является предметом академических исследований по обеспечению планирования. [7]

ThreadX предоставляет уникальную конструкцию, называемую цепочкой событий. [8] где приложение может зарегистрировать функцию обратного вызова на всех интерфейсах прикладного программирования (API), которые могут сигнализировать о внешнем событии. Это помогает приложениям объединять различные общедоступные объекты в ThreadX, чтобы один поток мог эффективно блокировать несколько объектов.

ThreadX также предоставляет счетные семафоры , мьютексы с необязательным наследованием приоритетов, флаги событий, очереди сообщений , программные таймеры, блочную память фиксированного размера и блочную память переменного размера. Все API в ThreadX, которые блокируют ресурсы, также имеют необязательный тайм-аут.

ThreadX предлагает поддержку многоядерных процессоров через AMP или SMP. Изоляция кода приложения доступна через компонент ThreadX Modules.

Основные компоненты

[ редактировать ]

Компоненты ThreadX RTOS включают:

  1. Встроенная файловая система
  2. Встроенный графический интерфейс пользователя
  3. Встроенная сеть
  4. Встроенный USB
  5. Сертификация безопасности
  6. Упаковка

Встроенная файловая система

[ редактировать ]

FileX — это встроенная файловая система для ThreadX. FileX поддерживает форматы FAT12 , 16 , 32 и exFAT . Последний увеличивает размер файлов FAT за пределы 4 ГБ, что особенно полезно для видеофайлов, и для использования требуется лицензия непосредственно от Microsoft. FileX также обеспечивает отказоустойчивость и поддерживает прямые носители флэш-памяти NOR и NAND с помощью продукта для выравнивания износа флэш-памяти под названием LevelX.

Встроенный графический интерфейс пользователя

[ редактировать ]

GUIX — это встроенный графический интерфейс пользователя (GUI) для ThreadX. GUIX предоставляет 2D- систему времени выполнения (среду) для встроенных приложений, работающих под управлением ThreadX. GUIX поддерживает несколько устройств отображения с различными разрешениями экрана и глубиной цвета. множество предопределенных графических виджетов Доступно . Хост-инструмент Windows WYSIWYG под названием GUIX Studio автоматически генерирует код C для GUIX для выполнения во время выполнения.

Встроенная сеть

[ редактировать ]

NetX Duo — это встроенная система TCP/IP для ThreadX. NetX Duo поддерживает сети IPv4 и IPv6 , а также такие протоколы, как ARP, Auto IP, DHCP, DNS, DNS-SD, FTP, HTTP, ICMP, IGMP, mDNS, POP3, PPP, PPPoE, RARP, TFTP, SNTP, SMTP, SNMP и ТЕЛНЕТ. Безопасность сети на уровне IP обеспечивается протоколом IPsec. Безопасность на уровне сокетов TCP и UDP обеспечивается TLS и DTLS соответственно. Поддержка протоколов IoT Cloud включает CoAP, MQTT и LWM2M. NetX Duo также поддерживает Thread и 6LoWPAN. В 2017 году ThreadX и NetX Duo стали сертифицированными продуктами Thread. [9]

Встроенный USB

[ редактировать ]

USBX — это встроенная система универсальной последовательной шины ( USB ) для ThreadX. USBX поддерживает как хост, так и устройство. Поддержка хост-контроллера включает EHCI, OHCI и собственные хост-контроллеры USB. USBX также поддерживает OTG. Поддержка класса USBX включает Audio, Asix, CDC/ACM, CDC/ECM, DFU, GSER, HID, PIMA, Printer, Prolific, RNDIS и Storage.

Сертификация безопасности

[ редактировать ]

ThreadX (а также FileX и NetX Duo) прошли предварительную сертификацию SGS-TÜV Saar на соответствие следующим стандартам безопасности: IEC 61508 SIL 4, IEC 62304 класс C, ISO 26262 ASIL D и EN 50128 SW-SIL 4.

ThreadX (а также FileX и NetX Duo) прошли предварительную сертификацию UL на соответствие следующим стандартам безопасности: UL/ IEC 60730 , UL/ IEC 60335 , UL 1998

ThreadX также сертифицирован по стандартам DO-178 различными военными и аэрокосмическими компаниями. Он поддерживается популярными Transport Layer Security (SSL/TLS), библиотеками такими как wolfSSL . [10]

Упаковка

[ редактировать ]

По состоянию на 2017 год ThreadX поставляется как часть X-Ware IoT Platform с полным исходным кодом и без каких-либо выплат роялти за выполнение .

Продукты, использующие его

[ редактировать ]

Некоторые громкие продукты, использующие ThreadX, варьируются от небольших носимых устройств до принтеров Hewlett-Packard и даже NASA космического Deep Impact зонда . [11]

Линейка Raspberry Pi одноплатных компьютеров запускает ThreadX как двоичный объект на графическом процессоре (GPU). Это контролирует начальную загрузку , которая, в свою очередь, используется для загрузки дополнительных операционных систем, таких как Linux , и продолжает работать в более привилегированной роли даже после процесса загрузки. [12]

См. также

[ редактировать ]
  1. ^ «Релизы · eclipse-rtos/Threadx» . Гитхаб .
  2. ^ Коул, Бернард; МакКоннел, Тони (3 сентября 2010 г.). «Билл Лами: История человека и его операционных систем реального времени» . Встроенный . АспенКор.
  3. ^ Перейти обратно: а б Джанакирам, MSV (21 апреля 2019 г.). «Как сбор данных Express Logic помогает Microsoft и экосистеме Интернета вещей» . Форбс .
  4. ^ «Microsoft вносит вклад Azure RTOS в открытый исходный код» . Майкрософт . Проверено 23 ноября 2023 г.
  5. ^ Карбоне, Джон. «Высокопроизводительная ОСРВ «ThreadX»: экспресс-логика: сокращение времени вывода на рынок и снижение стоимости разработки» . Ренесас .
  6. ^ «Интернет вещей и встроенные операционные системы» . Исследования ВДЦ . Проверено 31 июля 2018 г.
  7. ^ Ван, Юн; Саксена, Манас. «Планирование задач с фиксированным приоритетом с порогом вытеснения» (PDF) . Кафедра компьютерных наук . Университет Юты.
  8. ^ «Цепочка событий позволяет системам реального времени более эффективно реагировать на несколько событий в реальном времени» (PDF) . Экспресс-логика .
  9. ^ «Сертифицированная продукция по резьбе» . Группа тем . Архивировано из оригинала 14 июня 2018 г. Проверено 11 января 2018 г.
  10. ^ «wolfSSL с улучшенной поддержкой ThreadX/NetX» . волкSSL . 16 января 2018 г. Проверено 13 февраля 2019 г.
  11. ^ «В проекте НАСА «Deep Impact» используются встроенные системы, позволяющие попасть в яблочко на расстоянии 80 миллионов миль» . Военные встраиваемые системы .
  12. ^ нахопаркер (2 февраля 2019 г.). «Что не так с Raspberry Pi» . Владейте своими битами . Архивировано из оригинала 31 мая 2022 г. Проверено 9 марта 2024 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 3ad41613b18ded4581093ebaad057906__1716371520
URL1:https://arc.ask3.ru/arc/aa/3a/06/3ad41613b18ded4581093ebaad057906.html
Заголовок, (Title) документа по адресу, URL1:
ThreadX - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)