OSDev

для всех
Текущее время: 28 мар 2024, 16:19

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




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Ответы на вопросы
СообщениеДобавлено: 28 май 2012, 10:17 
Аватара пользователя

Зарегистрирован: 06 мар 2012, 20:05
Сообщения: 130
Откуда: Санкт-Петербург
Этакие вопросы-ответы. Всё просто - вы спрашиваете, я отвечаю :)

_________________
We are back with a hard even better than before [D-Block & S-Te-Fan – Evolutionz {Ran-D remix}]


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

Зарегистрирован: 06 мар 2012, 20:05
Сообщения: 130
Откуда: Санкт-Петербург
Для разминки - вот такая подборка вопросов:
Цитата:
Ряд вопросов, которые важны для определения проекта:
1) Будет ли открытым проект(OpenSource etc)?
2) Насколько открытым будет проект для мировой общественности(Proprietary, GPL, BSD, EULA, etc)?
3) Каково будет хранилище исходников, контента, утилит(SourceForge, Private SVN Server, Git, Mercurial, FTP, etc)?
4) Каков примерный уровень ОС(DOS 5.0, Unix, Windows 3.1, Debian 1.1, Windows XP, Windows 7)?
5) Каковы пользовательские, системные требования и функционал для "первой ступеньки" или для первого релиза?
6) Какая полная архитектура системы(2 уровня: ядро, пользователь, 4 уровня: ядро, драйверы, службы, пользователь; на какие блоки будет разбиваться и пр.)?
7) Какая "родная" архитектура(ia-32, ARM, etc)?
8) Тип ядра(microkernel, exokernel, hybrid, monolithic, etc)?
9) Насколько открыты интерфейсы доступа к железу(свободный доступ к оборудование с любого уровня, частичная закрытость, полная закрытость, вплоть до требования цифровой подписи от производителя)?
10) Какая "родная"(основная, тестируемая, при начале проекта) файловая система?
11) Какой "родной" язык программирования системы(Machine code, ASM, C, C++, D, C--, C#, Java, etc)?
12) Насколько система будет кроссплатформенной(поддерживается все различное железо и девайсы, определенный сегмент, заточена под одну архитектуру и т.д.)?
13) Каковы будут менеджеры ресурсов; менеджер памяти, процессов, потоков(вытесняемые, равноприоритетные и др.)?
14) Тип конфигурации системы(отдельные файлы, единый реестр)?
15) Предполагаемый срок сдачи проекта(месяц, два месяца, полгода, год, два и т.д.)?
16) Каков используется инструментарий: отладчик, компилятор, сборщик(FASM, MinGW, Microsoft Visual C++, Clang/LLVM, GCC, Digital Mars D, .NET, etc)?
17) Как в проекте будут распределятся обязанности?
18) Кто флагман(руководитель) проекта?
19) Какая система отчетов будет использоваться(Bugzilla, JIRA, etc)?
20) Насколько подробная будет документация и в каком объеме?


1. Проект будет полностью открыт.
2. GNU GPL.
3. Сейчас выбираю между GitHub и SourceForge.
4. За базу взят ChromeOS. О подробном функционале - в прикреплённой теме.
5. Пользовательские требования минимальные. Системные - в общем то, тоже (поддержка сети, видео, 256Мб памяти - ниже есть подозрение, что WebKit не заведётся).
6. Уровень ядра, уровень драйверов, уровень пользователя. Служб как таковых пока не планируется.
7. Пока что пишу под x86. Планируется портирование на amd64/ARM после первого релиза.
8. Не знаю точно этого всего. Ядро будет грузить все драйвера из initrd (multiboot), так же будет поддержка загрузки драйвера "на лету" из сети/с диска.
9. Драйвера, написанные мной, будут под GNU GPL. Портированные с других проектов будут учитывать их лицензию. Сторонние - по желанию разработчика.
10. fat32/ext2 будут поддерживаться нативно. NTFS и ext3/ext4 будут поддерживаться драйверами, включенными в поставку.
11. Ядро - FASM. Драйвера - частично ASM, частично GCC. WebKit будет линковаться из бинарника.
12. До первого релиза будет полная поддержка архитектуры x86, HDA, VESA и популярных сетевых карт (Realtek, Atheros).
13. Затрудняюсь ответить.
14. Для запуска конфигурация не требуется. Профили пользователя и драйвера будут искаться в той же папке, откуда было запущено ядро (при наличии поддержки ФС).
15. Затрудняюсь ответить.
16. FASM, vmWare, QEMU, IDA (для отладки в vmWare). Загрузчик - любой multiboot-совместимый (grub, lilo, syslinux/isolinux)
17. Пока работаю я один. Пока не будет драйверной поддержки - так оно и будет. В последствии руководить проектом буду я.
18. см. 17.
19. Пока с выбором багтрекера не определился.
20. Вся используемая документация будет упомянута в комментариях к коду, сама система будет документироваться по мере разработки. Так же будет справочная система внутри самой ОС.

_________________
We are back with a hard even better than before [D-Block & S-Te-Fan – Evolutionz {Ran-D remix}]


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

Зарегистрирован: 22 май 2007, 15:29
Сообщения: 283
DJ PhoeniX писал(а):
11. Ядро - FASM. Драйвера - частично ASM, частично GCC. WebKit будет линковаться из бинарника.


"Из бинарника" - это как? И почему ядро на асме, а не на ЯВУ?


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

Зарегистрирован: 06 мар 2012, 20:05
Сообщения: 130
Откуда: Санкт-Петербург
Много, много обсуждения. :)

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

WebKit будет компилироваться собственным скриптом компиляции, и просто вместо создания exe-файла линковаться к ядру.

Слишком много. Оффтопик отделен сюда.

_________________
We are back with a hard even better than before [D-Block & S-Te-Fan – Evolutionz {Ran-D remix}]


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

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


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

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


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

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