ВУЗ:
Составители:
операционные системы реального времени примитивны – простые
программы, которые предлагали пользователю чуть больше, чем просто
библиотека основных функций. Но в наше время пользователи требуют
доступ к TCP/IP, графическому дисплею и системе окон, базам данных и
другим службам, которые не являются ни примитивными, ни простыми.
Одно из решений – добавить non-real-time службы к базовому ядру
реального времени, что и было проделано в VXworks и немного по-
другому в микроядре QNX. Вторая возможность – модифицировать
стандартное ядро и сделать его полностью прерываемым.
RT-Linux организован третьим способом, в котором простое ядро
реального времени запускает обычное ядро как одну из задач реального
времени с самым низким приоритетом, используя виртуальную машину
для того, чтобы сделать стандартное ядро полностью прерываемым.
В RT-Linux все прерывания обслуживаются ядром реального
времени, а затем, передаются стандартному ядру, но только в том случае,
если нет необходимости запускать одну из задач реального времени. Для
того чтобы минимизировать количество изменений в стандартном ядре,
этот механизм реализован при помощи эмулирования ICH (Interrupt Control
Hardware). Ядро реального времени и пользовательские задачи Linux могут
обмениваться данными через неблокируемые очереди и сегменты
разделяемой памяти.
С точки зрения программиста очереди выглядят как стандартные
последовательные устройства UNIX, доступ к которым возможен при
помощи системных вызовов POSIX read/write/open/ioctl. Разделяемая
память доступна через системный вызов mmap.
RT-Linux использует Linux для загрузки, доступа к большинству
устройств, работы с сетью, файловыми системами, управлением
65
операционные системы реального времени примитивны – простые программы, которые предлагали пользователю чуть больше, чем просто библиотека основных функций. Но в наше время пользователи требуют доступ к TCP/IP, графическому дисплею и системе окон, базам данных и другим службам, которые не являются ни примитивными, ни простыми. Одно из решений – добавить non-real-time службы к базовому ядру реального времени, что и было проделано в VXworks и немного по- другому в микроядре QNX. Вторая возможность – модифицировать стандартное ядро и сделать его полностью прерываемым. RT-Linux организован третьим способом, в котором простое ядро реального времени запускает обычное ядро как одну из задач реального времени с самым низким приоритетом, используя виртуальную машину для того, чтобы сделать стандартное ядро полностью прерываемым. В RT-Linux все прерывания обслуживаются ядром реального времени, а затем, передаются стандартному ядру, но только в том случае, если нет необходимости запускать одну из задач реального времени. Для того чтобы минимизировать количество изменений в стандартном ядре, этот механизм реализован при помощи эмулирования ICH (Interrupt Control Hardware). Ядро реального времени и пользовательские задачи Linux могут обмениваться данными через неблокируемые очереди и сегменты разделяемой памяти. С точки зрения программиста очереди выглядят как стандартные последовательные устройства UNIX, доступ к которым возможен при помощи системных вызовов POSIX read/write/open/ioctl. Разделяемая память доступна через системный вызов mmap. RT-Linux использует Linux для загрузки, доступа к большинству устройств, работы с сетью, файловыми системами, управлением 65
Страницы
- « первая
- ‹ предыдущая
- …
- 63
- 64
- 65
- 66
- 67
- …
- следующая ›
- последняя »