Java в реальном времени
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( июнь 2017 г. ) |
Java реального времени — это всеобъемлющий термин, обозначающий комбинацию технологий, которая позволяет программистам писать программы , отвечающие требованиям реального времени, систем на языке программирования Java .
Java Сложная система управления памятью , встроенная поддержка потоков и параллелизма, безопасность типов и относительная простота создали спрос на ее использование во многих областях. Его возможности были расширены для поддержки вычислительных потребностей в реальном времени:
- Java реального времени поддерживает строгую на основе приоритетов модель потоков .
- поскольку потоки Java поддерживают приоритеты, блокировки механизмы Java поддерживают методы предотвращения инверсии приоритетов , такие как наследование приоритетов или протокол потолка приоритета , и
- обработка событий.
Первоначальное предложение [1] Открытый стандарт для Java реального времени был предложен Кельвином Нильсеном, который тогда работал научным сотрудником Университета штата Айова. Последующий обзорный документ был опубликован в « Сообщениях ACM» . [2] Чрезвычайно положительная реакция на эти ранние предложения привела к серии встреч, организованных Национальным институтом стандартов и технологий с целью создания открытого стандарта для Java реального времени. В конечном итоге NIST было сказано, что они не являются подходящим органом для установления стандартов, связанных с языком Java, поскольку Java является торговой маркой, а технологии принадлежат Sun Microsystems. Поэтому NIST завершил свои усилия публикацией требований консенсуса. [3] это можно было бы учесть в ходе будущих усилий по стандартизации, которые будет проводиться Sun Microsystems.
Когда было сформировано сообщество Java , самой первой попыткой стала спецификация Java реального времени JSR001. ряд реализаций полученной спецификации реального времени для Java ( RTSJ Появился ), в том числе эталонная реализация от Timesys , IBM WebSphere Real Time от Sun Microsystems , , Java SE Real-Time Systems от [4] PTC Perc от PTC, Inc. , [5] или JamaicaVM от aicas.
RTSJ решил критические проблемы, установив минимальную спецификацию для модели потоков (и разрешив подключение других моделей к виртуальной машине) и предусмотрев области памяти , которые не подлежат сборке мусора, а также потоки, которые не могут быть вытеснены с помощью сборщик мусора. Вместо этого эти области управляются с помощью управления памятью на основе регионов . Последняя спецификация, 2.0, также поддерживает прямой доступ к устройствам и детерминированную сборку мусора.
Спецификация реального времени для Java [ править ]
Спецификация реального времени для Java (RTSJ) — это набор интерфейсов в реальном времени и поведенческих усовершенствований, которые позволяют программировать компьютер на языке программирования Java . RTSJ 1.0 был разработан как JSR 1 в рамках процесса сообщества Java , который утвердил новый стандарт в ноябре 2001 года. RTSJ 2.0 разрабатывается в рамках JSR 282. Черновая версия доступна на странице JCP. [6] Более подробную информацию можно получить на сайте Aicas. [7]
См. также [ править ]
- Javolution — библиотека Java, совместимая с RTSJ
Ссылки [ править ]
- ^ http://www.cs.cornell.edu/courses/cs614/1999sp/papers/rtji.pdf
- ^ Нильсен, Кельвин (1998). «Добавление возможностей реального времени в Java» . Коммуникации АКМ . 41 (6): 49–56. дои : 10.1145/276609.276619 .
- ^ «Лаборатория информационных технологий» (PDF) . НИСТ . 28 апреля 2015 г.
- ^ Системы реального времени Java SE
- ^ Протоколы PTC
- ^ https://www.jcp.org/en/jsr/detail?id=282 JSR 282
- ^ https://www.aicas.com/cms/rtsj
Внешние ссылки [ править ]
- Проблемы проектирования и реализации Java реального времени
- Добавление возможностей работы в реальном времени в Java
- Требования к расширениям реального времени для платформы Java
- Спецификация реального времени для Java 2.0 (RTSJ 2.0)
- ДЖСР-282
- Спецификация реального времени для Java (RTSJ)
- JSR-1
- IBM WebSphere Real Time — полностью совместимая виртуальная машина RTSJ SE.
- JamaicaVM. Архивировано 29 февраля 2012 г. на Wayback Machine. Реализация RTSJ SE с детерминированной сборкой мусора.
- PTC Perc — виртуальная машина реального времени, основанная на Java Standard Edition, но с запатентованной детерминированной технологией сбора мусора, а не RTSJ.
- Система реального времени Sun Java SE
- Apogee Java в реальном времени с сборщиком мусора в реальном времени (снято с производства)
- Набор инструментов для внедрения и тестирования Timesys RTSJ
- jRate (Java Real-Time Extension) — расширение с открытым исходным кодом интерфейса и системы времени выполнения компилятора GNU GCJ, которое добавляет поддержку большинства функций, требуемых RTSJ.
- Международный семинар по технологиям Java для систем реального времени и встраиваемых систем (JTRES 2005) JTRES 2006 JTRES 2007 JTRES 2008 Архивировано 28 июня 2008 г. в Wayback Machine JTRES 2009 JTRES 2010 JTRES 2011 JTRES 2012 JTRES 2013 JTRES 2014 JTRES 2015
- LJRT Lund с открытым исходным кодом в реальном времени на основе Java
- Овм
- Фиджи VM Java в реальном времени
- Виртуальные машины Java в реальном времени