> man operating_systems
Центр информации по операционным системам :: Форумы :: Концепции :: Безопасность
 
<< Предыдущая тема | Следующая тема >>
Защищенная распределенная операционная система
Переход на страницу  [1] 2 3 4 5
Модераторы: Roman I Khimov, Wanderer, Dron
Автор Добавил
gagar
Среда 21.12.2005 00:25

ID пользователя #515
Зарегистрирован: Вторник 20.12.2005 22:43
Местонахождение: Тверь
Сообщений: 72
Вначале немного о себе и, вообще, к чему эта тема.

Я являюсь студентом пятого курса. Учусь по специальности "Компьютерная безопасность". Модная такая специальность сегодня... Занимаюсь темой защиты информации уже 5 лет. Работаю уже 1,5 года в отделе защиты информации в серьезной гос. структуре... Короче, знаю эту "кухню" не по-наслышке.

И вот остался мне год до сдачи диплома в универе. И решил я написать ОС... Но не очередную ОС, какие в многом количестве разрабатываются на просторах нашего интернета, а ОС для профессионалов по защите информации. Потом, конечно на эту ОСь можно навесить дружественный интерфейс и т.д. Но задача сейчас не в этом.

Немного слов в свою защиту... На мой взгляд современная ОС переросла уровень эмпирических развлечений умных дядек. Нужна концепция (а концепций у нас хоть и завались, но толку что-то мало! Исправьте, если не прав!) и математическая модель!!! Некие мат. модели уже есть. Например модели планировщика процессов или модели файловой системы, но нет единого комплексного представления об ОС, как о целостном механизме. Нет (или я плохо искал), нет математических моделей комплексной систем защиты. Те извращения типа модели Белла-ЛаПадула, конечно, хороши, но практически не применимы в реальных условиях, или применимы с некоторыми допущениями. О дырах в системе безопасности в ОС МСВС 3.0 (кстати 3-й класс СВТ) я наслышан от наших программистов, да и сам сталкивался не раз (мы всем отделом от души веселились, когда читали модель СЗИ). Опять же все беды из-за отсутствия модели!!!

Задачи моего дипломного проекта следующие:
- разработка математической модели защищенной распеделенной ОС. Т.е. будут собраны все существующие частные модели и на их основе построена обобщенная модель. На сегодняшний день в моей "копилке" порядка 40 моделей различных компонентов ОС;
- разработка модели нарушителя и обоснование адекватности СЗИ ЗРОС, данной модели нарушителя;
- разработка полного комплекта проектной документации (ТЗ, Эскизный проект, Задание по безопасности и туеву хучу документов по требованиям ЕСПД, РД Гостехкомиссии (теперь ФСТЭК) и ГОСТов на разработку СВТ);
- написание ЗРОС по построенной модели.

Задачи для одного года фантастические, но попробовать стоит!!! )

Так вот, приходим к главному - для чего эта тема?

Это крик о помощи. Обращаюсь ко всем!!! У кого есть какие либо материалы по интересующей теме, любые ссылки, любая помощь.

Собственно, идея диплома возникла минут сорок назад (от времени данного поста) поэтому нет даже столь важной концепции новой ЗРОС. Вот сижу читаю статьи, обзоры и форум и понимаю, что надо иметь концепцию... Все это впереди и с Вашей помощью...

С уважением, Горячев Игорь Александрович (Gagar).
Наверх
gagar
Четверг 22.12.2005 18:41

ID пользователя #515
Зарегистрирован: Вторник 20.12.2005 22:43
Местонахождение: Тверь
Сообщений: 72
Просмотры темы имеются, но ответов нет Видимо не заципило...

Тогда попробую спровоцировать некое обсуждение. На основании различных лткрытый источников и моего опыта я разработал систему принципов построения ОС в целом и ЗРОС в частности. Файлы типа *.doc не разрешены, поэтому кину идею в пост.

Принципы построения защищенной распределенной операционной системы


Аннотация

Данный документ содержит изложение принципов проектирования и построения защи-щенной распределенной операционной системы (ЗРОС).

Предлагаемые принципы являются основой концепции ЗРОС. Принципы определяют са-мые важные, характерные черты ЗРОС.

Суть идеи ЗРОС отражают только все принципы вместе. Иначе говоря, только система из всех принципов дает верное представление о сущности ЗРОС.

