> man operating_systems
Переход на страницу  1 2 3 [4] 5 6
Модераторы: Roman I Khimov, Wanderer, Dron
Автор Добавил
Dron
Четверг 06.10.2005 10:03


ID пользователя #13
Зарегистрирован: Понедельник 05.07.2004 11:16
Местонахождение: Москва
Сообщений: 651
Во, den - спасибо... подсказал ответ... сижу голову ломаю...

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

модули в линукс - это конечно хорошо... жалко что пока не придумали пользовательских модулей ядра... (да потому что небезопасно)

Насчет совместного использования одного вектора - это скорее всего и устройства однотипные... (хотя я в железе не сильно силен, но в голову ничего кроме COM портов не приходит)

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

Мы уже в прошлом топике выяснили что оберон некрасив, неудобен... хотя лаконичен и самодостаточен...
Может быть идея - достаточно удачная... но это не более чем идея... вот когда ты сам пересядешь на BB и будешь в ней жить... тогда мы и сравним что лучше... а пока это всеравно что менует с виндой сравнивать... во, где скорость...

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

Ты не любишь микроядер, я не люблю оберон... мы с тобой просто не сможем друг друга понять... (это исконный спор сишников и паскалистов наверное.

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

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

Андрей Валяев
Наверх
Сайт
captain cobalt
Четверг 06.10.2005 10:56

ID пользователя #12
Зарегистрирован: Воскресенье 04.07.2004 21:44
Местонахождение: /ru/perm
Сообщений: 144
czarker написал(а) ...
я продолжаю настаивать на том, что гипертекстовый формат, даже если он хороший, не имеет отношения к плюсам и минусам операционной системы, и в особенности её строения, и приводить его в каестве достоинства NO было по меньшей мере абсурдно. Или Вы не согласны с этим?
Это интерфейс, с помощью которого пользователь взаимодействует с системой. Внутренности системы действительно не зависят от пользовательского интерфейса, хотя пользовательский интерфейс частично зависит от архитектуры внутренностей системы.

Гипертекстовый интерфейс здесь имеет точно такое же значение, как командная строка или GUI в других системах.

P.S. Интересно, почему в Windows98 появилось нечто под названием "отображать рабочий стол как веб-страницу"?

bluebottle.ethz.ch - Bluebottle. Швейцария. Сделано с умом.
Наверх
Сайт
captain cobalt
Четверг 06.10.2005 10:56

ID пользователя #12
Зарегистрирован: Воскресенье 04.07.2004 21:44
Местонахождение: /ru/perm
Сообщений: 144
Dron написал(а) ...
Время медленных машин уже прошло...
То же самое говорили и десять и двадцать лет назад.

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

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

Однако следует чётко перечислить все потенциальные угрозы и посмотреть, нельзя ли устранить причины каких-нибудь из них.

Системные модули Bluebottle можно приравнять к модулям ядра в других системах. Значительную часть функциональности таких ядер можно полностью переписать на безопасном языке программирования, а оставшуюся "истинно системную" часть написать на всё-таки более безопасном языке. Таким образом система на безопасном языке получается более безопасна.

Выше мы видели, что микроядро плюс драйвер диска на ненадёжном языке может быть менее безопасно, чем система на безопасном языке плюс драйвер диска на безопасном языке.

Так какая система самая безопасная?
Dron написал(а) ...
Вообще модульность рулит... (но в обероне она приняла очень уж извращенные формы.
Оберон - это и есть модульность в чистом виде.

А языки ассемблер, си и си++, а также аппаратная защита памяти к модульности имеют весьма отдалённое отношение.

bluebottle.ethz.ch - Bluebottle. Швейцария. Сделано с умом.
Наверх
Сайт
Freeman
Пятница 07.10.2005 00:47
ID пользователя #3
Зарегистрирован: Четверг 01.07.2004 14:57
Сообщений: 207
captain cobalt написал(а) ...
Гипертекстовый интерфейс здесь имеет точно такое же значение, как командная строка или GUI в других системах.

Ну вот и до графов дошли.
Наверх
Dron
Пятница 07.10.2005 10:25


ID пользователя #13
Зарегистрирован: Понедельник 05.07.2004 11:16
Местонахождение: Москва
Сообщений: 651
Капитан: Я не сильно зацикливаюсь на словах... для меня объектность - это не только объектно ориентированный язык... - это способ программирования... (у меня вон ядро тоже объектное!!!)

То же самое я думаю и про модули... модули - это не догма какая-нибудь... не рамки за которые нельзя шагнуть... модули - это подход к организации системы!

Так что не надо говорить что вот Оберон чисто модульный и все дела... для меня это звучит примерно так же как C++ - по настоящему объектный.

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

Андрей Валяев
Наверх
Сайт
captain cobalt
Пятница 14.10.2005 01:08

ID пользователя #12
Зарегистрирован: Воскресенье 04.07.2004 21:44
Местонахождение: /ru/perm
Сообщений: 144
czarker написал(а) ...
Базовые концепции TUI появились ещё в первом графическом интерфейсе Plan9. Позже в ACME были реализованы детали, являвшиеся стандартными в ETH Oberon, но концепция уже была заложена в Plan9 до появления ETH Oberon.
Имеет ли какое-нибудь отношение к разработке Plan9 процитированный Роб Пайк, утверждающий что Plan9 заимствует из Oberon?
Dron написал(а) ...
(у меня вон ядро тоже объектное!!!)
Имеет смысл написать документацию по архитектуре, а мы почитаем.
Dron написал(а) ...
То же самое я думаю и про модули... модули - это не догма какая-нибудь... не рамки за которые нельзя шагнуть... модули - это подход к организации системы!
А также функционирования системы.
Весьма полезно когда модули можно добавлять и убирать прямо во время работы системы.

Модули - это не просто клочки кода, разбросанные по разным файлам.
Dron написал(а) ...
И еще... разделение user/system - помоему явно недостаточное...
Неплохая мысль.

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

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

Например, существует много способов поиска данных в массиве. Самый быстрый - хэширование, самый медленный - тупой перебор всех элементов.

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

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

Множество "умных" алгоритмов было придумано когда мегагерцы были маленькие. Зачем их выкидывать? Вернёмся к примеру с поиском данных. Существует огромное количество реализаций поиска с помощью хэширования. При наличии определённой дисциплины программист может взять какую-нибудь реализацию хэширования и использовать её для своего поиска. При этом он может даже подробно не знать как она работает.

Но вообразим себе программиста который говорит: "не верю я в это ваше хитроумное хэширование; как мы узнаем, что искомых данных нет, если не переберём все элементы массива?". А потом добавляет: "да ну его, это ваше хэширование; я лучше напишу свой простой алгоритм поиска полным перебором".

Забавно?

Точно также забавно выглядят утверждения типа: "я даже не буду разбираться, как работает эта ваша Bluebottle; пойду лучше потихоньку клепать своё микроядро".

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

bluebottle.ethz.ch - Bluebottle. Швейцария. Сделано с умом.
Наверх
Сайт
Dron
Пятница 14.10.2005 10:39


ID пользователя #13
Зарегистрирован: Понедельник 05.07.2004 11:16
Местонахождение: Москва
Сообщений: 651
Че-то ты путаешь...
проверка памяти осуществляется буквально несколькими операциями... там все индексно. (а по индексу - это еще на порядок быстрее чем по хешу)

К тому же все кешируется.

И насчет уровней защиты...
4 кольца было бы достаточно, но это в том случае, если полноценно использовать сегменты... которые в 32-х битной архитектуре просто неудобны. (поэтому ими практически не пользуются)

А страницы имеют всего два уровня привелегий... user/system

PS: Я представляю как работает Bluebottle
И мне это не нравится. Может быть я просто параноик... но здоровая осторожность еще никому не вредила.

[ Редактирование пятница 14.10.2005 10:41 ]

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

Андрей Валяев
Наверх
Сайт
Vadim Ushakov
Пятница 14.10.2005 11:42

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

К тому же все кешируется.
При КАЖДОМ обращении к оперативке процессор проверяет кучу условий в дескрипторах сегментов. А при вызове прерывания вообще надолго задымывается о проблемах бытия. Выкиньте из Pentium все эти GDT, LDT, ds, ss, cs... Все равно ими никто не пользуется. Так ведь нет, тянут волынку обратной совместимости.

Пусть Интел даст мне два, всего два дополнительных регистра: MinESP и MaxESP, чтобы при выходе ESP за граничные значения генерилось исключение ошибки в стеке - и я буду счастлив. Вот аппаратная защита стека действительно нужна. Все остальное - лирика.

Кстати, сегментные регистры можно было бы превратить в обычные 32-х разрядные и либо добавить их в число РОНов, либо использовать в качестве индексных (а можно даже и то и другое сразу). Тогда инструкция mov [fs:eax], 0 будет означать просто mov [fs + eax], 0

Извините за офтоп. Просто читал сейчас Intel Software Developer Manual и озверел. Этот фолиант нагоняет на меня тоску и зверство одновременно.

Падает тот, кто бежит; тот, кто лежит – уже не падает.
Наверх
Chizh
Пятница 14.10.2005 14:40
ID пользователя #90
Зарегистрирован: Понедельник 13.09.2004 18:42
Сообщений: 170
captain cobalt написал(а) ...
С другой стороны, безопасный язык программирования может во время компиляции проверить, что компоненты системы взаимодействуют между собой только через явно определённые интерфейсы, что передаваемые при взаимодействии данные имеют правильный тип и не происходит рукосуйства.

Тут мне кажется есть одна проблема. Ошибки бывают и в компиляторах, и если процессор не будет иметь средств диагностики, то будет тяжеловато проверять качество компилятора. Впрочем можно допустить специальный "отладочный" режим процессора, с серьёзным диагностическим функционалом.
Наверх
Сайт
Dron
Пятница 14.10.2005 15:47


ID пользователя #13
Зарегистрирован: Понедельник 05.07.2004 11:16
Местонахождение: Москва
Сообщений: 651
Вадим, я с тобой полностью согласен... в современных x86 процессорах куча всего ненужного... просто половина всего ненужного... 16-битные режимы можно було бы уже вырезать... сегменты были хороши в 16-битном защищенном режиме... в 32-х битном они потеряли свою привлекательность.
Но тогда бы это был другой процессор... хотя совместимость и зло (я так считаю) но мы все понимаем что производители на это пойти не могут.

Из процессора можно было бы многое выкинуть, но аппаратная защита всеравно должна быть!

А что касается страничной адресации - помоему штука достаточно удобная... во всяком случае линейная память гораздо хуже, даже не столько в плане защищенности, сколько в плане удобства. (зачем компировать туда-сюда, если можно мапить?)
[ Редактирование пятница 14.10.2005 15:53 ]

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

Андрей Валяев
Наверх
Сайт
Переход на страницу  1 2 3 [4] 5 6  

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

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

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