OSDev

для всех
Текущее время: 26 авг 2019, 12:32

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 64 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
Автор Сообщение
СообщениеДобавлено: 28 июл 2014, 13:51 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1384
эмбрион писал(а):
Ошибки в системных задачах есть и в традиционных ОС. Поэтому вы по сути заявили, что даже традиционную ОС написать нельзя, поскольку она может упасть из-за ошибок.

Бред и перевирание сказанного мною. Я нигде не утверждал, что невозможно написать ОС. Я утверждал и утверждаю, что экзоядерная система абсолютно ненадёжна независимо в силу своей архитектуры, а соответственно, практически бесполезна (надёжность уровня MS DOS, где у программиста, если говорить про обычные ПК, была максимальная гибкость, вряд ли будет широко востребована).

Цитата:
Если же взглянуть на основную цель экзоядра - максимальную гибкость - то получим просто перенос ответственности за ошибки на программистов, расширяющих экзоядро своими компонентами. То есть всё будет работать прекрасно, а если разработчики компонентов косячат - значит им придётся исправлять свои ошибки (точно так же как разработчикам ОС в случае их косяков) - и всего делов-то.

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

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

В случае же экзоядра, где подавляющая часть функционала ОС вынесена не просто в режим пользователя, а прямо отдана на откуп приложениям, никакой надёжности не может быть в принципе. Если, например, приложение работает с файлами на диске, оно использует библиотеку, содержащую дисковые функции. Однако эти функции должны иметь доступ к регистрам контроллера дисков. В экзоядерной системе придётся эти самые регистры отобразить на пространство задачи, чтобы библиотека, входящая в это пространство, имела к ним доступ. Но тогда к ним будет иметь доступ и сама задача -- а значит, сможет сделать с контроллером дисков всё, что угодно. Именно поэтому я сравнил экзоядерную систему с MS DOS: там же никакой защиты нет, приложение может делать всё, что хочет -- вот и полная гибкость (и полная ненадёжность).

Цитата:
SII писал(а):
При возникновении прерывания в процессорах архитектуры IA-32 всегда выполняется межсегментный переход -- хотите Вы этого или нет

А если сегмент один и тот же ? Вы уверены, что внутри процессора всё сделано "по тупому" ?

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 июл 2014, 14:00 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1384
doc1456 писал(а):
Спор ваш бесполезен теория без практике тоже самое что и кастер без огня , я понимаю почему насчет экзоядра они так не гативно отзывают видь нету еще не одного на писаного , но вы можеть стать первым и доказать обратное

По русскому -- минус 2 балла, ибо такое количество ошибок в столь коротком посте даже на кол не тянет.

Что же по сути сказанного, то она тоже неверна. Теория без практики отнюдь не всегда бесполезна. Например, понять, что экзоядерная система по определению совершенно ненадёжна, можно чисто теоретически, без попыток практической реализации: достаточно хоть немного подумать над сутью экзоядра. И такое понимание способно сберечь массу времени и сил на более полезные занятия, чем попытку реализовать экзоядерную систему, которая в конечном итоге провалится -- как раз из принципиально порочной концепции экзоядра.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 июл 2014, 15:09 

Зарегистрирован: 18 июл 2014, 09:57
Сообщения: 20
что есть то есть.Прошу простить за ощибки .Я не сторонник экзоядра , я за гибридные ядра .Все это концепций прошлого века . Странавато конечно что экзоядро не кто нереализовал за столько это и наталкивать на не жизнеспособность концепций . Безусловно при имущества и не достатки очевидны и в теорий , но на практике всё так сказать с другого ракурса .Теория это просто слова и мысли ,а практика это уже подтверждение этих слов


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 июл 2014, 15:36 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 960
Откуда: Дагоба
Demonikss писал(а):
Все начитались умных книжек, в которых описывается одна (максимум две) широкоизвестные ОС...
Сидеть и закидывать форум заумными терминами - оно конечно хорошо.

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

Demonikss писал(а):
начать думать с нуля, придумать свои структуры для обработки необходимых процедур и данных конечно кажется трудным. Или просто не хочется...
что конкретно нового придумано. Или не нового, но сделанного по другому.

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

