SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Tmpa’14, 
14.11.2014 
Кострома 
Подходы 
к 
фрагментации 
системы 
паравиртуализации 
Василий 
Сартаков,Николай 
Голиков 
ksys 
labs 
{sartakov,golikov}@ksyslabs.org
Agenda 
• Введение 
• Previous 
works 
• Концептуальный 
подход 
• Дизайн 
L4Linux 
• Фрагментация 
• Текущий 
статус
Code 
reuse 
• Не 
смотря 
на 
активные 
исследовательские 
работы 
в 
области 
операционных 
систем 
новые 
разработки 
крайне 
редко 
доходят 
до 
реального 
использования 
• Реальность 
рынка 
программных 
продуктов 
такова, 
что 
продукты 
не 
совместимые 
с 
уже 
существующими 
или 
требующие 
значительных 
затрат 
по 
адаптации 
существующего 
ПО 
так 
и 
остаются 
экспериментальными 
разработками 
• Пример: 
• Доминирование 
идеологии 
everything 
is 
file 
• Доминирование 
POSIX 
• В 
то 
время 
как 
давно 
уже 
существует 
идеология 
Everything 
is 
an 
Object
Виртуализация 
• Виртуализация 
является 
решением 
• Виртуализируется 
все: 
• API, 
ABI, 
POSIX… 
• Механизм 
паравиртуализации
L4Linux 
• Перенос 
ядра 
Linux 
в 
пользовательское 
пространство 
• Запуск 
двоичных 
программ 
Linux 
в 
окружении 
микрядра
Защищенность 
L4Linux 
Сартаков 
В. 
A., 
Тарасиков 
А. 
С. 
Защита 
микроядерного 
окружения 
L4Re 
от 
атак 
на 
стек 
// 
Безопасность 
информационных 
технологий. 
2014. 
Т. 
4. 
• Память 
под 
L4Linux 
выделяется 
одним 
регионом 
(dataspace) 
• Невозможно 
применить 
ни 
ASLR, 
ни 
стек 
протекцию 
• Синтетические 
тесты 
на 
проникновение 
выявили 
уязвимость 
к 
атакам 
на 
стек
Иными 
словами 
• Необходимо 
разделение 
на 
компоненты 
(фрагментация) 
• С 
последующим 
выстраиванием 
связей
Agenda 
• Введение 
• Previous 
works 
• Концептуальный 
подход 
• Дизайн 
L4Linux 
• Фрагментация 
• Текущий 
статус
Device-­‐Driver-­‐Environment 
Kit 
• DDE 
kit 
– 
слой 
сопряжения 
на 
уровне 
исходного 
кода 
• Weisbach 
Hannes. 
DDEKit 
Approach 
for 
Linux 
User 
Space 
Drivers. 
2011.
Barelfish 
• Решает 
проблему 
масштабирования. 
(проблемы 
блокировок, 
memory 
management) 
• Нет 
коммуникации 
между 
ядрами 
на 
низком 
уровне 
• Каждое 
ядро 
имеет 
свою 
копию 
ОС 
и 
общается 
асинхронно, 
как 
элементы 
в 
распределенной 
системе. 
Source: 
hŒp://www.barrelfish.org/barrelfish_sosp09.pdf
seL4, 
NewtOS, 
L4::Reap 
• Keep 
net 
working 
-­‐ 
on 
a 
dependable 
and 
fast 
networking 
stack 
/ 
Tomas 
Hruby, 
Dirk 
Vogt, 
Herbert 
Bos 
[и 
др.] 
// 
In 
Dependable 
Systems 
and 
Networks. 
IEEE, 
2012. 
С. 
1–12. 
• Klein 
Gerwin, 
Derrin 
Philip, 
Elphinstone 
Kevin. 
Experience 
report: 
seL4: 
formally 
verifying 
a 
high-­‐performance 
microkernel 
// 
ACM 
Sigplan 
No–ces 
/ 
ACM. 
Т. 
44. 
2009. 
С. 
91–96. 
• The 
mul–kernel: 
a 
new 
OS 
architecture 
for 
scalable 
mul–core 
systems 
/ 
Andrew 
Baumann, 
Paul 
Barham, 
Pierre-­‐Evariste 
Dagand 
[и 
др.] 
// 
Proceedings 
of 
the 
ACM 
SIGOPS 
22nd 
symposium 
on 
Opera–ng 
systems 
principles 
/ 
ACM. 
2009. 
С. 
29–44 
• Сартаков 
Василий, 
Тарасиков 
Александр. 
Анализ 
производительно-­‐ 
сти 
сетевой 
подсистемы 
микроядерного 
окружения 
Genode 
// 
Tools 
& 
Methods 
of 
Program 
Analysis. 
2013.
Agenda 
• Введение 
• Previous 
works 
• Концептуальный 
подход 
• Дизайн 
L4Linux 
• Фрагментация 
• Текущий 
статус
Концептуальный 
подход 
• Избыточная 
фрагментация 
Разделение 
на 
компоненты 
плюс 
дублирование 
• Рекомпозиция 
системы 
Группировка 
компонент 
на 
вычислительных 
ядрах 
• Одно 
ядро 
ОС 
• Минимизация 
межядерных 
коммуникаций 
• Сборка 
на 
ядре 
минимального 
набора 
компонент 
L4Linux 
для 
поддержки 
работы 
конкретной 
программы
Agenda 
• Введение 
• Previous 
works 
• Концептуальный 
подход 
• Дизайн 
L4Linux 
• Фрагментация 
• Текущий 
статус
Дизайн 
L4Linux 
• L4Linux 
как 
часть 
окружения 
• Доступ 
драйверов 
к 
устройствам 
• Запуск 
программ
Доступ 
к 
устройствам 
• Отображение 
физической 
памяти 
устройств 
в 
виртуальное 
адресное 
пространство 
L4Linux 
• L4Linux 
может 
запросить 
у 
окружения 
и 
процесса 
Init 
прерывание. 
Для 
этого 
в 
контексте 
исполнения 
создается 
специализированный 
поток 
регистрируемый 
в 
системе 
как 
обработчик 
прерывания. 
Доставка 
прерывания 
осуществляется 
через 
доставку 
сообщения 
с 
разблокировкой 
потока 
прерывания
Запуск 
программ 
• Программы 
L4Linux 
являются 
программами 
окружения 
L4 
• Все 
системные 
вызовы 
программы 
обрабатываются 
как 
page 
fault. 
Каждой 
программе 
назначается 
ядро 
L4Linux 
в 
качестве 
обработчика 
page 
faults.
Agenda 
• Введение 
• Previous 
works 
• Концептуальный 
подход 
• Дизайн 
L4Linux 
• Фрагментация 
• Текущий 
статус
Previous 
• Извлечение 
подсистем 
: 
• Dde_linux 
• Dde_ipxe 
• Dde_oss 
• Rump 
kernel 
…Используются 
через 
слои 
сопряжения
Обобщенный 
подход 
• Выбирается 
изолированная 
подсистема 
ядра 
Linux 
• Анализируется 
API 
подсистемы 
и 
зависимости 
в 
заголовочных 
файлах 
и 
других 
подсистемах 
• Зависимые 
заголовочные 
файлы 
вместе 
с 
исходным 
кодом 
извлекаются 
исходного 
кода 
ядра 
Linux 
• API 
подсистемы 
накладывается 
на 
механизм 
сообщений 
микроядерного 
окружения. 
В 
нашем 
случае 
– 
необходима 
реализация 
интерфейса 
взаимодействия 
другими 
компонентами 
L4Linux.
Подход::минимальный 
сборка 
• Вместо 
извлечения 
подсистем 
и 
создания 
слоя 
сопряжения 
для 
работы 
подсистемы 
в 
окружении 
микроядра, 
мы 
извлекаем 
минимальный 
набор 
компонент 
L4Linux 
необходимых 
для 
работы 
конкретной 
программы, 
разбиваем 
их 
по 
адресным 
пространствам 
и 
группируем 
вместе 
с 
программой 
на 
одном 
ядре 
• Минимальный 
набор 
подсистем 
фрагментированного 
L4Linux: 
• загрузчик 
процессов 
• диспетчер 
системных 
вызовов 
• обработчик 
page 
fault
Agenda 
• Введение 
• Previous 
works 
• Концептуальный 
подход 
• Дизайн 
L4Linux 
• Фрагментация 
• Текущий 
статус
Текущий 
статус 
• Ручное 
разделение 
L4Linux 
на 
компоненты 
• Извлечение 
криптографической 
подсистемы, 
блочного 
ввода-­‐вывода, 
сетевого 
стека 
и 
драйверов 
для 
proof 
of 
concept