Представленные принципы сгруппированы по смысловому содержанию на два класса: об-щие принципы построения ЗРОС и принципы построения подсистемы безопасности.

I. Общие принципы построения ЗРОС

Общие принципы построения ЗРОС «НейроОС» базируются на следующих фундамен-тальных принципах.

Принцип простоты.

- Альберт Эйнштейн - «Все должно быть простым, насколько это возмож-но, но не проще».

т.е. Система должна быть максимально простой и понятной.

Принцип полноты

- Антуан де Сент-Экзюпери - «Совершенство достигается не тогда, когда уже больше нечего добавить, а когда больше нечего убрать».

т.е. Система должна обладать той степенью полноты и функциональных возможностей, что-бы полностью удовлетворять запросы пользователей.

Принцип элегантности

- В системе должна достигаться заданная функциональность при использовании мини-мального механизма и при максимальной ясности.

Дополнительными, но не менее важными являются следующие принципы.

Принцип расширяемости.

Система должна разрабатываться таким образом, что внесение дополнительных функцио-нальных возможностей не должно нарушать целостности системы и ее архитектуры.

Принцип переносимости.

В системе должно осуществляться отделение аппаратной структуры от абстракций, пре-доставляемых системой. Система должна легко переноситься с одной аппаратной плат-формы на другую.

Принцип надежности и отказоустойчивости

Система должна быть защищена как от внутренних, так и от внешних ошибок и сбоев. Под внутренними ошибками подразумеваются ошибки самой операционной системы, а под внешними - ошибки программного обеспечения, работающего под управлением ОС. Дей-ствия ОС должны быть предсказуемы, а приложения не должны быть в состоянии нанести вред ОС. Сбой в работе одного из узлов или разрыв сетевого соединения не должен приво-дить к потере работоспособности всей распределенной системы и уничтожению информа-ции. Поэтому важным требованием к распределенной ОС является наличие механизмов надежности, обеспечивающих избыточное хранение данных и выполнение, а также восста-новление после сбоев.

В ЗРОС должны быть исключены фатальные программные ошибки и в ЗРОС должны быть механизмы автоматического устранения последствий нефатальных ошибок. ЗРОС не должна терять своей функциональности при возникновении ошибок во внешнем про-граммном обеспечении.

Принцип совместимости

Система должна быть совместимо со всеми существующими стандартами безопасности. ОС не должна поддерживать стандарты и технологии, дискредитировавшие себя с точки зрения безопасности. Список стандартов, обязательных для реализации будет оговорен отдельно.

Принцип безопасности

Система должна обеспечивать максимально возможную безопасность в рамках защищен-ной информационной системы. ЗРОС позиционируется как ядро защищенной информаци-онной системы.

Принцип производительности

Система должна обладать настолько хорошим быстродействием и временем реакции, на-сколько это позволяет аппаратная платформа. А по некоторым параметрам превосходить возможности аппаратуры. Распределенная ОС должна максимально нейтрализовать влия-ние удаленного взаимодействия на эффективность работы программного обеспечения.

Принцип экономичности

Создание и эксплуатация защищенной информационной системы на базе ОС должно осу-ществляться с минимальным расходом материальных и системных ресурсов.

Принцип эргономичности

Должна обеспечиваться психологическая приемлемость и комфортность при работе в ОС.

Принцип прозрачности

Механизмы защиты данных не должны создавать слишком большие трудности пользова-телям системы. Система безопасности должна быть интегрирована в систему, и быть мак-симально незаметна для пользователя.

При разрешении противоречия «безопасность и надежность против производительности и совместимости» приоритетом пользуются требования по безопасности и надежности.

II. Принципы построения подсистемы безопасности

Данная группа принципов ориентирована на определение основного подхода к построению подсистемы безопасности в ЗРОС.

Принцип интегрированности.

Средства защиты должны быть встроены в систему обработки информации таким образом, чтобы все без исключения механизмы взаимодействия находились под их контролем. При разработке защищенной ОС следование этому принципу означает осуществление тоталь-ного контроля взаимодействий. Самый простой метод состоит в ограничении числа меха-низмов взаимодействия и интеграции средств защиты прямо в эти механизмы.

Принцип инвариантности.

