Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

OXYGEN OS

13K
12 декабря 2006 года
Exs42
42 / / 04.09.2006
Доброе время суток!
http://freeos-project.narod.ru/
Господа годеры, пожалуйста поделитесь мнением о данном проекте.

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

Извините, что описание внутреннего устройства моей ОС на сайте такое скудное, я ведь не писатель. %) Зато в исходниках множество коментариев.В OXYGEN OS должны идти все COM программы использующие прерывания BIOS.
Страницы:
13K
01 февраля 2007 года
Exs42
42 / / 04.09.2006
Качаем новый update OXYGEN OS v0.08! Полностью переделал систему под собственный API! %)
13K
30 апреля 2007 года
Exs42
42 / / 04.09.2006
Тут проблемка возникла в процессе написания...
Я начинаю свои прерывания использовать, и глюкавит не на шутку :( Вроде все обработчики написанны правильно.
Я подозреваю, что проблема в выставлении директив
 
Код:
.data
.data?

Можнот ли вообще в COM файлах их использовать? Ведь для всего используется один и тот же сегмент.
349
30 апреля 2007 года
Phantom-84
656 / / 27.10.2005
Давно не давал о себе знать, как дела с осью? Я уже забыл, что обозначает .data? - область неинициализированных переменных? Если так, то лучше не использовать. В принципе, если твой com-файл грузит DOS, то она гарантирует наличие памяти до конца 16-битного сегмента, в который будет загружен файл, только не забывай, что под вершиной этого сегмента располагается стек. Если твой файл имеет размер больше 64 Кб - 256 б, то DOS под него выделит только память, необходимую для его загрузки (выровняв размер блока на границу параграфа), и сразу же после запуска будет затерт участок, используемый стеком, чтобы там не находилось.
13K
01 мая 2007 года
Exs42
42 / / 04.09.2006
Да прогаю потихоньку... :)
Уже скоро выйдет обновление (это я говорил в конце марта :) ), если сумею за май всё собрать как пологается...
Единственное что хочу сказать - обновление задержалось так долго, потому что я опять перестраивал структуру всей ос. Вроде сейчас что-то похожее действительно на ОС проглядывется. Ну вообщем сам всё увидишь. До 10 мая постараюсь закончить.
По просьбе трудящихся :) , я выложу образ дискеты, а то и вправду извращение с установкой получается :)
12K
01 мая 2007 года
Codman
15 / / 12.11.2005
Меня тоже прoперла ностальгия)))
Я когда-то учавствовал в проекте UzhOS, может слышал кто о таком? ;)
7.8K
01 мая 2007 года
Monarhia
105 / / 26.06.2006
Я слышал, но наскок я знаю ОС так и не вышла...
А можешь росказать проэкт когдато выложит свою первую версию ОС??
12K
01 мая 2007 года
Codman
15 / / 12.11.2005
У меня есть бОльшая часть исходников...(правда довольно старых) выйдет ли сам проект - неизвестно, и выйдет ли в массы...как мне тогда писал Семагин ( Автор проекта ) что она будет коммерческой...Деньги за ОС должны были делиться м/у участниками, по кол-ву написанного кода... Часть народа,кому раздавались задания перестали их выполнять...да и сам Семагин, как мне показалось часть чужих исходников присвоил себе...
Я отвечал за определение аппаратуры, и ввод/вывод...
Кстати, я недавно смотрел...проект еще не заглох, но периодически погружается в сон)
P.S. я смотрел вроде у них на форуме есть готовые версии ос..вроде..
261
01 мая 2007 года
ahilles
1.5K / / 03.11.2005
так система "disasma" поддерживает NTFS и FAT32 или нет?
252
02 мая 2007 года
koderAlex
1.4K / / 07.09.2005
Цитата: Codman
У меня есть бОльшая часть исходников...(правда довольно старых) выйдет ли сам проект - неизвестно, и выйдет ли в массы...как мне тогда писал Семагин ( Автор проекта ) что она будет коммерческой...Деньги за ОС должны были делиться м/у участниками, по кол-ву написанного кода... Часть народа,кому раздавались задания перестали их выполнять...да и сам Семагин, как мне показалось часть чужих исходников присвоил себе...
Я отвечал за определение аппаратуры, и ввод/вывод...
Кстати, я недавно смотрел...проект еще не заглох, но периодически погружается в сон)
P.S. я смотрел вроде у них на форуме есть готовые версии ос..вроде..


и многа денюжков получил ? если проект был коммерческим , то как обзывалась ваше юридическое лицо (фирма) ?

12K
02 мая 2007 года
Codman
15 / / 12.11.2005
Цитата: koderAlex
и многа денюжков получил ? если проект был коммерческим , то как обзывалась ваше юридическое лицо (фирма) ?



Денюжков не получил, т.к. отчалил рано.

