OSDev

для всех
Текущее время: 28 апр 2024, 00:40

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




Начать новую тему Ответить на тему  [ Сообщений: 70 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
Автор Сообщение
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 07 мар 2012, 21:12 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
Станислав писал(а):
Новая ось будет интересна совместной работой, при объединении ваших и моих знаний ждать того, что она перегонит твою ось придётся не долго. Моя ось тоже уже давно не на старте и там много чего, но я опять повторяю, что все говорят, что одному ось не написать и скучно.
Когда я говорил "во-первых", я имел в виду, что не написать полноценную десктопную ось, конкурирующую с существующими "грандами". Я прежде всего занимаюсь разработкой ядра (мне интересно именно это), а драйверы и приложения пишу в основном для тестирования и демонстрации работы ядерных механизмов. В таком виде ось написать одному человеку вполне реально. Если мне понадобится продвигать и популяризировать мою ось, создавать большое количество дополнительного системного и прикладного ПО, то я буду привлекать для этого других людей. Все зависит от того, какую цель ты преследуешь. Мне проще заниматься разработкой ядра самостоятельно. Тебе, возможно, для разработки GUI и GUI-приложений будет проще присоединиться к какому-либо существующему проекту, где GUI нет вообще, но есть желание его иметь, или есть, но плохой. У меня не то что GUI, а даже графического режима нет. Короче наши основные интересы лежат в совершенно разных плоскостях. Может, тебе и удастся найти кого-нибудь со схожими с твоими интересами.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 07 мар 2012, 22:04 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Станислав писал(а):
Это хобби, но при разработке оси думаеш в первую очередь о том чем она будет лучше сушествуюших, о пользователях и о том где она может быть применима и востребована.

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

Но я понимаю, что из нулевой ОС хочется сделать "демку". Можно реализовать в упрощённом виде все архитектурные компоненты, но это только создаст видимость крутизны, так не далеко и до самообмана.
Станислав писал(а):
Например при компиляции бинарника добавляю в него часть какого нибудь файла простой командой
ico8 dw 48
dw 48
dw 48*4
file '8.bmp':54
С так не может.

Си так может, только чуть по-другому. Есть какая-то утилитка (типа bin2c), которая транслирует из бинарника сишный исходник. Там получается структура инициализированная данными.

Вычисляемые переходы возможны благодаря наличию указателей на функции, указателю можно присвоить любой адрес. При этом генерируется call, но обычно это не важно. Иногда вместо call может сгенерироваться и jmp, если это "хвостовой" вызов (как при оптимизации хвостовой рекурсии).

Станислав писал(а):
Зачем кстати многоядерные процы, если он только создаёт команды устройствам, а это милисекундная операция и для слабенького проца, зачем оперативная память больше 4 гигов

Несмотря на гигагерцы моего компа, моя ОС компилируется (если с нуля) несколько минут. А в одной фирме работал над проектом, который с нуля вообще почти никогда не компилировали, так как слишком долго по времени :-) Правда тогда гигагерцовых процессоров ещё не было, но теперь я понимаю, почему они появились.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 07 мар 2012, 23:11 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Yoda писал(а):
Станислав писал(а):
SII вы пытаетесь продумать всё, а это с первого взгляда сложно.

Никто не обещал простоты. Это сложно, но абсолютно необходимо. Без этого просто никуда.

Только без фанатизма :-) Сложность объектов бесконечна (так написано в учебнике Информатики), поскольку каждый объект является составным.
Yoda писал(а):
На девушек не производят никакого впечатления ни математика, ни ОС-девелопмент. Гораздо легче произвести впечатление мастерским катанием на роликах. Разгоняешься, прыжок 180 градусов через бордюр и тормозишь перед девушкой фастом или, на худой конец, пауэр слайдом. Вот минимальный набор действий, стопудово производящий впечатление (если только девушка сама не профи-роллер) и которому вполне можно научиться за сезон катания в роллер-школе. Поэтому не надо ограничивать себя одним только сиденьем перед компом.

Я не имел ввиду демонстрацию заумных (и вообще каких-либо) формул, а чисто обывательские ситуации, когда необходимо что-то сосчитать. Считать приходится даже блондинкам.
И вспомни - я имел ввиду нечто универсальное. Работодателя пауэр слайдом точно не поразишь (ну только если он не является твоим фанатом, а ты чемпионом мира).
Yoda писал(а):
Работодатель почти всегда не способен определить твою математическую подготовку, т.к. обычно сам слаб в математике. Как правило, больший вес имеют хорошо подготовленное резюме.

Не важно что понимает работодатель в математике, главное дать понять, что ты понимаешь. Например, при общении вставляя между делом (как бы невзначай) различные термины. А в резюме написать, что якобы увлекаешься математикой :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 06:44 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
phantom-84 писал(а):
почитываю доки по AHCI (уже вплотную соприкасаемся с компами, в которых IDE-режим не поддерживается) и т.п. На данном этапе мне проще будет воспользоваться результатами написания драйвера и адаптировать их под себя, если конечно результаты будут получены и не найдутся СИЛЬНО недовольные моим прагматичным подходом по отношению к результатам их работы.