Weitere ähnliche Inhalte

Was ist angesagt?

Anton Tsitou "Cycle ORM and Graphs"
Anton Tsitou "Cycle ORM and Graphs"Anton Tsitou "Cycle ORM and Graphs"
Anton Tsitou "Cycle ORM and Graphs"Fwdays
 
Внедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной ШинеВнедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной ШинеSQALab
 
Формальная верификация кода на языке Си
Формальная верификация кода на языке СиФормальная верификация кода на языке Си
Формальная верификация кода на языке СиPositive Hack Days
 
ковалев нестандатное нт
ковалев    нестандатное нтковалев    нестандатное нт
ковалев нестандатное нтAlexei Lupan
 
Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Fwdays
 
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)SPB SQA Group
 
Разработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоРазработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоDotNetConf
 
Chebit 12-10. Использование Ruby & r spec для тестирования нерубишного проекта
Chebit 12-10. Использование Ruby & r spec для тестирования нерубишного проектаChebit 12-10. Использование Ruby & r spec для тестирования нерубишного проекта
Chebit 12-10. Использование Ruby & r spec для тестирования нерубишного проектаDmitry Maksimov
 
TMPA-2015: Automated process of creating test scenarios for financial protoco...
TMPA-2015: Automated process of creating test scenarios for financial protoco...TMPA-2015: Automated process of creating test scenarios for financial protoco...
TMPA-2015: Automated process of creating test scenarios for financial protoco...Iosif Itkin
 
