Цифровой журнал «Компьютерра» 2011 № 26 (74) - [3]
Проверка на типобезопасность кода каждой программы возможна только тогда, когда чётко доказана корректность работы всех компонентов системы управляемого выполнения кода. В настоящее время в Singularity для процессоров Intel x86 код MSIL компилируется в машинные инструкции компилятором Bartok, разработанным в той же Microsoft Research. При этом команда Singularity исходит из предположения, что Bartok не содержит ошибок и гарантированно создаёт типобезопасный машинный код.
В будущем должен быть создан специальный типизированный ассемблер TAL (Typed Assembly Language), который потребует от каждой программы доказательств её типобезопасности.
Читайте далее:Система строгого режима: Microsoft Singularity (часть 2)
Система строгого режима: Microsoft Singularity (часть 2)
Евгений Лебеденко, Mobi.ru
Опубликовано 23 июня 2011 года
Продолжение. Первую часть читайте здесь.
Singularity — микроядерная система. Весь код небольшого и тщательно проверенного на типобезопасность микроядра в большинстве сво`м написан на языке Sing# — подмножестве языка C#, специально разработанного для этой системы в Microsoft Research. Код ядра не верифицируется перед исполнением, поэтому он называется доверенным (trusted). Вообще-то в ядре есть небольшие фрагменты небезопасного кода, написанные на C++ и ассемблере, но они тщательно изолированы в уровне аппаратных абстракций HAL.
Ядро содержит типичный для микроядра набор менеджеров, управляющих памятью, переключением процессов, вводом-выводом, безопасностью. К доверенному коду относится и run-time среда — компиляторы в MSIL и машинный код.
Код всех запускаемых в Singularity прикладных программ, сервисов и драйверов является строго верифицируемым.
Любая запускаемая программа или сервис с точки зрения Singularity является SIP — Software Isolated Process (программно изолированный процесс). Благодаря выполненной проверке типобезопасности SIP не нужно держать в «клетке» ограниченного адресного пространства. Он сам гарантирует свою лояльность — то, что будет работать только со строго определёнными объектами и данными, не нарушая целостности системы и других программ. А как же быть с межпроцессным взаимодействием? Без него в многозадачной среде никуда. Для взаимодействия SIP-ов Singularity предлагает очень надёжный механизм каналов, по которым один SIP может передавать другому сообщения и данные. Каналы в Singularity высокоскоростные и неплохо заменяют небезопасный механизм разделения данных в традиционных системах. SIP может общаться и с микроядром через специальный бинарный интерфейс ABI (Application Binary interface), с помощью которого один SIP может контролируемо повлиять на состояние другого SIP.
SIP в Singularity самодостаточны. Завершив свою работу, SIP вызывает один из множества наиболее подходящих сборщиков мусора, очищая за собой память так, чтобы не повредить работе остальных SIP и системы.
А как же быть с расширяемостью функций запускаемых программ? Здесь идея состоит в том, что расширения для программ тоже реализуются в виде SIPов с типобезопасным кодом.
Таким образом, упрощённо архитектура Singularity — это: микроядро, написанное на доверенном коде, трансляторы кода MSIL и компиляторы JIT (NGen), также состоящие из доверенного кода, множество SIP на основе верифицированного кода, работающие в едином адресном пространстве, каналы, связывающие SIPы, и интерфейс ABI, связывающий SIP с ядром.
В зависимости от потребностей в процессорном времени конкретного SIP, диспетчер задач Singularity предоставляет один из пяти имеющихся в его распоряжении алгоритмов планирования.
Данные SIPов хранит SIP специального типа — файловая система Boxwood, в которой файлы представлены бинарными деревьями (B-tree).
Неопределённость, связанная с установкой многочисленных объектов программы в разных частях системы, присущая традиционным операционным системам, в Singularity устраняется за счёт использования программой манифеста — метаданных, чётко описывающих её в терминах ресурсов и зависимостей между ними. На основе манифеста загрузчик программы может оценить и выявить конфликты, которые могут возникнуть при установке программы, и, при необходимости, прервать установку.
Разработчики Singularity предоставляют прикладным программистам и драйверописателям Singularity RDK, обеспечивающий среду создания и обкатки своих программ, совместимых с Singularity. Программы можно писать на массе совместимых c CLS языков, для которых Singularity поддерживает компиляторы MSIL. К ним относятся C#, F#, Perl и даже COBOL.
Очевидно, что число компиляторов MSIL для разных языков будет увеличиваться с развитием Singularity. А это означает привлечение к системе множества разработчиков. На данный момент пользовательский интерфейс Singularity весьма аскетичен и ограничивается командной строкой.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Документ создан на основе открытого контента, расположенного по адресуhttp://offline.computerra.ru/2005/599/Размер изображений не менялся, поэтому некоторые могут быть некорректно отображены на неVGA-моделях КПК (особенно скриншоты и таблицы).
ОглавлениеКолонкаПочему мы позволяем нас обманывать, или Грустные размышления об иррациональности политической жизни Автор: Дмитрий ШабановГолубятня: Samsung Galaxy S4 — цидули перебежчика (часть 1) Автор: Сергей ГолубицкийУроки любви к Родине: McAfee патентует технологию обнаружения и блокировки пиратского содержания Автор: Сергей ГолубицкийПодпадает ли астрономия под закон о митингах Автор: Дмитрий ВибеIT-рынокНасколько глупа шумиха вокруг «умных» часов? Автор: Андрей ПисьменныйПромзонаПосмотрите на свалку, которую китайцы превратили в парк Автор: Николай МаслухинЭтот сайт позволяет создать собственное световое шоу на точном макете Токио Автор: Николай МаслухинТехнологииДжипег, подвинься! Веппи как единственный необходимый графический формат Автор: Евгений ЗолотовИнновацииПочему менеджерам российских корпораций не нужны стартапы Автор: Елена КраузоваИнга Нахмансон (Fitting Reality): «Российскому e-commerce не до виртуальности» Автор: Елена КраузоваГидGoogle Now для iOS появился без лишнего шума и уже собирает сведения Автор: Андрей Васильков.
ОглавлениеСтатьиTertium datur: другие компьютеры Автор: Евгений Лебеденко, Mobi.ruИнтервьюПавел Фролов («ГНУ/Линуксцентр») о НПП Автор: Евгений КрестниковА. Самсонов о троичной логике и цифровой археологии Автор: Андрей ПисьменныйКолумнистыВасилий Щепетнёв: Месть индейских вождей Автор: Василий ЩепетневКивино гнездо: Беззаконие роботехники Автор: Киви БердКафедра Ваннаха: Подарки и конструкции Автор: Михаил ВаннахАлександр Амзин: Силой данного мне природой мозга Автор: Александр АмзинВасилий Щепетнёв: Гимн усталому караулу Автор: Василий ЩепетневКивино гнездо: Беззаконие роботехники (окончание) Автор: Киви БердДмитрий Шабанов: Марков и Эволюция человека Автор: Дмитрий ШабановКафедра Ваннаха: Пришельцы на Луне Автор: Михаил ВаннахГолубятня-ОнлайнГолубятня: Даже гоблин ходит в отпуск Автор: Сергей ГолубицкийГолубятня: Железный парад 2011 Автор: Сергей Голубицкий.
ОглавлениеКолумнистыДмитрий Вибе: Заблудшая планета Автор: Дмитрий ВибеВасилий Щепетнёв: Укрепление тары Автор: Василий ЩепетневКафедра Ваннаха: Душа по Пенроузу Автор: Михаил ВаннахГолубятня-ОнлайнГолубятня: Аудиофилия второй волны Автор: Сергей Голубицкий.
ОГЛАВЛЕНИЕСергей Голубицкий: Голубятня: Ужастик ЕвернотВаннах Михаил: Кафедра Ваннаха: Углерод и кремнийДенис Злобин: Пиратство: почему мы перестали ценить информациюСергей Голубицкий: Голубятня: Исход из 1PasswordВасилий Щепетнев: Василий Щепетнёв: Исчезновение столицыДмитрий Шабанов: Аргумент ХойлаАлла Аршинова: Александр Бондарь (ИЯФ СО РАН) о megascience-проектахВаннах Михаил: Кафедра Ваннаха: Удешевить странуЮрий Ильин: После шаттла: "Клипер" и "Русь"Киви Берд: Кивино гнездо: Дежавю, или Хождение по кругуСергей Голубицкий: Голубятня: News360 и ZiteВасилий Щепетнев: Василий Щепетнёв: Светлая сторона торгаАлександр Амзин: Возникнут модыАндрей Федив: Обзор Windows 8 Developer PreviewВаннах Михаил: Кафедра Ваннаха: Демократия хищных вещейДмитрий Вибе: Почтальон сойдёт с ума.
ОГЛАВЛЕНИЕСергей Голубицкий: Голубятня: Хронотоп детстваВасилий Щепетнев: Василий Щепетнёв: Колхоз имени Тома СойераЕвгений Лебеденко, Mobi.ru: Микропроцессор Hobbit: на каком языке говорили полуросликиВаннах Михаил: Кафедра Ваннаха: Intel в зеркале финансов Киви Берд: Кивино гнездо: Стены и мосты Олег Нечай: Обзор NAS Buffalo Link Station Pro Duo 2 ТВВасилий Щепетнев: Василий Щепетнёв: Без параллелейЕвгений Крестников: Валентин Макаров (РУССОФТ) о тендере на создание НППВаннах Михаил: Кафедра Ваннаха: Выкидуха в боюДмитрий Шабанов: Аргумент ГоссеАлександр Амзин: На отвлечённую темуСергей Голубицкий: Голубятня: Будучи ТАМВасилий Щепетнев: Василий Щепетнёв: До двенадцатого знакаДмитрий Вибе: Немного холодной воды у солнцаАндрей Федив: Обзор телефона Apple iPhone 4S.
ОГЛАВЛЕНИЕДмитрий Вибе: Ударим Венерой по МарсуВасилий Щепетнев: Василий Щепетнёв: После точкиСергей Голубицкий: Голубятня: От ашрама-дхармы к президенту-вампируДмитрий Шабанов: Объемное слышаниеОлег Нечай: PocketBook A 10": планшет, притворяющийся ридеромДмитрий Вибе: Так будет не всегда.
ОглавлениеСтатьиОбратная сторона эпохи пост-ПК: 30-долларовый компьютер Raspberry Pi Автор: Андрей ПисьменныйТерралабКак производятся материнские платы Автор: Олег НечайКолумнистыКафедра Ваннаха: Европейский лидер Автор: Михаил ВаннахВасилий Щепетнёв: Честь пикейного жилета Автор: Василий ЩепетневДмитрий Шабанов: Судьба точек роста в системе декоративного образования Автор: Дмитрий ШабановДмитрий Вибе: Лунная астрономия Автор: Дмитрий ВибеГолубятня-ОнлайнГолубятня: Про одного битого зелёного слоника Автор: Сергей ГолубицкийГолубятня: 4 спичечных коробка Автор: Сергей Голубицкий.
ОглавлениеКолумнистыКафедра Ваннаха: Горячая цифровая война Автор: Михаил ВаннахДмитрий Шабанов: Парадокс ускорения эволюции Автор: Дмитрий ШабановКивино гнездо: Пароль для серой зоны Автор: Киви БердВасилий Щепетнёв: Предсказания и пророчества Автор: Василий ЩепетневДмитрий Вибе: Мы сверху Автор: Дмитрий ВибеГолубятня-ОнлайнГолубятня: Идеальный мобильный звук. Часть вторая Автор: Сергей Голубицкий.
ОглавлениеИнтервьюВалерий Тельнов (ИЯФ СО РАН) о бозоне Хиггса Автор: Алла АршиноваТерралабНовое поколение нетбуков Acer и Packard Bell Автор: Ника ПарамоноваКолумнистыВасилий Щепетнёв: Освобождение Автор: Василий ЩепетневДмитрий Вибе: А вы уже закупили спички и соль? Автор: Дмитрий ВибеКафедра Ваннаха: Сланцевая передышка Автор: Михаил ВаннахДмитрий Шабанов: Вперёд, к эпигенетическому будущему! Автор: Дмитрий ШабановГолубятня-ОнлайнГолубятня: Хоть бы что-нибудь еще… всё не так, как надо! Автор: Сергей ГолубицкийГолубятня: Касталийский мираж истории Автор: Сергей Голубицкий.
ОглавлениеБольшие новостиE3 2010: Microsoft Kinect, новый Xbox 360 Автор: Андрей Письменный E3 2010: Nintendo DS со стереоэкраном Автор: Михаил Карпов Госинтернет, тариф «Социальный» Автор: Юрий Ильин Что высокие технологии дают Чемпионату мира по футболу Автор: Михаил Карпов Кодек WebM набирает популярность Автор: Крестников Евгений E3 2010: Десятка лучших игр Автор: Андрей Письменный Nintendo и Microsoft: порознь во враждебные воды Автор: Юрий Ильин Onlive: играем в сети Автор: Михаил Карпов Как сэкономить на мобильном интернете Автор: Максим Букин Виртуальные валюты: Facebook, «Вконтакте», Livejournal Автор: Юрий Ильин ТерралабПромзона: Кухня будущего Автор: Николай Маслухин Промзона: Светящиеся контуры Автор: Николай Маслухин Промзона: Кофейный iTunes Автор: Николай Маслухин Промзона: Звуковой кокон Автор: Николай Маслухин Чипсеты для новых десктопных процессоров Intel Автор: Олег Нечай Своя играВасилий Щепетнёв: Законотворчество Автор: Василий Щепетнев Кивино гнездо: Фактор Мэннинга Автор: Берд Киви Кафедра Ваннаха: Мораль, автоэволюция, моделирование Автор: Ваннах Михаил Василий Щепетнёв: Жаба и Чехов Автор: Василий Щепетнев Плюс интернетизация всей страны Автор: Юрий Ревич Кафедра Ваннаха: Эволюция машин Автор: Ваннах Михаил Кивино гнездо: Архив-Шнархив Автор: Берд Киви ИнтерактивАнна Ламтюгина («Яндекс») о сервисе «Народные карты» Автор: Андрей Письменный В.
ОглавлениеКолонкаПринуждение к альтруизму, или 451 градус политкорректности Автор: Василий ЩепетнёвМатематика как ресурс: На каком наследии работает отрасль информационных технологий Автор: Михаил ВаннахГолубятня: Праздник на нашей улице, или Фактура, столь редкая для софтверных обзоров Автор: Сергей ГолубицкийТень Рикардо: Чему биржевик и мыслитель былых времён может научить нас в информационную эру? Автор: Михаил ВаннахЗаказная мифология IT-прессы Автор: Сергей ГолубицкийЛожь навсегда: почему нас обманывают снова и снова Автор: Василий ЩепетнёвИгра в беспилотники: Как технологии боевых роботов соотносятся с классическим римским правом Автор: Михаил ВаннахСотая колонка: попытка перевести дух, осмотреться и понять, что и зачем я делаю Автор: Дмитрий ШабановВот и пришел Песочный Человек: о презентации Samsung своего нового флагмана и харакири Филла Шиллера Автор: Сергей ГолубицкийЧто общего между отключением Google Reader, заявлением Элиссы Финк и жалобой Дина Гарфилда? Автор: Сергей ГолубицкийОрганика в старом веществе Солнечной системы Автор: Дмитрий ВибеIT-рынокКак компьютеры, стоящие доллар, изменят привычные вещи и перевернут всё с ног на голову Автор: Андрей ПисьменныйАлександр Чачава: «Россия появилась на мировой технологической карте как полноценный инновационный рынок» Автор: Елена КраузоваGrowth Hackers: кто это и почему они нужны стартапам Автор: Игорь ТишкинКак смартфоны смогут демократизировать такси Автор: Андрей ПисьменныйПромзонаПосмотрите на серию плакатов, посвящённых выдающимся учёным и их открытиям Автор: Николай МаслухинДополненная реальность как способ обучения игре в бильярд Автор: Николай МаслухинПосмотрите на составные часы, складывающие время из сотен других часов Автор: Николай МаслухинMobileТестирование приложений для Android как инструмент выхода в ТОП на Google Play Автор: Дмитрий Куриленко, компания PromwadВосемь угроз вашему мобильному банку.
ОглавлениеТерралабOpera 10.50: оперативный релиз Автор: Андрей КрупинАнтивирус со вкусом "Яндекса" Автор: Андрей КрупинБлоки питания на любой случай, часть 2. 600–700 Вт Автор: Константин ИвановОбзор Samsung i5700 Galaxy Spica Автор: Алексей СтародымовСвоя играМодель чугунного дирижабля, или Учитель Добреску — 2 Автор: Василий ЩепетневКафедра Ваннаха: Нано-блюз Автор: Ваннах МихаилВасилий Щепетнёв: Разбор полётов перед стартом Автор: Василий ЩепетневКивино гнездо: За что боролись Автор: БЕРД КИВИОткрытые системы Королевского Флота Автор: Ваннах МихаилИнтерактивCeBIT 2010: первые новинки Автор: Алексей СтародымовReaDitorialMovavi: история развития Автор: Наталья ХудяковаГолубятня-ОнлайнГолубятня: Хули Холи Автор: Сергей ГолубицкийГолубятня: Бабу Автор: Сергей ГолубицкийГолубятня: Агора № 20 Автор: Сергей ГолубицкийНаука и жизньМарсианский экспресс Автор: Олег Волошин.