Писать надо по спецификациям, а не по коду. Об этом я и говорю, что если один ковыряешся, то приходят такие мысли у вас и у меня тоже бывают. А если вместе то будет продуктивнее.
По аши советую сначало создать такую инфу
Вложение:
12.jpg
12.jpg [ 97.35 КБ | Просмотров: 3560 ]

На одном компе прерывания были выключены
Инфа берётся очень легко там
Код:
init_ahci:
  mov cl,[def11]
  mov edi,def32
.1:
  mov ebx,[edi]
  add edi,8
  mov eax,[edi]
  add edi,5

    shr eax,8
    cmp eax,010601h
    jnz .2


  mov   edx, $cf8                 ; читаем
  lea   eax, [ebx+36]             ; offset for bus address
  out   dx, eax
  mov   edx, $cfc
  in    eax, dx
  xor   al,al
  mov [ahciBUS],eax ;[31:13] бит
  test eax,eax
  jz @f                  ; Проверить наличие дисков и записать в них списки команд

  mov ebx,[eax]

  and bl,00011111b
  inc bl
  mov cl,bl
  mov [ahci1],bl         ;количество дисков
  shr ebx,8
  and bl,00011111b
  inc bl
  mov [ahci2],bl         ;количество команд


    mov edi,def37
    add eax,118h
.3: mov ebx,[eax]
    shr ebx,16
    test bl,01b
    jnz .4
    mov ebx,eax
    sub ebx,18h
    mov [ebx],edi ;[31:10] бит
    add ebx,4
    mov dword[ebx],0

.4: add edi,1024
    add eax,80h
    dec cl
    jnz .3

.2: dec cl
    jnz .1
@@: ret


Последний раз редактировалось Станислав 10 мар 2012, 06:23, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 13:58 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
SII писал(а):
Вроде как я написал, что проектировщики -- это наиболее квалифицированные, эрудированные и прочая разработчики. Соответственно, откровенно идиотские решения от них могут исходить только в том случае, если они чего-то обкурятся, но подобные методы работы я не рассматриваю :)

Тут на самом деле есть две неприятных возможности.
1. Че-к попал в проектировщики. Если это че-к со стороны, то настоящий его опыт и степень разумности ты ещё в полной мере не знаешь. Даже если это выпускник Физтеха или Мехмата МГУ.
2. Все могут ошибаться. Даже самые таланты и гении. Кроме того, есть куча холиварных тем, где каждый считает себя безусловно правым. Соответственно, откровенную идиотскость решения можно обнаружить уже на стадии эксплуатации.

SII писал(а):
уж что-что, а NTFS в сколько-нибудь обозримом будущем моей оси точно не нужна :) Вот FAT через некоторое время будет реализована: нужна поддержка SD-карт и флэшек.

Мы продаём изделия на АРМах. Они поддерживают SD-карты и флешки. Однако пользователи подключают к изделиям USB-CDROM и USB-винчестеры и удивляются, почему их накопители не распознаются устройством (на самом деле у нас распознаются :). Поэтому по факту получается, что современная ОСь даже на АРМах должна поддерживать помимо FATов, ещё NTFS, ISO-9660, Joliet и UDF.

SII писал(а):
Так все этим и занимаются, просто у каждого своё видение того, какой должна быть эта ОС

Вот Станислав как раз об этом и забывает. Он думает, что сейчас запряжёт в телегу лебедя, рака и щуку и эта телега в три раза быстрей поедет.

SII писал(а):
ну а у некоторых (у меня, например) -- ещё и платформа отличается от общепринятой

Я уже писал, что сейчас нужно ДВЕ платформы считать общепринятыми - x86/AMD64 и ARM.

Himik писал(а):
Си так может, только чуть по-другому. Есть какая-то утилитка (типа bin2c), которая транслирует из бинарника сишный исходник.

Такая утилитка пишется самостоятельно за 10 минут. Если кому лень, могу кинуть свою с исходником, при помощи которой код загрузочных секторов внедряю в утилиту boot.exe.

Himik писал(а):
И вспомни - я имел ввиду нечто универсальное. Работодателя пауэр слайдом точно не поразишь

Я как раз и хотел сказать, что чего-то универсального, видимо, не существует. Поэтому надо стремиться быть разносторонним человеком, как например Дольф Лундгрен.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 14:13 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Yoda писал(а):
1. Че-к попал в проектировщики. Если это че-к со стороны, то настоящий его опыт и степень разумности ты ещё в полной мере не знаешь. Даже если это выпускник Физтеха или Мехмата МГУ.
2. Все могут ошибаться. Даже самые таланты и гении. Кроме того, есть куча холиварных тем, где каждый считает себя безусловно правым. Соответственно, откровенную идиотскость решения можно обнаружить уже на стадии эксплуатации.


