Ответы пользователя по тегу Операционные системы
  • Реверс-инжиниринг ОС?

    svd71
    @svd71
    Декомпиляция ничем не отличается.
    восстанавливать исходники - дело неблагодарное и ненужное. Во первых компилятор генерирует инструкции ЯВУ в ассемблерные и есть возможность найти совпадения нужных инструкций. Но пока вы будете искать эти совпадения, вам уже не нужно будет декодировать в ЯВУ - вы прекрасно начнете разбираться во всем и на ассемблере.
    Во вторых какая цель будет преследоваться? Перепродажа? Это не законно и наказуемо. Да и без пояснительных комментариев это мало представляет интереса.
    Втретьих декодировать исходники желательно до выхода новой версии операционки.
    Ответ написан
  • Как написать операционную систему с нуля?

    svd71
    @svd71
    Согласен с большинством коллег - писанина операционки для коммерческого применения - весьма хлопотное занятие и в денежнов эквиваленте, и в трудоресурсах, и по времени , и даже в маркетинге.
    Учитывая все это, такие системы обычно пишут не совсем с нуля. Пример: QNX. За основу взято юниксовое ядро и переписано под систему реального времени. Теперь они активно продают свою систему для управленя атомными реакторами.

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

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

    Так же можно изучить все грабли, сделанные другими: например ту же коллибри, или поискать исходники какого-нибудь ДОСа (Микрософт своей досни опубликовали вроде бы, TR-DOS можно найти и т.п.) или поизучать предтече Линукса - minix (ведь Торвальдс начал именно с нее). А еще лучше присоединиться к какому-нибудь существующему проекту (Minix, Linux, Kollibry, ReactOS) и начать создание чего-либо под них.
    Ответ написан
    1 комментарий