K42

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
K42
Разработчик IBM, Университет Торонто
Семейство ОС IBM
Последняя версия 5.0 (1999)
Тип ядра Микроядро
Лицензия Открытая
Состояние Актуальное
Веб-сайт K42

K42 — исследовательская операционная система с открытым исходным кодом. Предназначена для работы на 64-разрядных многопроцессорных системах с когерентностью кэш-памяти. Разрабатывается в Исследовательском центре IBM имени TJ Watson. Основное внимание в этой ОС уделяется производительности и масштабируемости системного ПО на крупномасштабные NUMA многопроцессорные компьютеры с разделяемой памятью.

K42 использует микроядерную архитектуру. K42 состоит из маленьких компонентов — обработчиков исключительных ситуаций, которые обслуживают микроядро, быстрого механизма межпроцессного взаимодействия (IPC) называемого защищённым вызовом процедур (PPC), и серверов для всех остальных компонентов ОС. Эти серверы существуют в отдельных адресных пространствах и зависят от скорости механизма IPC.

История

Ядро K42 создано на основе операционной системы Tornado[1] из Университета Торонто. K42 является третьим поколением исследований в области масштабируемости операционных систем. Вторым поколением была Tornado OS / NuMachine (англ.), а первым Hurricane OS[2] и Hector Multiprocessor.[3]

Особенности

K42 поддерживает двоичный интерфейс приложений Linux для платформ PPC32 и PPC4, поэтому большинство исполняемых файлов Linux PowerPC могут работать в K42 без модификации. Более того, K42 может использовать (и использует) драйверы устройств написанные под Linux, файловые системы и различные модули.

Ещё одним преимуществом дизайна K42 является достижение настраиваемости и поддержки системы. Будучи построенной на основе объектно-ориентированной модели, она позволяет приложениям настраивать под себя, а значит и оптимизировать, требуемые службы ОС путём горячей замены исполняемых объектов уровня ядра без прерывания работы системы, то есть «на лету». Это особенно важно для таких приложений, как базы данных и веб-серверы, которым возможность управления физическими ресурсами может помочь увеличить производительность.

Исходный код

Исходный код K42 доступен в репозитории git: http://silicoinformatics.seas.harvard.edu/kitchsrc.git

Примечания

  1. Архивированная копия. Дата обращения: 15 апреля 2007. Архивировано 15 апреля 2007 года.
  2. Архивированная копия (недоступная ссылка). Дата обращения: 15 апреля 2007. Архивировано 13 мая 2007 года.
  3. Архивированная копия (недоступная ссылка). Дата обращения: 15 апреля 2007. Архивировано 7 февраля 2007 года.

Ссылки