Угу. Но обычно команда формируется всё ж не по принципу "затащить первых попавшихся". Кроме того, обычно команду составляют люди более-менее адекватные (а прочие в командах не удерживаются по понятным причинам). В общем, вероятность неправильного поведения и принятия неправильных решений в команде архитекторов будет весьма небольшой (хотя ненулевой, конечно), так что в первом приближении можно её игнорировать. А вот попытка активного участия в проектировании всей толпы разработчиков (и тем более с привлечением будущих пользователей) гарантированно сделает процесс проектирования невозможным: всё утонет в говорильне (слишком много мнений, слишком разная квалификация, да и просто слишком много людей).

Цитата:
Мы продаём изделия на АРМах. Они поддерживают SD-карты и флешки. Однако пользователи подключают к изделиям USB-CDROM и USB-винчестеры и удивляются, почему их накопители не распознаются устройством (на самом деле у нас распознаются :). Поэтому по факту получается, что современная ОСь даже на АРМах должна поддерживать помимо FATов, ещё NTFS, ISO-9660, Joliet и UDF.


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

SII писал(а):
Я уже писал, что сейчас нужно ДВЕ платформы считать общепринятыми - x86/AMD64 и ARM.


Это -- не платформы, а лишь процессорные архитектуры. Вот ПК -- это уже платформа, поскольку, помимо собственно проца, здесь есть куча всего прочего, причём это "всё прочее" более-менее стандартизировано, а значит, может поддерживаться более-менее универсальным образом. Для АРМов подобного нет и не будет, поскольку у них назначение во многом иное. У одного такая периферия, у другого -- совершенно иная, никаких стандартов, кроме как на собственно процессор, не существует в принципе, и т.д. Да и процессоры могут существенно отличаться. Например, основная масса микроконтроллеров не имеет MMU: оно попросту не нужно для ставящихся перед контроллерами задач. Соответственно, ОС должна уметь работать без него. В то же время, если ОС не умеет пользоваться MMU, то она будет откровенно неполноценной для, так сказать, десктопных применений. Ну а на ПК такой проблемы нет: если создаётся сколько-нибудь полноценная система, она просто обязана поддерживать MMU.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 14:47 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
SII писал(а):
Угу. Но обычно команда формируется всё ж не по принципу "затащить первых попавшихся". Кроме того, обычно команду составляют люди более-менее адекватные (а прочие в командах не удерживаются по понятным причинам). В общем, вероятность неправильного поведения и принятия неправильных решений в команде архитекторов будет весьма небольшой

Ахх, если б на практике всё было бы так же красиво, как в теории :)
В начале существования проекта команда формируется. И именно этот момент и является чрезвычайно ответственным. Хочешь-не хочешь, а кого-то придётся брать с улицы по резюме.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 14:54 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Yoda писал(а):
Ахх, если б на практике всё было бы так же красиво, как в теории :)
В начале существования проекта команда формируется. И именно этот момент и является чрезвычайно ответственным. Хочешь-не хочешь, а кого-то придётся брать с улицы по резюме.


Разница между теорией и практикой на практике куда больше, чем в теории :) Но нам брать для разработки оси людей с улицы вряд ли грозит-с.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 15:32 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
SII писал(а):
Угу. Но обычно команда формируется всё ж не по принципу "затащить первых попавшихся". Кроме того, обычно команду составляют люди более-менее адекватные (а прочие в командах не удерживаются по понятным причинам). В общем, вероятность неправильного поведения и принятия неправильных решений в команде архитекторов будет весьма небольшой (хотя ненулевой, конечно), так что в первом приближении можно её игнорировать. А вот попытка активного участия в проектировании всей толпы разработчиков (и тем более с привлечением будущих пользователей) гарантированно сделает процесс проектирования невозможным: всё утонет в говорильне (слишком много мнений, слишком разная квалификация, да и просто слишком много людей).


Я не вижу здесь "первых попавшихся", вы первым попавшимся считаете чють ли не себя, людей в таком деле мало не бывает, бывает, что толку от них меньше чем потраченного времяни на них, но общение тоже не плохо.
Если каждый поделится своим опытом и даст код пусть даже по одной и той же теме, то можно выбрать и обсудить их, это очень продуктивно, выбором займётся руководитель как мы уже договорились для избежания споров.
Нароботок у нас много, светить их не обязательно перед всеми, код будет вообще закрытый, но разница в том, что писать командой шансов победить реально больше.
Ценны те нароботки которые разобраны или созданы им самим и при их не понимании другими людьми будут объеснены в живом общении и в ответ можно получить какую то критику полезную.
Так же не стоит убиваться в объяснении нужности очередных тем, если человек считает, что это нужно то значит нужно, а по результатам готовой работы уже можно будет оценить, также считаю, что если мнений на одну и ту же тему несколько, то стоит тестировать их все.
Координатору не обязательно писать, можно ставить задачи и рекомендовать в помощь подмогу какой то задаче.


Последний раз редактировалось Станислав 08 мар 2012, 16:17, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стоит ли писать ОСЬ
СообщениеДобавлено: 08 мар 2012, 15:59 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
Станислав писал(а):
Писать надо по спецификациям, а не по коду.
Я про драйвер NTFS говорил. Меня интересует не только код, но и описание структуры ФС для несведущих т.с. типа того, что присутствует в последнем посте Ёды (в соотв. теме).


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 70 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.

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


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

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


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

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