Средства защиты не должны зависеть от особенностей реализации приложений и не долж-ны учитывать логику их функционирования, напротив они должны быть универсальными для всех типов взаимодействий, и сводить их к отношениям доступа между субъектами и объектами. Для ОС в соответствии с этим принципом инвариантность средств защиты мо-жет быть достигнута применением регламентированной архитектуры приложения, ограничивающей способ взаимодействий.

Принцип унификации.

Должно существовать однозначное соответствие между контролируемыми взаимодейст-виями субъектов и объектов и операциями доступа, которые используются в моделях безо-пасности. Это позволяет придать универсальность средствам защиты и использовать их как для реализации различных моделей безопасности, так и для контроля доступа к объек-там различной природы. Следование этому принципу при разработке ОС приводит к необ-ходимости создания универсального интерфейса, объединяющего все способы взаимодей-ствия между субъектами и объектами доступа, все функции которого однозначным обра-зом отображаются на множество операций, описанных моделью безопасности. При созда-нии системы «с нуля» напрашивается использование технологий программирования, по-зволяющих получать элегантные решения в области унификации интерфейсов, наиболее пригодной из которых является ООП.

Принцип адекватности.

Для обеспечения реальной безопасности (способности противостоять атакам) необходимо устранить источники возникновения уязвимостей. Как показали исследования природы уязвимостей, основная причина их появления состоит в отсутствии последовательного по-хода к контролю доступа. Существующие системы содержат привилегированные средства и сервисы, которые передают пользователям часть своих полномочий в обход средств кон-троля. Любая программная ошибка в таких средствах ведет к появлению уязвимости. Для ОС устранение причин появления уязвимостей означает обязательный контроль доступа на основе универсального интерфейса и единого механизма взаимодействия без каких-либо исключений, и минимизацию объема доверенного кода самих средств защиты с целью уменьшения вероятности появления в них ошибок.

Принцип корректности.

Средства защиты должны реализовывать управление доступом в соответствии с формаль-ными моделями. Наличие непротиворечивой, математически доказанной модели безопас-ности позволяет формально обосновывать безопасность системы, предоставляет объектив-ный критерий правильности ее работы, а также может служить основой для построения исчерпывающих тестов, проверяющих корректность работы средств защиты для всех со-стояний. Для защищенной ОС этот принцип предопределяет управление доступом на ос-нове формальных моделей безопасности.

Принцип системности.

Обеспечение безопасности данных представляет собой регулярный процесс, осуществляе-мый на всех этапах жизненного цикла ОС при комплексном использовании всех средств и механизмов защиты данных для предотвращения или компенсации последствий возмож-ных НСД.

Принцип распределенности.

Система защиты должна быть распределена в сети на всех машинах таким образом, что случайное физическое отключение одной или нескольких машин не приведет к разруше-нию системы защиты или потере ей части своих функций.

Принцип наименьших привилегий.

Субъекту системы должны быть выданы только те привилегии, которые необходимы ему для решения его задач. Если субъекту необходимы дополнительные права для выполнения некоторых задач (например, права администратора), они должны быть изъяты у него сразу после выполнения данной задачи.

Принцип безопасных умолчаний.

Данный принцип говорит о том, что по умолчанию доступа к объектам системы быть не должно. Все права доступа должны быть определены явно.

Принцип полного контроля доступа.

Контроль доступа должен выполняться не только при первой попытке доступа, но и при каждой операции доступа.

Принцип открытой разработки.

Безопасность системы не должна быть основана на секретности разработки. Напротив, ни-какие данные о системе (кроме как секретной ключевой информации) не могут позволить злоумышленнику нарушить систему безопасности.

Принцип разделения привилегий.

Механизмы, предоставляющие доступ к ресурсам системы, механизмы аудита безопасно-сти и механизмы конфигурирования системы не должны быть сконцентрированы «в одних руках». Также не должно приниматься решение о доступе, базируясь на единственном условии.

Принцип психологической приемлемости.

Механизмы безопасности должны использовать столько ресурсов, сколько действительно надо для выполнения задач, поставленных администратором безопасности. Механизмы безопасности должны легко конфигурироваться и предоставлять пользователям информацию в удобной форме. Иными словами, механизмы безопасности не должны провоцировать собственное отключение.

С уважением, Горячев Игорь Александрович (Gagar)


<span class='smallblacktext'>[ Редактирование понедельник 09.01.2006 21:51 ]</span>
Наверх
Dreamer
Пятница 23.12.2005 02:37