Опыт использования Erlang в разработке многопользовательской игры
Опыт использования Erlang в разработке многопользовательской игрыОпыт использования Erlang в разработке многопользовательской игры
Опыт использования Erlang в разработке многопользовательской игрыYuri Zhloba
 
DevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияDevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияSQALab
 
Внедрение автоматизации тестирования в highload проекте с непрерывной выкладкой
Внедрение автоматизации тестирования в highload проекте с непрерывной выкладкойВнедрение автоматизации тестирования в highload проекте с непрерывной выкладкой
Внедрение автоматизации тестирования в highload проекте с непрерывной выкладкойSQALab
 
TMPA-2013 Itsykson: Java Program Analysis
TMPA-2013 Itsykson: Java Program AnalysisTMPA-2013 Itsykson: Java Program Analysis
TMPA-2013 Itsykson: Java Program AnalysisIosif Itkin
 
Лев Валкин — Кое-что про Erlang
Лев Валкин — Кое-что про ErlangЛев Валкин — Кое-что про Erlang
Лев Валкин — Кое-что про ErlangYury Yurevich
 
Badger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктовBadger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктовSQALab
 
что пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studio
что пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studioчто пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studio
что пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studiocorehard_by
 
Как приручить реактивное программирование
Как приручить реактивное программированиеКак приручить реактивное программирование
Как приручить реактивное программированиеDotNetConf
 
Как это будет: ASP.NET Core
Как это будет: ASP.NET CoreКак это будет: ASP.NET Core
Как это будет: ASP.NET CoreDotNetConf
 
о некоторых вопросах бинарной совместимости в C++
о некоторых вопросах бинарной совместимости в C++о некоторых вопросах бинарной совместимости в C++
о некоторых вопросах бинарной совместимости в C++corehard_by
 

Was ist angesagt? (20)

Anton Tsitou "Cycle ORM and Graphs"
Anton Tsitou "Cycle ORM and Graphs"Anton Tsitou "Cycle ORM and Graphs"
Anton Tsitou "Cycle ORM and Graphs"
 
Внедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной ШинеВнедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной Шине
 
Формальная верификация кода на языке Си
Формальная верификация кода на языке СиФормальная верификация кода на языке Си
Формальная верификация кода на языке Си
 
ковалев нестандатное нт
ковалев    нестандатное нтковалев    нестандатное нт
ковалев нестандатное нт
 
Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"
 
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
 
Разработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоРазработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешево
 
Chebit 12-10. Использование Ruby & r spec для тестирования нерубишного проекта
Chebit 12-10. Использование Ruby & r spec для тестирования нерубишного проектаChebit 12-10. Использование Ruby & r spec для тестирования нерубишного проекта
Chebit 12-10. Использование Ruby & r spec для тестирования нерубишного проекта
 
TMPA-2015: Automated process of creating test scenarios for financial protoco...
TMPA-2015: Automated process of creating test scenarios for financial protoco...TMPA-2015: Automated process of creating test scenarios for financial protoco...
TMPA-2015: Automated process of creating test scenarios for financial protoco...
 
Опыт использования Erlang в разработке многопользовательской игры
Опыт использования Erlang в разработке многопользовательской игрыОпыт использования Erlang в разработке многопользовательской игры
Опыт использования Erlang в разработке многопользовательской игры
 
DevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияDevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестирования
 
Внедрение автоматизации тестирования в highload проекте с непрерывной выкладкой
Внедрение автоматизации тестирования в highload проекте с непрерывной выкладкойВнедрение автоматизации тестирования в highload проекте с непрерывной выкладкой
Внедрение автоматизации тестирования в highload проекте с непрерывной выкладкой
 
TMPA-2013 Itsykson: Java Program Analysis
TMPA-2013 Itsykson: Java Program AnalysisTMPA-2013 Itsykson: Java Program Analysis
TMPA-2013 Itsykson: Java Program Analysis
 
