Как стать автором
Обновить

Комментарии 14

Радует, что написание ОС на хабре продвинулось дальше двух постов. Спасибо.
Я положу две ссылки:

www.kolibrios.org/ — операционная система на ассемблере.

l4ka.org/l4ka/l4-x2-r7.pdf — очень вкусный документ.

Фишка в том, чтобы правильно приложить свои силы. В случае операционной системы, важен не язык, на котором она написана, важен не режим процессора (современные операционные системы портабельны), важны две вещи:
1. система должна быть хорошо и правильно спроектирована;
2. система должна поддерживать какой-либо стандарт.

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

Что касается стандарта, то среди разработчиков ОС большая конкуренция и «подсадить» на свою систему какое-либо значительное количество пользователей, а тем более разработчиков — нереально. Ну разве что у кого папа, дядя или брат — министр промышленности. Использование стандарта позволяет использовать уже существующее программное обеспечение и даёт хоть какой-то шанс найти последователей и соратников.

Так вот, вторая ссылка — это спецификация системных вызовов микроядра L4. Существуют как минимум две реализации этой спецификации — Pistachio и OKL4. К чему я клоню? Реальная тема для тех, кто идеально знает и любит ассемблер, ориентируется в защищённом режиме х86 и желает написать операционную систему — напишите свою (самую оптимальную, быструю, красивую, минимальную) реализацию микроядра по спецификации, которую я привёл выше.
Да, проектирование — важная часть. Просто поймут ли меня, если сразу, ничего не оговаривая, начнём писать? В принципе ознакомление с PM можно прекратить, и понемногу рассказывать в следующих постах. И спасибо за ссылку на стандарт ядра.
НЛО прилетело и опубликовало эту надпись здесь
Есть картинка.
НЛО прилетело и опубликовало эту надпись здесь
опять дни чтения учебников по икс-восем-шестому процессору на хабре?
Нет. Краткий экскурс перед началом работы.
От почему для арма никто не делает тут? интереснее ж, х86 давно вдоль и поперек, а на арме экспы мало еще в народе :)
О, Vilko не только на васме!
Под ARM тож было бы интересно почитать. У меня лично пока даже возможности нет таковым заниматься…
И, скорее всего, заниматься не буду. Что-то неуютно я себя чувствую, что в NT'эшном ядре не разбирался. Скоро (как времени побольше чуть будет) за него примусь… а ARM может кто-нибудь другой подхватит… не думаю что в сети мало материала по данной теме.
Для ленивых на ARM'е есть Linux, который просто процветает. Кто посерьёзнее, те используют коммерческие realtime системы.

Не побоюсь прослыть занудой, но у меня «завалялась» раритетная дока:

«L4 eXperimental Kernel Reference Manual Version X.2
System Architecture Group Dept. of Computer Science
Universit¨at Karlsruhe
(L4Ka Team)
l4spec@l4ka.org
Document Revision 5
June 4, 2004»

У этой документации вот такая лицензия:

Copyright c
2001–2004 by System Architecture Group, Department of Computer Science, Universit¨at Karlsruhe.
THIS SPECIFICATION IS PROVIDED “AS IS” WITHOUT ANY WARRANTIES, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT,
FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OF ANY PROPOSAL, SPECIFICATION
OR SAMPLE.
Permission to copy and distribute verbatim copies of this specification in any medium for any purpose without fee or royalty is hereby granted. No right to create modifications or derivates is granted by this license. The L4Ka Team may make changes to this specification at any time, without notice. The latest
revision of this document is available at l4ka.org/.

Осталось пригласить юристов и лингвистов, чтобы истолковать derivates — относятся ли они только к самой документации или запрещают писать реализацию. Изучить прецеденты и…

narod.ru/disk/12675982001/l4-x2.pdf.html

^^ по этой ссылке находится старая спецификация, которая в совместима с последующими ревизиями, но из неё ещё не убрана поддержка «ARM Interface».

Вот и думай, то ли платить за NICTA::L4-embedded, который который имеет десяток надстроек над красивым протоколом L4-x2, или сесть за учебники и выучить внутренности архитектуры ARM. Я то уже стар для таких подвигов — мне хватает С/С++ и воспоминаний о x86, но может авантюристы-любители ещё не перевелись? Разумеется, всё это имеет смысл, если понятие derivates из вышеприведённой лицензии не относится к реализации.

Таки юристы топик не читаю. А можно было бы интересно обновить обсуждение: «No right to create modifications or derivates is granted by this license. » Hey pal! What is «derivates»?
Что-то мне всё это напомнило xv6 http://pdos.csail.mit.edu/6.828/xv6/ — MIT'шную разработку, для того чтобы обучать студентов основам ОС-строения.
Там, кстати, весьма доставляющие PDF'ки.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории