Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для Windows/Dos > Ищу программистов-добровольцев для написания ОС


Автор: chyapay 7.1.2007, 18:16
Вот уже шесть лет программирую и усовершенствуюсь в знании работы операционных систем. и пишу разные версии оболочек под ДОС. но на данном этапе я пришел к выводу, что нужно все-таки писать ОС, потому что в мире оболочек стало как-то неинтересно. 
И так, собрал у себя в городе 5 программистов-добровольцев, и решил еще в интернете поискать. Может откликнется кто-нибуть. Цель написания ОС не деньги (какие блин деньги, денег нету - билл Гейтс забрал, да к тому же кто будет работать не этой ОС? ну это реторический вопрос) Так что заранее пишу, что целью моего ОС-писания являеться обретение опыта написания различного рода программ для понимания архитектуры и работы операционной системы и железа. 
В этом посте я приглашаю всех желающих добровольцев и фри-софтварщиков поделиться со мною опытом в ентой сфере, и если кто хочет,присоединиться к моему проекту. 

Мой номер ICQ: 269294840

почта:
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]



Автор: Sardar 8.1.2007, 12:36
А где страничка со стандартным "Пишем ось на ассемблере ибо это круто!!!" + описалово монолитного ядра без какой либо цели  smile 

Шучу, но если серьёзно, то где/как/зачем эта ось? Может лучше подключиться к http://www.minix3.org/? Добавить мигрирование процессов и тредов и сделать из него кластерную ось (исходники амёбы, более ранней кластерной оси Таненбаума по моему тоже доступны).

А так смахивает это на ещё один мёртворождённый проект собрать свою ось  smile 

Автор: chyapay 17.1.2007, 15:46
возможно, но я же сказал: потренироваться, для себя и своего опыта, знания увеличить, а возможно что-то и выидет? 

Автор: Dude03 17.1.2007, 16:01
Цитата(chyapay @  17.1.2007,  15:46 Найти цитируемый пост)
возможно, но я же сказал: потренироваться, для себя и своего опыта, знания увеличить, а возможно что-то и выидет?  

"Ну, это нормально"© Мазуров

Только учти, что написание оси целой командной неизбежно ведет к спорам и разногласиям, поэтому долго проект не протянет. Написание ос - это не только программирование железа. Кодинг железа - малая часть. 
Учти, что надо выбирать алгоритмы для управления основными ресурсами компьютера, которые порой не так однозначны. Поэтому мое мнение: с такой командой и работой без материальных стимулов скоро люди начнут отваливаться.  smile 

Автор: MAKCim 17.1.2007, 16:58
chyapay, 
если не секрет, что у вас уже написано?

Автор: chyapay 18.1.2007, 19:59
2Dude03: спасибо за советы. думаю что сколько будет жить желание развивать знания/опыт и увлечение собственными результатами, столько и протянет мой проект. И если глобально, я же собственной персоной  все равно в проекте останусь .... 

2MAKCim: немного базы графического приммитива (на ВЕСА). немного функций рисования и их оптимизаций под различные ситуации, немного графических библиотек (в том числе собственная пока еще недописанная оконная библиотека, к стати, неплохо окошечко бегает по экрану в тест-программе; комбобоксы, эдитбары и прочее есть уже). драйвер жестких дисков IDE. драйвер файловой системы FAT32(пока еще немного недописанный но основный ф-и есть). концепция построения ОС. скины для оболочки-десктопа точная копия Виндоус ХР. Логотип. собственные шрифты (но это временное явление, пока не разучил еще формата ТТФ). Еще что-то, но не помню что...    - Но самое главное - это все до сих времен я один написал ! Так что прогресс есть. Щас сделали бутстрап, делаем собственно сам кернел, разбираем JPEG и флопик. 

Автор: Sardar 18.1.2007, 20:22
Да, это всё таки традиция, писать ось начиная с графики  smile 
Технически что в ядре есть? Треды как работают, как с реальной многозадачностью на многопроцессорных? Как с памятью работаем и есть ли возможность без геморроя встать на NUMA машину? Как железки встали и как вообще дрова писать (линкуються с ядром, в процессах ядра или вообще в юзер-спейсе? фреймворки какие?).  А для графики лучше взять линуховый фреймбуффер, поверх GTK или вообще иксы и не страдать фигнёй.

Цитата(chyapay @  18.1.2007,  18:59 Найти цитируемый пост)
разбираем JPEG

А зачем оно? Граф либ для всего и вся есть в линухе/бсде, которое в идеале на libc завязано. Т.е. перенести glibc (которая много что в систему привнесёт, ось станет POSIX совместимой, хотя бы частично) и куча софта встанет само по себе.

Автор: MAKCim 18.1.2007, 20:36
Цитата

Да, это всё таки традиция, писать ось начиная с графики 

да уж  smile 
знаем мы примеры ...
Цитата

комбобоксы, эдитбары и прочее есть уже

на чем написаны?
Цитата

делаем собственно сам кернел

собственно с этого надо было начинать
вообще основа любой ОС - работа с памятью (модель памяти (сегментированная, странично-сегментированная, плоско-страничная) + аппаратное представление (дескрипторы, сегменты и пр.) и выделение памяти), так что лучше очень тщательно эту область проработать, все остальное на нее опирается