Лев Валкин — Кое-что про Erlang
Лев Валкин — Кое-что про ErlangЛев Валкин — Кое-что про Erlang
Лев Валкин — Кое-что про Erlang
 
Процесс майнинг
Процесс майнингПроцесс майнинг
Процесс майнинг
 
Badger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктовBadger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктов
 
что пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studio
что пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studioчто пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studio
что пришлось тестировать и о чем узнать при подготовке Linux версии pvs-studio
 
Как приручить реактивное программирование
Как приручить реактивное программированиеКак приручить реактивное программирование
Как приручить реактивное программирование
 
Как это будет: ASP.NET Core
Как это будет: ASP.NET CoreКак это будет: ASP.NET Core
Как это будет: ASP.NET Core
 
о некоторых вопросах бинарной совместимости в C++
о некоторых вопросах бинарной совместимости в C++о некоторых вопросах бинарной совместимости в C++
о некоторых вопросах бинарной совместимости в C++
 

Andere mochten auch

Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...
Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...
Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...Iosif Itkin
 
TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...
TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...
TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...Iosif Itkin
 
IATE Lecture 2: Quality Assurance for Highload Systems
IATE Lecture 2: Quality Assurance for Highload SystemsIATE Lecture 2: Quality Assurance for Highload Systems
IATE Lecture 2: Quality Assurance for Highload SystemsIosif Itkin
 
TMPA-2013 Sartakov: Genode
TMPA-2013 Sartakov: GenodeTMPA-2013 Sartakov: Genode
TMPA-2013 Sartakov: GenodeIosif Itkin
 
Modelling of Exchange Trading Participants Behavior Test Scenarios
Modelling of Exchange Trading Participants Behavior Test ScenariosModelling of Exchange Trading Participants Behavior Test Scenarios
Modelling of Exchange Trading Participants Behavior Test ScenariosIosif Itkin
 
EXTENT Conference: Lease of Dedicated Servers
EXTENT Conference: Lease of Dedicated ServersEXTENT Conference: Lease of Dedicated Servers
EXTENT Conference: Lease of Dedicated ServersIosif Itkin
 
Exactpro Kostroma: High Availability Systems
Exactpro Kostroma: High Availability SystemsExactpro Kostroma: High Availability Systems
Exactpro Kostroma: High Availability SystemsIosif Itkin
 
LSE The focus beyond Low Latency
LSE The focus beyond Low LatencyLSE The focus beyond Low Latency
LSE The focus beyond Low LatencyIosif Itkin
 
EXTENT Trading Test Tools Evolution Theory
EXTENT Trading Test Tools Evolution TheoryEXTENT Trading Test Tools Evolution Theory
EXTENT Trading Test Tools Evolution TheoryIosif Itkin
 
TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...
TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...
TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...Iosif Itkin
 
TMPA Pakulin: Dynamic Verification of Hybrid Systems
TMPA Pakulin: Dynamic Verification of Hybrid SystemsTMPA Pakulin: Dynamic Verification of Hybrid Systems
TMPA Pakulin: Dynamic Verification of Hybrid SystemsIosif Itkin
 
Trading Systems: Testing at the Confluence of FT and NFT
Trading Systems: Testing at the Confluence of FT and NFTTrading Systems: Testing at the Confluence of FT and NFT
Trading Systems: Testing at the Confluence of FT and NFTIosif Itkin
 
Kostroma Virtual Skolkovo 22 May 2013
Kostroma Virtual Skolkovo 22 May 2013Kostroma Virtual Skolkovo 22 May 2013
Kostroma Virtual Skolkovo 22 May 2013Iosif Itkin
 
TMPA-2013 Frenkel: Verifying Functional Reliability
TMPA-2013 Frenkel: Verifying Functional ReliabilityTMPA-2013 Frenkel: Verifying Functional Reliability
TMPA-2013 Frenkel: Verifying Functional ReliabilityIosif Itkin
 
The New Generation of ITinvest Trading System Architecture and Capabilities
The New Generation of ITinvest Trading System Architecture and CapabilitiesThe New Generation of ITinvest Trading System Architecture and Capabilities
The New Generation of ITinvest Trading System Architecture and CapabilitiesIosif Itkin
 
Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011Iosif Itkin
 
Software Testing Body of Knowledge (Russian)
Software Testing Body of Knowledge (Russian)Software Testing Body of Knowledge (Russian)
Software Testing Body of Knowledge (Russian)Iosif Itkin
 
01 comm skill intro_mba_ver_1.0
01 comm skill intro_mba_ver_1.001 comm skill intro_mba_ver_1.0
01 comm skill intro_mba_ver_1.0domsr
 

Andere mochten auch (20)

Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...
Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...
Лекция в СГТУ: Информационные системы и технологическая инфраструктура биржев...
 
TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...
TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...
TMPA-2013 Bobrov: Testing of Graphical Interface of Trading Terminals in High...
 
IATE Lecture 2: Quality Assurance for Highload Systems
IATE Lecture 2: Quality Assurance for Highload SystemsIATE Lecture 2: Quality Assurance for Highload Systems
IATE Lecture 2: Quality Assurance for Highload Systems
 
TMPA-2013 Sartakov: Genode
TMPA-2013 Sartakov: GenodeTMPA-2013 Sartakov: Genode
TMPA-2013 Sartakov: Genode
 
Modelling of Exchange Trading Participants Behavior Test Scenarios
Modelling of Exchange Trading Participants Behavior Test ScenariosModelling of Exchange Trading Participants Behavior Test Scenarios
Modelling of Exchange Trading Participants Behavior Test Scenarios
 
EXTENT Conference: Lease of Dedicated Servers
EXTENT Conference: Lease of Dedicated ServersEXTENT Conference: Lease of Dedicated Servers
EXTENT Conference: Lease of Dedicated Servers
 
Exactpro Kostroma: High Availability Systems
Exactpro Kostroma: High Availability SystemsExactpro Kostroma: High Availability Systems
Exactpro Kostroma: High Availability Systems
 
LSE The focus beyond Low Latency
LSE The focus beyond Low LatencyLSE The focus beyond Low Latency
LSE The focus beyond Low Latency
 
EXTENT Trading Test Tools Evolution Theory
EXTENT Trading Test Tools Evolution TheoryEXTENT Trading Test Tools Evolution Theory
EXTENT Trading Test Tools Evolution Theory
 
TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...
TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...
TMPA-2013 Popesko: Verification of Programmable and Configurable Networks Usi...
 
TMPA Pakulin: Dynamic Verification of Hybrid Systems
TMPA Pakulin: Dynamic Verification of Hybrid SystemsTMPA Pakulin: Dynamic Verification of Hybrid Systems
TMPA Pakulin: Dynamic Verification of Hybrid Systems
 
Trading Systems: Testing at the Confluence of FT and NFT
Trading Systems: Testing at the Confluence of FT and NFTTrading Systems: Testing at the Confluence of FT and NFT
Trading Systems: Testing at the Confluence of FT and NFT
 
Kostroma Virtual Skolkovo 22 May 2013
Kostroma Virtual Skolkovo 22 May 2013Kostroma Virtual Skolkovo 22 May 2013
Kostroma Virtual Skolkovo 22 May 2013
 
TMPA-2013 Frenkel: Verifying Functional Reliability
TMPA-2013 Frenkel: Verifying Functional ReliabilityTMPA-2013 Frenkel: Verifying Functional Reliability
TMPA-2013 Frenkel: Verifying Functional Reliability
 
The New Generation of ITinvest Trading System Architecture and Capabilities
The New Generation of ITinvest Trading System Architecture and CapabilitiesThe New Generation of ITinvest Trading System Architecture and Capabilities
The New Generation of ITinvest Trading System Architecture and Capabilities
 
Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011
 
Software Testing Body of Knowledge (Russian)
Software Testing Body of Knowledge (Russian)Software Testing Body of Knowledge (Russian)
Software Testing Body of Knowledge (Russian)
 
Insignia Uskap
Insignia UskapInsignia Uskap
Insignia Uskap
 
01 comm skill intro_mba_ver_1.0
01 comm skill intro_mba_ver_1.001 comm skill intro_mba_ver_1.0
01 comm skill intro_mba_ver_1.0
 
.
..
.
 

Ähnlich wie Approaches to the Fragmentation of a Paravirtualization System

RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)Alexander Shalimov
 
Net core and linux in production
Net core and linux in productionNet core and linux in production
Net core and linux in productionAnatoly Popov
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)Pavel Tsukanov
 
Что нового в NOVA Microhypervisor
Что нового в NOVA MicrohypervisorЧто нового в NOVA Microhypervisor
Что нового в NOVA MicrohypervisorYandex
 
Операционные системы и среды
Операционные системы и средыОперационные системы и среды
Операционные системы и средыAlexandr Konfidentsialno
 
OTUS Infrastructure as Code
OTUS Infrastructure as CodeOTUS Infrastructure as Code
OTUS Infrastructure as CodeIgor Kurochkin
 
Caché Native Access. InterSystems Meetup 2014
Caché Native Access. InterSystems  Meetup 2014Caché Native Access. InterSystems  Meetup 2014
Caché Native Access. InterSystems Meetup 2014InterSystems
 
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)Ontico
 
Корпоративный Linux: осваиваем с нуля Red Hat Enterprise Linux
Корпоративный Linux: осваиваем с нуля Red Hat Enterprise LinuxКорпоративный Linux: осваиваем с нуля Red Hat Enterprise Linux
Корпоративный Linux: осваиваем с нуля Red Hat Enterprise LinuxSkillFactory
 
Введение в Python и Django
Введение в Python и DjangoВведение в Python и Django
Введение в Python и DjangoTaras Lyapun
 
Puppet development kit and best practices
Puppet development kit and best practicesPuppet development kit and best practices
Puppet development kit and best practicesIgor Kurochkin
 
Как devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальшеКак devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальшеKirill Vechera
 
Cоздаем облачную среду на базе open-sourсe решения OpenStack
Cоздаем облачную среду на базе open-sourсe решения OpenStackCоздаем облачную среду на базе open-sourсe решения OpenStack
Cоздаем облачную среду на базе open-sourсe решения OpenStackSkillFactory
 
Containers in real world презентация
Containers in real world презентацияContainers in real world презентация
Containers in real world презентацияPavel Odintsov
 
Использование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостингаИспользование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостингаYandex
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrusAlex Chistyakov
 
Консервация процессов в домашних условиях
Консервация процессов в домашних условияхКонсервация процессов в домашних условиях
Консервация процессов в домашних условияхOpenVZ
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновOntico
 

Ähnlich wie Approaches to the Fragmentation of a Paravirtualization System (20)

RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)
 
Net core and linux in production
Net core and linux in productionNet core and linux in production
Net core and linux in production
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
 
Что нового в NOVA Microhypervisor
Что нового в NOVA MicrohypervisorЧто нового в NOVA Microhypervisor
Что нового в NOVA Microhypervisor
 
Операционные системы и среды
Операционные системы и средыОперационные системы и среды
Операционные системы и среды
 
OTUS Infrastructure as Code
OTUS Infrastructure as CodeOTUS Infrastructure as Code
OTUS Infrastructure as Code
 
Caché Native Access. InterSystems Meetup 2014
Caché Native Access. InterSystems  Meetup 2014Caché Native Access. InterSystems  Meetup 2014
Caché Native Access. InterSystems Meetup 2014
 
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
 
Корпоративный Linux: осваиваем с нуля Red Hat Enterprise Linux
Корпоративный Linux: осваиваем с нуля Red Hat Enterprise LinuxКорпоративный Linux: осваиваем с нуля Red Hat Enterprise Linux
Корпоративный Linux: осваиваем с нуля Red Hat Enterprise Linux
 
Введение в Python и Django
Введение в Python и DjangoВведение в Python и Django
Введение в Python и Django
 
Puppet development kit and best practices
Puppet development kit and best practicesPuppet development kit and best practices
Puppet development kit and best practices
 
Как devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальшеКак devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальше
 
Cоздаем облачную среду на базе open-sourсe решения OpenStack
Cоздаем облачную среду на базе open-sourсe решения OpenStackCоздаем облачную среду на базе open-sourсe решения OpenStack
Cоздаем облачную среду на базе open-sourсe решения OpenStack
 
Containers in real world презентация
Containers in real world презентацияContainers in real world презентация
Containers in real world презентация
 
Использование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостингаИспользование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостинга
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrus
 
Sivko
SivkoSivko
Sivko
 
Консервация процессов в домашних условиях
Консервация процессов в домашних условияхКонсервация процессов в домашних условиях
Консервация процессов в домашних условиях
 
Web лекция 2
Web   лекция 2Web   лекция 2
Web лекция 2
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
 

Mehr von Iosif Itkin

Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4Iosif Itkin
 
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...Iosif Itkin
 
Exactpro FinTech Webinar - Global Exchanges Test Oracles
Exactpro FinTech Webinar - Global Exchanges Test OraclesExactpro FinTech Webinar - Global Exchanges Test Oracles
Exactpro FinTech Webinar - Global Exchanges Test OraclesIosif Itkin
 
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
Exactpro FinTech Webinar - Global Exchanges FIX ProtocolExactpro FinTech Webinar - Global Exchanges FIX Protocol
Exactpro FinTech Webinar - Global Exchanges FIX ProtocolIosif Itkin
 
Operational Resilience in Financial Market Infrastructures
Operational Resilience in Financial Market InfrastructuresOperational Resilience in Financial Market Infrastructures
Operational Resilience in Financial Market InfrastructuresIosif Itkin
 
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
20 Simple Questions from Exactpro for Your Enjoyment This Holiday SeasonIosif Itkin
 
Testing the Intelligence of your AI
Testing the Intelligence of your AITesting the Intelligence of your AI
Testing the Intelligence of your AIIosif Itkin
 
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
EXTENT 2019: Exactpro Quality Assurance for Financial Market InfrastructuresEXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
EXTENT 2019: Exactpro Quality Assurance for Financial Market InfrastructuresIosif Itkin
 
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...Iosif Itkin
 
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan ShamraiEXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan ShamraiIosif Itkin
 
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference OpenEXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference OpenIosif Itkin
 
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...Iosif Itkin
 
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...Iosif Itkin
 