ID пользователя #9
Зарегистрирован: Воскресенье 04.07.2004 14:01
Сообщений: 235
Еще все это не прочитал, но хочу сказать следующее: какими бы не были идеи, чтобы построить действительно "не очередную ОС" нужны люди, деньги и время. То есть именно то, чего никогда не хватает. Подумайте. Иногда гораздо полезнее не пытаться что-то создать, а опубликовать свои идеи.

Жизнь на Линуксе есть!
Наверх
gagar
Суббота 24.12.2005 23:20

ID пользователя #515
Зарегистрирован: Вторник 20.12.2005 22:43
Местонахождение: Тверь
Сообщений: 72
Во-первых, Dreamer, не прочитав - не суди!!!

Во-вторых, чтобы построить "не очередную ос" нужна идея!!! Идеи, на мой субъективынй взгляд, в сообществе русских осеписателей нет!!! Фраза "давайте напишем ОО ОС" не есть идея или концепция!

В-третьих, а собственно почему я не могу реализовать свою идею? Если бы Вы прочитали мои "принципы", то смогли бы увидеть там принцип Простоты. Одной из сторон этого принципа является то, что новая супер крутая ОС совсем не обязана содержать в себе 25.000.000 строк кода столько же багов!!!

В-четвертых, (теперь уже остыв ) я сейчас не ставлю своей задачей написать ОС. ЗРОС - это конечная цель. Именно сейчас я и занимаюсь публикованием своих и обобщением чужих идей! У меня есть опыт участия в разработке крупных проектов и я понимаю важность таких "скучных" с точки зрения программиста этапов как "Техническое задание", "Эскизный проект" и т.д.

На текущем этапе формируются требования к будущей ОС, которые потом станую частью "ТЗ". Формируется концепция, которая перерастет в Эскизный проект. На эскизный проект навешиваем мат. модель и получаем технический проект. Далее приступаем к выполнению рабочего проекта. На выходе получаем ЗРОС. Я надеюсь услышать от вас как критику моих идей, желательно обоснованную, так и реальные предложения тех людей, назовем из "теоретиками", которые могут генерировать идеи, но не хотят их реализовывать. "Теоретики" великие люди - я их очень уважаю. Все мнения будут услышаны и ни одно не будет "своровано". Только я вот "практик". Мне нужно все руками потрогать. В том числе и ОС!

Кстати, вопрос к экспертам: "С чего начинать разработку ОС?". Поделитесь опытом!

И в заключение: у меня есть возможность привлечь людей, время и деньги!

С уважением, Горячев Игорь Александрович.
Наверх
Dreamer
Воскресенье 25.12.2005 02:27

ID пользователя #9
Зарегистрирован: Воскресенье 04.07.2004 14:01
Сообщений: 235
gagar написал(а) ...
Во-первых, Dreamer, не прочитав - не суди!!!


Спасибо. Я это учту.

gagar написал(а) ...
Во-вторых, чтобы построить "не очередную ос" нужна идея!!! Идеи, на мой субъективынй взгляд, в сообществе русских осеписателей нет!!! Фраза "давайте напишем ОО ОС" не есть идея или концепция!


Если вы хотите кинуть камень в огород 3ОС, то лучше почитайте документацию и уясните для себя, что как раз-то концепция там очерчена вполне конкретно. Но 3ОС служит достойным примером того, насколько важна сплоченность коллектива и наличие всех трех аспектов мною указанных в предыдущем посте.

gagar написал(а) ...
В-третьих, а собственно почему я не могу реализовать свою идею? Если бы Вы прочитали мои "принципы", то смогли бы увидеть там принцип Простоты. Одной из сторон этого принципа является то, что новая супер крутая ОС совсем не обязана содержать в себе 25.000.000 строк кода столько же багов!!!


Не знаю, какой принцип простоты у Вас описан, но такие "простые" принципы уже не раз предлагали, ограничившись словом "микроядро" и размазанным представлением "реализуем ядро с минимальным количеством функций, а там остальное накрутим поверху". Не один проект провалился на этом.

gagar написал(а) ...
В-четвертых, (теперь уже остыв ) я сейчас не ставлю своей задачей написать ОС. ЗРОС - это конечная цель. Именно сейчас я и занимаюсь публикованием своих и обобщением чужих идей! У меня есть опыт участия в разработке крупных проектов и я понимаю важность таких "скучных" с точки зрения программиста этапов как "Техническое задание", "Эскизный проект" и т.д.

На текущем этапе формируются требования к будущей ОС, которые потом станую частью "ТЗ". Формируется концепция, которая перерастет в Эскизный проект. На эскизный проект навешиваем мат. модель и получаем технический проект. Далее приступаем к выполнению рабочего проекта. На выходе получаем ЗРОС. Я надеюсь услышать от вас как критику моих идей, желательно обоснованную, так и реальные предложения тех людей, назовем из "теоретиками", которые могут генерировать идеи, но не хотят их реализовывать. "Теоретики" великие люди - я их очень уважаю. Все мнения будут услышаны и ни одно не будет "своровано". Только я вот "практик". Мне нужно все руками потрогать. В том числе и ОС!


И Вы думаете, что пройдете через все эти стадии учитывая то, что "Вы не задаетесь целью написать ОС"? На это уйдет как минимум год или два. Я лишь могу Вас назвать большим оптимистом. Искренне желаю не потерять энтузиазма.

gagar написал(а) ...
Кстати, вопрос к экспертам: "С чего начинать разработку ОС?". Поделитесь опытом!


Microsoft начала с заказа от IBM, Торвальдс начал с терминала, Турьянмаа начал с конкретной целью написать ОС на ассемблере. Вариантов бесконечно много.

gagar написал(а) ...
И в заключение: у меня есть возможность привлечь людей, время и деньги!


В таком случае желаю удачи.

Жизнь на Линуксе есть!
Наверх
Vadim Ushakov
Воскресенье 25.12.2005 06:22

ID пользователя #409
Зарегистрирован: Четверг 18.08.2005 04:25
Местонахождение: Красноярск
Сообщений: 85
В целях повышения уровня энтропии вселенной, выскажу и я свое мнение.

gagar написал(а) ...
Во-вторых, чтобы построить "не очередную ос" нужна идея!!! Идеи, на мой субъективынй взгляд, в сообществе русских осеписателей нет!!! Фраза "давайте напишем ОО ОС" не есть идея или концепция!
Данная фраза не есть концепция. Однако, концепция системы, построенной на принципах ОО-программирования, - это вполне реальная вещь.
И если уж вы сказали, что в обществе РУССКИХ осеписателей нет идей, то как на счет прочих? Это не только проблема "русских осеписателей", это то, что Лазаревич назвал барьером развития. И это есть и в информатике, и в физике, и в многих других науках. Мы просто живем в такое время, когда новые идеи ни кому не нужны (когда я говорю "никому", я имею ввиду 90% населения этой планеты). А нет спроса, нет и предложения.

gagar написал(а) ...
В-третьих, а собственно почему я не могу реализовать свою идею? Если бы Вы прочитали мои "принципы", то смогли бы увидеть там принцип Простоты. Одной из сторон этого принципа является то, что новая супер крутая ОС совсем не обязана содержать в себе 25.000.000 строк кода столько же багов!!!
Вы, может быть, будете удивлены, но почти это же самое в разных вариациях говорят все, кто садится писать "новую суперкрутую ОС" или "суперкрутое ядро".

gagar написал(а) ...
Принцип простоты.
Принцип полноты.
Принцип элегантности.
Замечательные принципы. Это есть в Unix. (Я не люблю Unix, я считаю, что концепция "байты-файлы-процессы" устарела, но концепция там есть и вполне простая и элегантная.) Это есть в Bluebottle. И даже в Windows это есть, хотя с элегантностью там бывает туго.
Проблема в том, что каждый видит РЕАЛИЗАЦИЮ этих принципов по своему. И Томпсон с Ричи, и Вирт, и Катлер стремились к простоте, полноте и элегантности. И к каким различным вещам пришли.

gagar написал(а) ...
"Теоретики" великие люди - я их очень уважаю. Все мнения будут услышаны и ни одно не будет "своровано". Только я вот "практик". Мне нужно все руками потрогать. В том числе и ОС!
Я и сам в некотрой мере "практик". Я не люблю абстрактных идей. Если у меня есть горовая идея, я сажусь ее реализовывать, чтобы как раз "поторогать руками".
gagar написал(а) ...
И в заключение: у меня есть возможность привлечь людей, время и деньги!
Если вы ставите своей целью дипломную работу, то напрягаться смысла особо не имеет. Вы ее напишете и без наших коллективных советов. А если вы действительно заинтересованы в создании системы нового типа, то присоединяйтесь к UzhOS. Насколько мне известно, на просторах рунета это чуть ли не единственный проект, который еще не загнулся. И там действительно есть концепция и перечисленные вами принципы.