doc1456 писал(а):
Спор ваш бесполезен теория без практике тоже самое что и кастер без огня , я понимаю почему насчет экзоядра они так не гативно отзывают видь нету еще не одного на писаного , но вы можеть стать первым и доказать обратное

Вод первый изабретатель вилосепеда уже напод ходе и гатоф дакозать что можна ездит на адном калесе. :D

Demonikss писал(а):
...чтобы не спорить с человеком который в своей жизни ничего не создал реального.

Послушайте, с вами спорят лишь из уважения к вам и в надежде, что вы образумитесь. Но если вы настаиваете, мы не будем с вами спорить. :D

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 июл 2014, 17:22 

Зарегистрирован: 18 июл 2014, 09:57
Сообщения: 20
Я не отрицаю необходимость теорий но всё же без практики это всего лишь слова , а еще он напишит экзоядро даже если оно будет друшлаком .Зато он получает опыт , и уже дальше сможет написать жизнеспособное ядро если конечно сделает вывод над ошибками , + проверка ео интузиазма на сколлко его хватит. Сколько загрузчиков для ос? а сколько потом использывались по на значению?сколько ядер каторые кроме вывода текста не что не могу?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 июл 2014, 18:29 

Зарегистрирован: 10 апр 2014, 17:12
Сообщения: 68
раз спор продолжает то и я скажу пару мыслей о экзоядрах. ну вот ведает ядро только менеджером памяти и процессами. окау. предположим загрузили мы "драйвер" клавиатуры, мыши, дисков и прочую ересь. допустим упал драйвер клавы - что Вы будете делать? по сути упала вся операционка. точно также любой другой необходимый драйвер рухнул - считай упала вся система (если дисковый, то кранты всем файлам несохраненным). поэтому сия организация тоже ненадежная. ИМХО, мысли даже не делитанта, а новичка в сим деле.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 июл 2014, 22:26 
Аватара пользователя

Зарегистрирован: 28 май 2012, 23:44
Сообщения: 237
Откуда: Санкт-Петербург
doc1456 писал(а):
экзоядро даже если оно будет друшлаком

ТруЪ-шлаком. :lol:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июл 2014, 07:04 

Зарегистрирован: 18 июл 2014, 09:57
Сообщения: 20
Rammstein писал(а):
ну вот ведает ядро только менеджером памяти и процессами. окау. предположим загрузили мы "драйвер" клавиатуры, мыши, дисков и прочую ересь. допустим упал драйвер клавы - что Вы будете делать?

Механизм восстановления упавшего драивера или сервеса , а так же выеснения причин падения


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июл 2014, 07:52 

Зарегистрирован: 15 апр 2014, 14:13
Сообщения: 127
SII писал(а):
Бред и перевирание сказанного мною.

Ваш тон - отличительный признак "рассейского" программиста.

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

Вы слишком торопитесь делать безаппеляционные выводы.

SII писал(а):
Если, например, приложение работает с файлами на диске, оно использует библиотеку, содержащую дисковые функции. Однако эти функции должны иметь доступ к регистрам контроллера дисков. В экзоядерной системе придётся эти самые регистры отобразить на пространство задачи, чтобы библиотека, входящая в это пространство, имела к ним доступ. Но тогда к ним будет иметь доступ и сама задача -- а значит, сможет сделать с контроллером дисков всё, что угодно.

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

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

SII писал(а):
Цитата:
SII писал(а):
При возникновении прерывания в процессорах архитектуры IA-32 всегда выполняется межсегментный переход -- хотите Вы этого или нет

А если сегмент один и тот же ? Вы уверены, что внутри процессора всё сделано "по тупому" ?

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

То есть вы наконец согласились, что ваше "При возникновении прерывания в процессорах архитектуры IA-32 всегда выполняется межсегментный переход" - не всегда правда ?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июл 2014, 07:54 

Зарегистрирован: 15 апр 2014, 14:13
Сообщения: 127
Yoda писал(а):
Как вы думаете, зачем пишут умные книжки и придумывают "заумные термины"? Да чтобы меньше было горе-изобретателей вечных двигателей, обивающих пороги институтов, доказывающих, что "вся теория г-но, а моя идея супер-пупер и нечего мне тут объяснять свой заумный термин "закон сохранения энергии"."

Вы считаете, что один раз написанное в "умной книжке" навсегда определяет все возможные правила ?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 64 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB