вокруг какой-либо звезды. Таких объектов во Вселенной может быть великое множество, поскольку, по сути, они представляют собой «недооформившиеся» звёзды и коричневые карлики.
В принципе, в подзаголовке всё сказано: орбитальные телескопы обладают рядом важных преимуществ. Во-первых, им не мешают атмосферные возмущения, составляющие значительную проблему для наземных телескопов.
Во-вторых, если понадобится (а это иногда нужно), систему космических телескопов можно расположить на расстоянии, превышающем диаметр Земли, что позволит, например, значительно повысить точность оценки спектров далёких звёзд.
С другой стороны, и наземные телескопы списывать со счетов рано: в конце концов, техника совершенствуется, и количество открытых с их помощью экзопланет постоянно растёт. 504 известные ныне планеты — это «подтверждённые кандидаты». Ещё несколько десятков, если не сотен, ожидают подтверждения — и наверняка некоторые его получат.
Скорее всего, первая «землеподобная» экзопланета будет открыта ещё до середины десятилетия.
QNX в планшете RIM: откуда взялась эта платформа?
Недавно компания RIM, крупнейший производитель смартфонов в США, купила канадскую фирму QSS. Вскоре стало известно, зачем потребовалась эта сделка: RIM анонсировала планшетный компьютер, работающий под управлением операционной системы, основанной на QNX Neutrino.
Специалистам в области промышленной автоматизации дополнительных пояснений не требуется — им хорошо знакома эта платформа. Скоро с ней впервые познакомится и широкая публика.
Тридцать лет назад, в 1980 году, выпускники канадского университета Ватерлоо Гордон Белл и Дэн Додж вместе разработали основу ядра новой операционной системы реального времени. Тогда же они переехали в город Каната в провинции Онтарио и основали компанию Quantum Software Systems, которая через два года выпускает операционную систему QUNIX (читается как «кюникс», от англ. «quick» — быстрый).
Торговой маркой UNIX на тот момент владела корпорация AT&T. По её настоянию система была переименована в QNX, а позднее, уже в начале девяностых, и сама компания сменила название на QNX Software Systems (QSS).
К середине восьмидесятых появилась QNX2, а спустя десять лет за ней последовала QNX4. Разработчики ещё раз полностью переписали ядро, сосредоточив свои усилия на совместимости со стандартом POSIX. В QNX4 появилась встраиваемая графическая подсистема Photon microGUI, а кроме того, благодаря совместимости с POSIX, на неё были перенесены различные программы для Unix (в частности X Window System).
Среди специалистов бытует мнение, что QNX4 тогда была лучшей встраиваемой системой реального времени. Она широко использовалась (и до сих пор используется) в самых различных отраслях человеческой деятельности: управление промышленными роботами, диспетчеризация транспорта, космическая и оборонная промышленность.
В конце девяностых компания QSS разработала QNX6 (Neutrino), которая была выпущена в 2001 году. Помимо соответствия новой редакции стандарта POSIX, она отличается максимальной совместимостью с NetBSD и Linux (достаточно сказать, что новая сетевая подсистема QNX была портирована из NetBSD). При этом операционная система сохранила микроядерную архитектуру.
В настоящее время разработчикам (именно они являются клиентами QSS, ведь это встраиваемая ОС) доступна версия QNX 6.5, которая поставляется вместе с основанной на Eclipse средой разработки QNX Momentics (с ее помощью создают целевые системы для различных устройств).
В 2004 году QSS была куплена корпорацией Harman (да, сделка с RIM — не первая продажа компании), которая сохранила ее автономию, а Дэн Додж стал также вице-президентом Harman по информационным технологиям. В 2007 году исходные тексты QNX начали открывать под гибридной лицензией (в рамках проекта Foundry27), но при этом сама система осталась коммерческой. После покупки QSS компанией RIM доступ к исходным текстам был ограничен и началась новейшая история этой примечательной ОС.
Сложно описать архитектуру системы, не вдаваясь в ненужные большинству читателей технические подробности. Мы привыкли к ОС с монолитными ядрами, которые представляют собой большую программу, содержащую множество подсистем: систему управления процессами и памятью, дисковую подсистему и т. д. В QNX всё наоборот.
Ядро QNX — это небольшая (около 8Кб в QNX4 и от 20 до 32 Кб в QNX6) программа на ассемблере, которая занимается, в основно, планированием процессов и обеспечением взаимодействия между ними. Всё остальное делают сами запущенные процессы, притом здесь нет никакой принципиальной разницы между обычной пользовательской программой и, скажем, дисковой подсистемой. Любой процесс может быть запущен и остановлен в произвольный момент времени, причём если не нужно, например, работать с сетью — нет никакой необходимости запускать сетевую подсистему.
Подобный подход не только повышает масштабируемость, подобный подход делает QNX высоконадежной операционкой — ситуации, когда система приходит в неработоспособное состояния из-за отказа в одном из процессов здесь крайне маловероятны. Такие ОС называют микроядерными. У микроядерных ОС есть и недостатки — накладные расходы на переключение между процессами при подобном подходе возрастают. Однако в случае с QNX специалисты единодушно считают этот фактор несущественным.