Demonikss писал(а):
Ну вот насчет необходимости переключений я бы поспорил. Если реализовать механизм обработки клавиатуры в виде библиотеки, которая будет работать в адресном пространстве задачи которой это нужно, наверное никуда и переключаться не надо.
Вот прежде чем писать подобный бред, изучили бы, как работает процессор, как ОС обрабатывают прерывания, на что тратится время и т.п. Даю подсказку: в Windows прерывания приводят к переключению адресного пространства лишь в случае, когда без этого никак не обойтись, а не по каждому прерыванию. Если прерывание можно обработать в текущем адресном пространстве (в котором всегда имеется ядро системы со всеми внутриядерными драйверами -- в отличие от микроядерной ОС, где всегда было бы лишь микроядро), оно и будет в нём обработано, и никаких лишних телодвижений система делать не станет.
Цитата:
Все начитались умных книжек, в которых описывается одна (максимум две) широкоизвестные ОС, и начать думать с нуля, придумать свои структуры для обработки необходимых процедур и данных конечно кажется трудным. Или просто не хочется
Не знаю, как Вы, а я работал системным программистом (а не читал) с RSX-11, OS/360, VM/370 и немного VAX/VMS -- ну, не считая Windows NT.
Цитата:
И концепции MS and Linux, просто восхищают. Особенно политика увеличения емкости памяти под все их художества... Растет объем кода, а не его функциональность
Функциональность тоже растёт; правда, куда больше всяких свистоперделок появляется, чем чего-то полезного. И, кстати говоря, концепции и рост объёма кода -- вещи вообще никак не связанные. Грубо говоря, даже прекрасная концепция, реализованная плохо, будет работать плохо, и наоборот (по крайней мере, с точки зрения пользователя, который не видит, что делается "под капотом").
Цитата:
Портируемость вещь хорошая, только вот оно надо рядовому пользователю? У кого дома под столом стоят АРМ, ну или другие какие платформы?
У меня, а что? И мэйнфрейм стоял бы, если б я был миллионером. Да и пишу систему как раз под АРМы (и даже использую в коммерческом продукте).
Цитата:
Еще раз повторюсь, писать еще одну похожую на другие операционку - в чем смысл? А если считается что непохожа, так приведите что вы сами в ней сделали, какая концепция именно вами разработана, а не вычитана у других. Или даже пусть вычитана, но реализована каким-нибудь нестандартным подходом. Тогда еще вижу смысл диалога
А я вот не вижу смысла писать что-то новое только ради того, чтоб оно было новое. Я предпочитаю реализовать старое, но эффективно и надёжно (и без свистоперделок) -- и без всяких максималистских концепций типа "всё -- файл".
Цитата:
И прежде чем меня обвинять в том что я не разбираюсь, хотелось бы узнать ответы на вышеприведенные вопросы, чтобы не спорить с человеком который в своей жизни ничего не создал реального.
Именно что не разбираетесь. В частности, не знаете и не понимаете, как реально происходит обработка прерываний. Нет, возможно, Вы знаете, что там сохраняется в стеке, куда происходит переход и т.д. -- но это технические подробности, которые могут меняться от платформы к платформе (у "настоящих" АРМов, например, при прерывании в стеке ничего не сохраняется, а у классических мэйнфреймов стека вообще нет). Вы не понимаете того, как всё работает в комплексе -- т.е. что надо сделать для того, чтобы обеспечить, скажем, ввод строки с клавиатуры в буфер задачи пользователя, начиная с выдачи запроса на этот самый ввод со стороны задачи и заканчивая уведомлением задачи о том, что ввод закончен. Разберитесь с этим для многозадачной среды (где каждая задача может выдать подобный запрос), всё распишите -- тогда и поймёте, почему выше Вы говорили всякий бред.