QA Community Saratov: Past, Present, Future (2019-02-08)
QA Community Saratov: Past, Present, Future (2019-02-08)QA Community Saratov: Past, Present, Future (2019-02-08)
QA Community Saratov: Past, Present, Future (2019-02-08)Iosif Itkin
 
Machine Learning and RoboCop Testing
Machine Learning and RoboCop TestingMachine Learning and RoboCop Testing
Machine Learning and RoboCop TestingIosif Itkin
 
Behaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileBehaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileIosif Itkin
 
2018 - Exactpro Year in Review
2018 - Exactpro Year in Review2018 - Exactpro Year in Review
2018 - Exactpro Year in ReviewIosif Itkin
 
Exactpro Discussion about Joy and Strategy
Exactpro Discussion about Joy and StrategyExactpro Discussion about Joy and Strategy
Exactpro Discussion about Joy and StrategyIosif Itkin
 
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
FIX EMEA Conference 2018 - Post Trade Software Testing ChallengesFIX EMEA Conference 2018 - Post Trade Software Testing Challenges
FIX EMEA Conference 2018 - Post Trade Software Testing ChallengesIosif Itkin
 
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)Iosif Itkin
 

Mehr von Iosif Itkin (20)

Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4
 
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
 
Exactpro FinTech Webinar - Global Exchanges Test Oracles
Exactpro FinTech Webinar - Global Exchanges Test OraclesExactpro FinTech Webinar - Global Exchanges Test Oracles
Exactpro FinTech Webinar - Global Exchanges Test Oracles
 
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
Exactpro FinTech Webinar - Global Exchanges FIX ProtocolExactpro FinTech Webinar - Global Exchanges FIX Protocol
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
 
Operational Resilience in Financial Market Infrastructures
Operational Resilience in Financial Market InfrastructuresOperational Resilience in Financial Market Infrastructures
Operational Resilience in Financial Market Infrastructures
 
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
 
Testing the Intelligence of your AI
Testing the Intelligence of your AITesting the Intelligence of your AI
Testing the Intelligence of your AI
 
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
EXTENT 2019: Exactpro Quality Assurance for Financial Market InfrastructuresEXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
 
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
 
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan ShamraiEXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
 
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference OpenEXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
 
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
 
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
 
QA Community Saratov: Past, Present, Future (2019-02-08)
QA Community Saratov: Past, Present, Future (2019-02-08)QA Community Saratov: Past, Present, Future (2019-02-08)
QA Community Saratov: Past, Present, Future (2019-02-08)
 
Machine Learning and RoboCop Testing
Machine Learning and RoboCop TestingMachine Learning and RoboCop Testing
Machine Learning and RoboCop Testing
 
Behaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileBehaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibile
 
2018 - Exactpro Year in Review
2018 - Exactpro Year in Review2018 - Exactpro Year in Review
2018 - Exactpro Year in Review
 
Exactpro Discussion about Joy and Strategy
Exactpro Discussion about Joy and StrategyExactpro Discussion about Joy and Strategy
Exactpro Discussion about Joy and Strategy
 
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
FIX EMEA Conference 2018 - Post Trade Software Testing ChallengesFIX EMEA Conference 2018 - Post Trade Software Testing Challenges
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
 
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
 

Approaches to the Fragmentation of a Paravirtualization System

  • 1. Tmpa’14, 14.11.2014 Кострома Подходы к фрагментации системы паравиртуализации Василий Сартаков,Николай Голиков ksys labs {sartakov,golikov}@ksyslabs.org
  • 2. Agenda • Введение • Previous works • Концептуальный подход • Дизайн L4Linux • Фрагментация • Текущий статус
  • 3. Code reuse • Не смотря на активные исследовательские работы в области операционных систем новые разработки крайне редко доходят до реального использования • Реальность рынка программных продуктов такова, что продукты не совместимые с уже существующими или требующие значительных затрат по адаптации существующего ПО так и остаются экспериментальными разработками • Пример: • Доминирование идеологии everything is file • Доминирование POSIX • В то время как давно уже существует идеология Everything is an Object
  • 4. Виртуализация • Виртуализация является решением • Виртуализируется все: • API, ABI, POSIX… • Механизм паравиртуализации
  • 5. L4Linux • Перенос ядра Linux в пользовательское пространство • Запуск двоичных программ Linux в окружении микрядра
  • 6. Защищенность L4Linux Сартаков В. A., Тарасиков А. С. Защита микроядерного окружения L4Re от атак на стек // Безопасность информационных технологий. 2014. Т. 4. • Память под L4Linux выделяется одним регионом (dataspace) • Невозможно применить ни ASLR, ни стек протекцию • Синтетические тесты на проникновение выявили уязвимость к атакам на стек
  • 7. Иными словами • Необходимо разделение на компоненты (фрагментация) • С последующим выстраиванием связей
  • 8. Agenda • Введение • Previous works • Концептуальный подход • Дизайн L4Linux • Фрагментация • Текущий статус
  • 9. Device-­‐Driver-­‐Environment Kit • DDE kit – слой сопряжения на уровне исходного кода • Weisbach Hannes. DDEKit Approach for Linux User Space Drivers. 2011.
  • 10. Barelfish • Решает проблему масштабирования. (проблемы блокировок, memory management) • Нет коммуникации между ядрами на низком уровне • Каждое ядро имеет свою копию ОС и общается асинхронно, как элементы в распределенной системе. Source: hŒp://www.barrelfish.org/barrelfish_sosp09.pdf
  • 11. seL4, NewtOS, L4::Reap • Keep net working -­‐ on a dependable and fast networking stack / Tomas Hruby, Dirk Vogt, Herbert Bos [и др.] // In Dependable Systems and Networks. IEEE, 2012. С. 1–12. • Klein Gerwin, Derrin Philip, Elphinstone Kevin. Experience report: seL4: formally verifying a high-­‐performance microkernel // ACM Sigplan No–ces / ACM. Т. 44. 2009. С. 91–96. • The mul–kernel: a new OS architecture for scalable mul–core systems / Andrew Baumann, Paul Barham, Pierre-­‐Evariste Dagand [и др.] // Proceedings of the ACM SIGOPS 22nd symposium on Opera–ng systems principles / ACM. 2009. С. 29–44 • Сартаков Василий, Тарасиков Александр. Анализ производительно-­‐ сти сетевой подсистемы микроядерного окружения Genode // Tools & Methods of Program Analysis. 2013.
  • 12. Agenda • Введение • Previous works • Концептуальный подход • Дизайн L4Linux • Фрагментация • Текущий статус
  • 13. Концептуальный подход • Избыточная фрагментация Разделение на компоненты плюс дублирование • Рекомпозиция системы Группировка компонент на вычислительных ядрах • Одно ядро ОС • Минимизация межядерных коммуникаций • Сборка на ядре минимального набора компонент L4Linux для поддержки работы конкретной программы
  • 14. Agenda • Введение • Previous works • Концептуальный подход • Дизайн L4Linux • Фрагментация • Текущий статус
  • 15. Дизайн L4Linux • L4Linux как часть окружения • Доступ драйверов к устройствам • Запуск программ
  • 16. Доступ к устройствам • Отображение физической памяти устройств в виртуальное адресное пространство L4Linux • L4Linux может запросить у окружения и процесса Init прерывание. Для этого в контексте исполнения создается специализированный поток регистрируемый в системе как обработчик прерывания. Доставка прерывания осуществляется через доставку сообщения с разблокировкой потока прерывания
  • 17. Запуск программ • Программы L4Linux являются программами окружения L4 • Все системные вызовы программы обрабатываются как page fault. Каждой программе назначается ядро L4Linux в качестве обработчика page faults.
  • 18. Agenda • Введение • Previous works • Концептуальный подход • Дизайн L4Linux • Фрагментация • Текущий статус
  • 19. Previous • Извлечение подсистем : • Dde_linux • Dde_ipxe • Dde_oss • Rump kernel …Используются через слои сопряжения
  • 20. Обобщенный подход • Выбирается изолированная подсистема ядра Linux • Анализируется API подсистемы и зависимости в заголовочных файлах и других подсистемах • Зависимые заголовочные файлы вместе с исходным кодом извлекаются исходного кода ядра Linux • API подсистемы накладывается на механизм сообщений микроядерного окружения. В нашем случае – необходима реализация интерфейса взаимодействия другими компонентами L4Linux.
  • 21. Подход::минимальный сборка • Вместо извлечения подсистем и создания слоя сопряжения для работы подсистемы в окружении микроядра, мы извлекаем минимальный набор компонент L4Linux необходимых для работы конкретной программы, разбиваем их по адресным пространствам и группируем вместе с программой на одном ядре • Минимальный набор подсистем фрагментированного L4Linux: • загрузчик процессов • диспетчер системных вызовов • обработчик page fault
  • 22. Agenda • Введение • Previous works • Концептуальный подход • Дизайн L4Linux • Фрагментация • Текущий статус
  • 23. Текущий статус • Ручное разделение L4Linux на компоненты • Извлечение криптографической подсистемы, блочного ввода-­‐вывода, сетевого стека и драйверов для proof of concept