Падает тот, кто бежит; тот, кто лежит – уже не падает.
Наверх
gagar
Воскресенье 25.12.2005 12:49

ID пользователя #515
Зарегистрирован: Вторник 20.12.2005 22:43
Местонахождение: Тверь
Сообщений: 72
- Гиви, скажи нам, что такое ос?
- Ос - это такой жолтый полосатый мух, который болно кусаит.
- Нэправилно! Ос - это такой длинный палка, на который вертится наш земля!

"Диалог в грузинской школе"


буду отвечать по-порядку.

1. Я ни коим образом не хотел оскорбить разработчиков 3ОС и кого бы то нибыло еще. Я уже два года очень внимательно слежу за процессом создания и развития многох (не всех, конечно) "любительских" ОС. Есть потенциал у многоих ОС. У многоих ОС есть интересная, перспективная концепция. НО!!! Есть маленькое но!!! Например, UzhOS, позиционируется как ОС реального времени, но нигде нет расчетов и доказательства выполнимости этого реального времени... Возможно я что-то недопонимаю в термине "реальное время". Но для такой ОС должно быть рассчитано и доказано время реакции. В UzhOS'е этого нет! Я даже пытался участвовать в разработке, но меня смутило отсутствие конципции безопасности и слабое желание ее поиметь. Заинтересовался только Семанин, но он не захотел интегрировать защиту на уровень ядра ОС, как то положено, а предлагал вынести ее на пользовательский уровень, что, на мой взгляд, ставит под сомнение всю безопасность ОС.

2. Упомянутый ниже Menuet был написан одним человеком, без денег и людей! Или я опять чего-то не знаю? Потом появились энтузиасты, подхватившие идею. Да, концептуально, Menuet мертв, но это хороший пример...

3. Dreamer: возможно я не так выражаюсь, возможно у нас разная терминология. Я писал, что "сейчас не ставлю своей задачей написать ОС". ОС это цель! Но путь к этой цели лежит через множество задач. Сегодня задача не написание чего-то непонятного, а грамотное проектирование чего-то понятного.

4. Я знаю, что на стадию проектирования у меня уйдет как минимум год, на это я и отвожу диплом. Кстати, год, для проектирования очень мало. Я уже два года веду предпроектную подготовку... Короче, я оптимист!

5. Vadim Ushakov: что касается отсутствия идей в среде программистов (расширим среду с уровня осепесетелей на все сообщество программистов)... Идеи есть. Есть гениальная идея городской информационной метасреды в качестве интерфейса пользователя... Есть гениальные идеи по поводу распределенных систем (Е1, если не ошибаюсь, кстати, вот это я называю концепцией)... идеи есть в академической среде, только "академики" не пишут ОС, а "практики" не слушают "академиков". Я попытаюсь, и надеюсь что у меня получится, реализовать на практике как свои академические идеи по безопасности, так и другие идеи, на реализацию которых я получу разрешение.

6. "Вы, может быть, будете удивлены, но почти это же самое в разных вариациях говорят все, кто садится писать "новую суперкрутую ОС" или "суперкрутое ядро". -Я тоже слышал эту фразу миллион раз, в этом Вы правы.

Мой принцип простоты, я надеюсь, будет ограничиваться не только "микроядром". Надеюсь, мой подход будет иным.

7. По поводу реализации принципов.

Попробую ответить образно...

"Во всех делах очень полезно периодически ставить знак вопроса к тому, что Вы с давних пор считали не требующим доказательств" Рассел

Джером К. Джером в своем известном рассказе "Трое в лодке не считая собаки" описывая сборы друзей в путешествие по реке писал примерно следующее "при сборах в дальнее путешествие важно думать не о том, что вам может пригодиться, а о том, без чего Вы не сможете обойтись..."

Будем работать!!!

С уважением, Горячев Игорь Александрович
Наверх
Vadim Ushakov
Воскресенье 25.12.2005 14:03