7.8K
02 мая 2007 года
Monarhia
105 / / 26.06.2006
Наскок я понял ты правильно сделал, так как то что они хотят они сделают совсем не скоро...
252
03 мая 2007 года
koderAlex
1.4K / / 07.09.2005
если ты для них что то делал , то обязан получить . но ни ты , ни кто там остался ничего не получат - прально оформленного договора нету ведь ? количество написанного кода никто не регистрировал (вообще странно код размером мерять :) ) .
13K
10 мая 2007 года
Exs42
42 / / 04.09.2006
Вышла новая версия оси - Oxygen OS v0.12 alfa.
Создан образ дискеты, полностью перестроенна архитектура всей ОС.Книг тоже прибавилось.
Просьба поделиться мнением, кто что думает по поводу новой версии ос.
Так же не забываем про форум и гостевуху.
1.9K
22 июня 2007 года
disasm
232 / / 06.02.2006
Цитата: ahilles
так система "disasma" поддерживает NTFS и FAT32 или нет?


Пока нет. Скоро будет, ведь без этого никак.

Совсем заучился тут, то олимпиады, то экзамены :)
Осталось только экзамены в МФТИ сдать :) Очень удивился, когда увидел что эта тема еще на первой странице.

Ситуация с моей ОС пока такова: пишу подсистему vfs, это оказалось самым трудоемким делом. Пишу медленно, т.к. знаю только концепцию, все функциональные части придумываю по ходу дела.

Вечером посмотрю на OXYGEN OS, если там уже есть много чего то или я туда пойду, или буду софт писать под эту ОС

13K
24 июня 2007 года
Exs42
42 / / 04.09.2006
Disasm уже смотрел? Что думаешь?
Я в Bochs запускал - приложения глючят( правда не все %) ), хотя на реальной машине всё стабильно работает. В чём может быть проблема?
1.9K
25 июня 2007 года
disasm
232 / / 06.02.2006
Цитата: Exs42
Disasm уже смотрел? Что думаешь?
Я в Bochs запускал - приложения глючят( правда не все %) ), хотя на реальной машине всё стабильно работает. В чём может быть проблема?


Смотрел исходники поверхностно. Сегодня буду тестировать под боксом и смотреть глубже. Постараюсь сегодня вечером или днем отчет выложить.

А пока я решил сделать очень урезанную версию vfs в которой все маунт поинты находятся в корневом каталоге. Кроме того написал (скопировал и подправил) драйвера экрана, клавиатуры, таймера, флопика...


UPD
Посмотрел, хорошо что у меня хватило мозгов разобраться как проги запускаются :)
Под боксом все проги нереально тормозят, глюков вроде бы нет. Прога fire вообще точку посредине экрана выводит и изредка экран перерисовывает.
Пока все отлично, вот только бы убрать команду run и сделать запуск приложений с помощью их имени (fire, вместо run fire.com)

1.8K
20 июля 2007 года
Evgeni
188 / / 14.06.2006
здравствуйте Phantom-84, в начале вы говорили, что читали книги по защищенному режиму, не скажите какие именно?
1.9K
21 июля 2007 года
disasm
232 / / 06.02.2006
Хоть я и не Phantom-84, дам еще немного источников:
1. http://sasm.narod.ru/
2. Юров В.И. "ASSEMBLER учебник"
3. Зубков С.В. "ASSEMBLER для DOS, Windows и UNIX"
4. Гордеев А.В. "Операционные системы"
Вроде бы все книги издательства Питер.
349
21 июля 2007 года
Phantom-84
656 / / 27.10.2005
Evgeni, я изучал защищеный режим по очень хорошему многотомнику (несколько книг), имя автора и название которого к сожалению уже не помню. Где-то в архиве пылится что-то похожее в электронном виде (но это все-таки не то). Если сильно нужно, могу поискать. Учебник "ASSEMBLER" Юрова для изучения сис. программирования не подходит, хотя там вроде бы описывается программирование PIC. Книга Зубкова посильнее, но она очень многогранна и как следствие не везде глубока, к тому же, в своем экземпляре я нашел несколько явных ошибок. Еще встречаются небольшие брошюры Гука по разным поколениям процессоров - техническая сторона там почти всегда довольно хороша. Ну естественно не стоит забывать и про интеловские руководства. В сети наверняка можно найти и русские переводы...

disasm, ;)
349
21 июля 2007 года
Phantom-84
656 / / 27.10.2005
А вообще лучше писать мне в личку. Если у кого-то есть подозрение, что я и disasm - один и тот же человек, я публично это опровергаю.

P.S. Следящим просьба подчистить ветку, но пожалуйста не сразу, чтобы адресат моих сообщений успел их прочитать.

С уважением, Phantom-84
1.9K
21 июля 2007 года
disasm
232 / / 06.02.2006
Если бы Evgeni сказал что конкретно его интересует..
То что я написал - список книг конкретно по реализации тех или иных возможностей процессора. ИМХО для кодирования ОС этого достаточно. Что же касается программирования ОС.. фактически у меня нет нормальной книги по этому фопросу, да и мне она не сильно нужна, т.к. мне больше нравится изобретать, нежели копировать что-то чужое. Да и копируя чужое можно сразу ОС написать не напрягаясь, какой в этом тогда смысл?
1.8K
22 июля 2007 года
Evgeni
188 / / 14.06.2006
мне бы хотелось подробно прочитать про реальный и защищенный режим
261
22 июля 2007 года
ahilles
1.5K / / 03.11.2005
смотри
http://forum.codenet.ru/showthread.php?t=31103
1.8K
23 июля 2007 года
Evgeni
188 / / 14.06.2006
а вот возник вопрос, если при создании собственной оси нужно вначале сделать прогу, которая будит береходить в реальный режим а потом в защищенный, если да то, какой расширение у нее должно быть?
252
23 июля 2007 года
koderAlex
1.4K / / 07.09.2005
а какая разница ? кстати это называется "вторичный загрузчик" .
1.9K
23 июля 2007 года
disasm
232 / / 06.02.2006
Интересно как она будет переходить в реальный режим ))
А писать прогу можно в любой форме. Я делаю загрузку ядра сразу из бутсектора дискеты. Так намного быстрее происходит загрузка ОС под эмулятором, да и моя ОС в этом случае не зависит от других ОС.
252
24 июля 2007 года
koderAlex
1.4K / / 07.09.2005
может у него ось (не)реального режиму :)
1.9K
24 июля 2007 года
disasm
232 / / 06.02.2006
Так нереальный это тот же реальный, загрузил новую GDT и вперед!
349
25 июля 2007 года
Phantom-84
656 / / 27.10.2005
disasm, из бутсектора и сразу в PM конечно можно, но по-моему это не самый лучший вариант (хотя уже встречал такое). Чтобы перейти из PM в нереальный режим, нужно загрузить в сегментные регистры соответствующие дескрипторы и перейти в RM (если GDT уже содержит подходящие дескрипторы, то ее можно вообще не трогать).
1.9K
25 июля 2007 года
disasm
232 / / 06.02.2006
Я когда писал бутсектор для флэшки (вернее для FAT16) у меня загрузчик еле уместился в 2 сектора :)

Я подразумевал установку нереального режима из RM с помощью промежуточного перехода в PM
349
25 июля 2007 года
Phantom-84
656 / / 27.10.2005
Цитата:
Я когда писал бутсектор для флэшки (вернее для FAT16) у меня загрузчик еле уместился в 2 сектора :)

Вот-вот... в бутсекторе нужно экономить для более насущных для загрузчика задач, а переход в PM может сделать и тот код, который ты загрузишь из бутсектора (это более естественно, чем твой вариант). У меня загрузчик под FAT32 еле уместился в 2-х секторах, а если бы я из него инициализировал еще и переход в PM, то, боюсь, мне бы могло и 8 секторов не хватить. Короче по логике в бутсекторе должен быть код специфичный для диска и ФС, с которого выполняется загрузка. Переход в PM таковым не является.

Цитата:
Я подразумевал установку нереального режима из RM с помощью промежуточного перехода в PM

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

1.9K
25 июля 2007 года
disasm
232 / / 06.02.2006
Я не знаю как, но есть бутсекторы для FAT32 которые запросто в одном секторе умещаются, к тому же в стандартном бутсекторе NT еще много нулевых байт в конце... Мастера своего дела, что сказать :)
349
25 июля 2007 года
Phantom-84
656 / / 27.10.2005
NTLDR один (у меня два файла) и пользуется своим собственным конфигурационным файлом для определения места размещения системы. У меня до недавного времени номер загрузочного раздела (или даже логического диска) определялся путем повторного прочтения и анализа всей цепочки секторов, начиная с MBR, и всем этим занимался как раз код бутсектора раздела. На данный момент я заканчиваю работу над универсальным MBR-загрузчиком, который в качестве дополнительного параметра будет передавать бутсектору раздела его порядковый номер (1-255 или 0 при дефолтной загрузке), а это позволит убрать из бутсектора раздела значительный фрагмент данных. Может показаться, что схема загрузки виндов лучше, чем используемый мной вариант, но это не сосвсем так. Стандартный NTLDR привязан к весьма ограниченному ряду файловых систем (если бы он был универсальным, он бы даже не всегда смог прочитать свой конфиг. файл), а в моей системе используется полностью независимый от типа диска и типа файловой системы порядок загрузки (этим ведают исключительно первичные загрузчики, а потом сразу драйверы защищенного режима).
1.9K
26 июля 2007 года
disasm
232 / / 06.02.2006
Можно еще под нужды MBR забрать весь первый трек винчестера, там же можно и конфигу записать и дополнительный код для MBR, ссылки на цепочки секторов с драйверами устройств, необходимыми для загрузки с этих устройств, ...
349
26 июля 2007 года
Phantom-84
656 / / 27.10.2005
Да, я уже думал (и даже писал) об этом. Но в итоге остановился на стандартном размере 446 байт, т.е. чтобы по виду это был обычный MBR-загрузчик. Драйвер загрузочного устройства/ФС у меня грузится первичным загрузчиком вместе с базовым ядром. MBR-загрузчик работает традиционным образом плюс поддержка загрузки с логических дисков расширенных разделов и примитивный диалог для выбора загрузочного раздела пользователем, а также то, о чем я уже писал - передача порядкового номера этого загрузочного раздела.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог