OSDev

для всех
Текущее время: 25 апр 2024, 16:39

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




Начать новую тему Ответить на тему  [ Сообщений: 70 ]  На страницу Пред.  1 ... 3, 4, 5, 6, 7  След.
Автор Сообщение
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 14:46 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
Можно ввести поддержку приложений для другой оси на уровне ABI/API, и если такая система станет хоть сколько-нибудь популярной, можно начинать писать приложения с использованием родного ABI/API. Для завоевания популярности нужно наличие хоть каких-нибудь фишек, выгодно отличающих ваше творение от других ОС (особенно от той, из которой вы портируете/берете приложения). Узко специализированную нишу найти не трудно. Если у вас есть хоть одно приложение, которого нет ни под одну другую ось (которое чем-то выгодно отличается от аналогичных приложений под другие оси), то с этим приложением можно продвигать и систему в целом.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 15:02 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
phantom-84 писал(а):
Разработчики самопальных осей пытаются объять необъятное, когда начинают писать под свою систему офисные приложения, браузеры, вьюверы и т.п. Нафига мне такая самопальная ось с такими же самопальными приложениями, когда я могу взять значительно более качественный аналог в виде какой-либо популярной системы?


Причём начинают их писать, не имея нормально работающего ядра и т.п. :) Моё ИМХО здесь простое: 1) делается нормальное ядро и некий минимум драйверов без особой оглядки на API популярных систем (но с достаточно функциональным родным API, чтобы сверху на него наложить другие); 2) делается прослойка для эмуляции некоторого популярного API (POSIX, Linux, Win32 -- не важно в данном случае), что даёт возможность использовать готовые программы; 3) по мере возможности и необходимости пишется прикладное ПО под родной API.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 15:22 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
SII писал(а):
Причём начинают их писать, не имея нормально работающего ядра и т.п. :)
Во-во. А потом начинают ядро перекраивать под приложения и просто его "допиливать". Что мешало написать простые тестовые приложения для тестирования ядра, не понятно. Разве что пустить пыль в глаза наивным юзерам, что есть, дескать, браузер и т.п. (про качество такого ПО обычно скромно умалчивают).

Цитата:
Моё ИМХО здесь простое: 1) делается нормальное ядро и некий минимум драйверов без особой оглядки на API популярных систем (но с достаточно функциональным родным API, чтобы сверху на него наложить другие); 2) делается прослойка для эмуляции некоторого популярного API (POSIX, Linux, Win32 -- не важно в данном случае), что даёт возможность использовать готовые программы; 3) по мере возможности и необходимости пишется прикладное ПО под родной API.
Об этом я и говорил.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 15:48 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
Абсолютно согласен!
Однако, есть грустные нюансы:
SII писал(а):
2) делается прослойка для эмуляции некоторого популярного API (POSIX, Linux, Win32 -- не важно в данном случае), что даёт возможность использовать готовые программы;

АПИ имеющихся систем может иметь такую кривизну, которую не сэмулируешь (по крайней мере, разумными средствами), а тащить это гуано в свой АПИ не хочется. Печально известный пример - системный вызов fork семейства Unix.

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

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 15:52 

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


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 15:58 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Почему самопальное значит хуже имеющегося, почему все алгоритмы исследованны а ни кто их не знает, почему ни сделать хотябы не писание оси а просто сборка, анализ, обсуждение на нормальном уровне(даже с государственной поддержкоя, чего нету вообще). Видимо по тому, что все боготворят Винду и готовые загрузчики, а я хочу сделать лучше и вижу уйму недочётов и реальных лаж, а иногда и конкретно не правильно в готовом.
Причём кое где идёт политика от старых систем, которые в современных ПК не применимы, или выгледят тупо(в винде этого много)


Последний раз редактировалось Станислав 15 май 2012, 16:17, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 16:12 
Аватара пользователя

Зарегистрирован: 14 май 2012, 22:17
Сообщения: 101
Yoda писал(а):
Абсолютно согласен!
Однако, есть грустные нюансы:
АПИ имеющихся систем может иметь такую кривизну, которую не сэмулируешь (по крайней мере, разумными средствами), а тащить это гуано в свой АПИ не хочется. Печально известный пример - системный вызов fork семейства Unix.


Что в fork такого особенного? Обычное создание процесса с дополнительными условиями и, соответственно, на основе этого вызова и может быть съэмулирован. Если в VM есть COW, создание процесса-копии выполняется достаточно быстро.

Гораздо хуже с драйверми. Они как правило очень много от ядра хотят в плане знаний о его внутреннем устройстве. Насколько можно использовать их? Я только два проекта находил по использованию драйверов линукс - в L4 и очень старый - для Mach (но там ещё от линукс 1.Х). Оба какие-то вялые - особых успехов не видно...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 17:54 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
D-S писал(а):
Что в fork такого особенного? Обычное создание процесса с дополнительными условиями и, соответственно, на основе этого вызова и может быть съэмулирован.

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

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

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 17:58 

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 15 май 2012, 18:00 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
D-S, насчет fork'а согласен - он больше тяжеловесный, чем труднореализуемый. Yoda, если делать прослойку на уровне ядра, а не на уровне прикладных библиотек, то реализовать fork не так уж и сложно. Он меня раздражает в принципе, а не из-за того, что его трудно реализовать.

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


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

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


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

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


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

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