ID пользователя #409
Зарегистрирован: Четверг 18.08.2005 04:25
Местонахождение: Красноярск
Сообщений: 85
gagar написал(а) ...
Например, UzhOS, позиционируется как ОС реального времени, но нигде нет расчетов и доказательства выполнимости этого реального времени... Возможно я что-то недопонимаю в термине "реальное время". Но для такой ОС должно быть рассчитано и доказано время реакции. В UzhOS'е этого нет!
Реальное время - это когда гарантируется, что обработка события завершится не позднее чем за N единиц времени. Вот и всё. Естественно, подразумевается, что N - достаточно малая величина. А принципиально никаких отличий от систем "нереального" времени нет. У Сергея были какие-то рассчеты, но я уже не помню точно, что там были за цифры и на чем они основывались.

gagar написал(а) ...
Я даже пытался участвовать в разработке, но меня смутило отсутствие конципции безопасности и слабое желание ее поиметь. Заинтересовался только Семанин, но он не захотел интегрировать защиту на уровень ядра ОС, как то положено, а предлагал вынести ее на пользовательский уровень, что, на мой взгляд, ставит под сомнение всю безопасность ОС.
Тут не мешало бы прояснить, что скрывается под словом "ядро" и под словом "защита". Слишком уж расплывчатые термины. В моем понимании ядром является минимальный набор примитивов по управлению памятью, потоками и прерываниями. Естественно, защищать там в общем-то нечего. Нет никаких высокоуровневых абстракций, требующих для своей работы подсистему безопасности.
В терминологии UzhOS ядро - это скорее ран-тайм для объектов (диспетчер объектов, фактически, и есть самое сердце системы). Я не знаю, как будет реализовано всё у Семанина, но я считаю, что взаимодействие с подсистемой безопасности лучше всего интегрировать на уровне базовых классов системы. И в Юникс и в Windows подсистема безопасности работает на уровне концепции "если что-то адресуемо по имени - у этого что-то должен быть владелец и права доступа". Т.е. задача в том, чтобы правильно спроектировать иерархию классов и внедрить средства безопасности в нужный класс. Получается, что ядро действительно ни при чем.

gagar написал(а) ...
идеи есть в академической среде, только "академики" не пишут ОС, а "практики" не слушают "академиков".
Это не причина, а следствие. О том, почему перестали доверять ученым, можно долго говорить, да это, впрочем, здесь и не к месту. Но даже на этом форуме есть наглядный пример, как "практики" привыкли решать задачи:
Captain Cobalt: "Безопасность Oberon доказана математически."
Некий "практик": "Да не доверяю я что-то в вашему Обероне... Уж лучше я по старинке. Так оно надежнее."
В качестве "практика" в этом диалоге успели побывать многие, в том числе и я. Сомневаются люди в математике. То, что раньше было в области научных доказательств, теперь стало предметом веры. Как бы скоро школьное обучение не переделали в таком стиле: "Верите ли вы, что сумма квадратов катетов равна квадрату гипотенузы? Верьте, дети мои!"

Я считаю, что если мы перестанем просто болтать на форумах, а действительно решим, оставив честолюбивые планы, сообща написать систему, то результат не замедлит последовать. Идеи? Концепции? Всё это есть. Но я, например, не специалист по безопасности. Если бы мне пришлось писать что-то свое, вероятно я бы просто постарался поточнее воспроизвести модель безопасности Windows NT - просто потому, что я достаточно хорошо с ней знаком, привык к ней. Но вот вы хорошо разбираетесь в данной области. Может быть, вы с Семаниным потому и не нашли общий язык, что вы описывали систему с точки зрения подсистемы безопасности и в ее терминах. А Сергей говорил о чем-то другом. Разумеется, в UzhOS, как и в любой другой ОС, планируется подсистема безопасности и нужно будет разработать адекватную модель для нее с учетом особенностей данной ОС. Если вы считаете, что Сергей действительно в чем-то не прав - переубедите его своими аргументами. В конечном счете мы все несколько отличаемся от ребят с menuetos.org в ту сторону, что мы хотя бы иногда СНАЧАЛА ДУМАЕМ, а уж потом пишем.

Падает тот, кто бежит; тот, кто лежит – уже не падает.
Наверх
gagar
Понедельник 26.12.2005 00:22

ID пользователя #515
Зарегистрирован: Вторник 20.12.2005 22:43
Местонахождение: Тверь
Сообщений: 72
Ну что же, я сначала подумал, а теперь пишу