Автор: chyapay 18.1.2007, 22:57
Цитата(Sardar @  18.1.2007,  20:22 Найти цитируемый пост)
Да, это всё таки традиция, писать ось начиная с графики   Технически что в ядре есть? Треды как работают, как с реальной многозадачностью на многопроцессорных? Как с памятью работаем и есть ли возможность без геморроя встать на NUMA машину? Как железки встали и как вообще дрова писать (линкуються с ядром, в процессах ядра или вообще в юзер-спейсе? фреймворки какие?).  А для графики лучше взять линуховый фреймбуффер, поверх GTK или вообще иксы и не страдать фигнёй.Цитата(chyapay @  18.1.2007,  18:59 )разбираем JPEGА зачем оно? Граф либ для всего и вся есть в линухе/бсде, которое в идеале на libc завязано. Т.е. перенести glibc (которая много что в систему привнесёт, ось станет POSIX совместимой, хотя бы частично) и куча софта встанет само по себе. 
--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik


Ну ты меня не понял . тут проблемка в том что ты как я вижу подумал что я хочу чтоб моя ОС где-то работала. Это не так. Тебе может показаться странным, но я не хочу ее писать для работы. Это просто ради увлечения и опыта. Ты скажешь, наверное, нех.. делать. Да, нех... А чего? Теперь по-поводу всяких-там Х...либов и иной ..ни.  Я же написал "тренироваться". Тренироваться не по умельству скатать тупо чьи-то х-зна чьи сурсы и приклеить пусть работают, а разобраться, с ноля. Ты наверное скажешь что я поехал крышей. Возможно, в некотором плане да. Если не хочешь поехать и ты - нам с тобой не по пути. и хватит мне тут упрёков не в тему!!

Добавлено @ 23:08 
Цитата(Sardar @  18.1.2007,  20:22 Найти цитируемый пост)
Да, это всё таки традиция, писать ось начиная с графики   Технически что в ядре есть? Треды как работают, как с реальной многозадачностью на многопроцессорных? Как с памятью работаем и есть ли возможность без геморроя встать на NUMA машину? Как железки встали и как вообще дрова писать (линкуються с ядром, в процессах ядра или вообще в юзер-спейсе? фреймворки какие?).  А для графики лучше взять линуховый фреймбуффер, поверх GTK или вообще иксы и не страдать фигнёй.Цитата(chyapay @  18.1.2007,  18:59 )разбираем JPEGА зачем оно? Граф либ для всего и вся есть в линухе/бсде, которое в идеале на libc завязано. Т.е. перенести glibc (которая много что в систему привнесёт, ось станет POSIX совместимой, хотя бы частично) и куча софта встанет само по себе.

хватит замечаний! я тут не для профиков а для новичков написал!!
Какие нафиг многопроцессорные?? Я написал "для накопления знаний", "для обучения" а не для продажи на рынках многопроцессорных систем. Типичная ошибка профиков - читает начало моего поста до слова "ОС" и уже делает поспешные выводы. Ты прочитал бы хотя бы весь мой пост, а то тут свои предложения покорить Марс на бумажном самолетике выписываешь... Мне смешно прямо... на NUMA машину - я щас упаду!

Автор: chyapay 18.1.2007, 23:12
Цитата(MAKCim @  18.1.2007,  20:36 Найти цитируемый пост)
на чем написаны?


На асмо-паскале. С нуля, вместе с графой. 

Автор: nerezus 19.1.2007, 09:54
Цитата

Да, это всё таки традиция, писать ось начиная с графики 
 Ну Windows с этого и начиналась ;)

Автор: MAKCim 19.1.2007, 10:18
Цитата

и хватит мне тут упрёков не в тему!!

ну про JPEG я согласен с Sardar, это вообще никакого прямого отношения к ОС не имеет 
Цитата

А зачем оно? Граф либ для всего и вся есть в линухе/бсде, которое в идеале на libc завязано. Т.е. перенести glibc (которая много что в систему привнесёт, ось станет POSIX совместимой, хотя бы частично) и куча софта встанет само по себе.

chyapay
libc - это необходимая вещь для работы ПО в *NIX
т. е я хочу сказать, что ты можешь писать ОС (точнее ядро) с нуля  smile , но делать ее POSIX совместимой, тогда вопрос о програмном окружении отпадет сам собой (чебе же надо будет ее тестировать, или как ты представляешь себе работу на голом ядре?)
Еще раз: обрати особое внимание на работу с памятью
А вообще - удачи  smile 

Автор: chyapay 19.1.2007, 18:29
спасибо за пожелание, MAKCim. Но ты слишьком в высокие материи полез. Не считай меня большим профессором этого дела. Я еще только начинающий, и поэтому такое слово как "ПОСИКС-СОВМЕСТИМОСТЬ" для меня звучит как "ПСИХОНЕВРОТИЧНЫЕ ПАТОГЕННЫЕ ТРАНСЦЕНДЕНТНЫЕ ГИПЕРФРУСТРАЦИИ", ну ты кароче понял, я думаю, о чем речь. Я пока пишу плоскую ОС. А тестировать ядро буду ШЕЛом, собственно написанным. Было бы ядро- а шел написать - как 2 пальца. к стати, взаимодействие с ядром будет через прерывание 21Н как в старом добром досе.  Ядро будет содержать базу (обработчик высшеупомянутого прерывания) и прилагаемые (бинарники модулей, расположенные по определенным адресам в памяти, динамически подгружаемые с файловой системы ФАТ32, на которой будет стоять ОС). Ядро будет написанно на ФАСМЕ и занимать около 60 кбайт, вместе с билт-ин драйвером ИДЕ и ФАТ32, с помощью которого и будут подгружаться в память дополнительные модули и сама оболочка, которой передастся управление после лог-ина. 

Автор: MAKCim 19.1.2007, 20:58
chyapay, 
ну ясно
будут проблемы, обращайся  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)