Поясняю взаимосвязь терминов "ядро" и "защита". Есть у нас некоторая ЭВМ. Железо этой ЭВМ предоставляет нам некий набор логических "элементов", таких как процессорное время, страница памяти, блок жесткого диска, прерывания. Сущность элементов очень разная, а управлять ими надо. Для этого люди пишут ОС. Значит, какой минимальный набор операций должна поддерживать ОС (читай микроядро)? Управление памятью, организация процессов и взаимодействие между ними, ввод-вывод и прерывания. Вот как они реализованы это суть принцип простоты. Если взять функциональность по максимуму, то получим монолитное ядро, если взять в ядре все по минимуму, а "лишнее" вынести во вне, то получим микроядро. Микроядро предоставляет примитивы (не суть какие объектные или нет) из которых строются все остальные модули ОС. Так, например, гарантии реального времени реализуются на уровне микроядра, а на более высоких уровнях лишь подтверждаются! Так и с защитой. Для гарантированного обеспечения заданного уровня защиты именно ядро должно предоставлять базовые примитивы защиты. Тогда на более высоких уровнях нам нужно лишь подтверждать защищенность, что намного проще. Какие именно примитивы? Вопрос открытый.

Итак, на мой взгляд микроядро должно содержать в себе следующие компоненты:
- блок управления памятью;
- блок управления процессами и межпроцессным взаимодействием;
- блок ввода-вывода и прерываний;
- блок примитивов безопасности.

Кстати еще один аргумент в пользу внесения элементов защиты в ядро:

В Руководящем документе Государственной технической комиссии при Президенте Российской фЕДЕРАЦИИ "Средства вычислительной техники. Защита от несанкционированного доступа к информации. Показатели защищенности от несанкционированного доступа к информации" есть такая фраза:

"В СВТ должен быть реализован диспетчер доступа, т.е. средство, осуществляющее перехват всех обращений субъектов к объектам, а также разграничение доступа в соответствии с заданным принципом разграничения доступа. ... Таким образом, должен контролироваться не только единичный акт доступа, но и потоки информации". Конечно, сам диспетчер должен быть реализован вне ядра, но примитивы для обеспечения его работы должны поставляться ядром. Только так можно гарантировать безопасность системы.

Кстати, господа, а кто нибудь анализировал причины неудач тех или иных проектов по написанию ОС? Очень интересно было бы почитать такой анализ как для еще существующих проектов, так и для вновь зарождающихся. Команды существующих проектов могли бы исправить свои ошибки и откорректировать свою деятельность (если это уже не поздно). Многим новичкам это охладило бы пыл или предостерегло от мноих ошибок.

Если такой аналитики нет, то предлагаю совместными усилиями ее провести.

С уважением, Горячев Игорь Александрович.

P.S. А по поводу написания ОС... сможем ли договориться, говоря на разных языках, имея разные цели и амбиции? Великая честь и великий труд выпадет на долю того, кто решится координировать столь сложный проект... Моя цель пока попроще - написать модель, а там посмотрим... И я открыт для контакта... критикуйте, спорьте, предлагайте...
Наверх
Roman I Khimov
Понедельник 26.12.2005 00:47

ID пользователя #1
Зарегистрирован: Воскресенье 27.06.2004 12:37
Местонахождение: Санкт-Петербург
Сообщений: 601
Тема хорошая. Время критическое. Понимаю, сам сейчас размышляю над дипломной...

Однако, простой и конкретный вопрос - чем в плане безопасности плох SE Linux?


Греби и улыбайся!
Наверх
Сайт
Переход на страницу  [1] 2 3 4 5  

Перейти:     Наверх

Транслировать сообщения этой темы: rss 0.92 Транслировать сообщения этой темы: rss 2.0 Транслировать сообщения этой темы: RDF
Powered by e107 Forum System

© OSRC.info, 2004-2010.
Авторские права на любые материалы, авторы которых явно указаны, принадлежат их авторам. По вопросам публикации таких материалов обращайтесь к авторам.
Авторские права на любые другие материалы принадлежат OSRC.info.
Сайт является помещением библиотеки. Копирование, сохранение на жестком диске или иной способ сохранения произведений осуществляются пользователями на свой риск.
При использовании материалов сайта ссылка на OSRC.info обязательна.