OSDev

для всех
Текущее время: 13 ноя 2018, 23:15

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




Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2, 3, 4  След.
Автор Сообщение
 Заголовок сообщения: ОСь с нуля. С чего начать?
СообщениеДобавлено: 26 сен 2007, 23:44 

Зарегистрирован: 26 сен 2007, 22:48
Сообщения: 15
Вопрос теоретический, потому как писать ось я наверно буду только в теории (пока дело с места не сдвинулось уже пару лет).
Интересует мнение с чего начинать в какой последовательности и т.д.
Есть небольшое/неглубокое знание иа32, архитектуры ИБМ РС и асма.
Начало теоретического изыскания в конце концов уперлось просто в систему кодировки. Получилось что то вроде азбуки Морзе - битовая последовательность различной длины в которую заключен код и длина кода.
Следущий шаг как мне мыслится файловая система?
Если можете подсказать какие то ресурсы посвещенные принципам сего дела (не по существующим файловым системам - это не так интересно) буду рад.
Также любым соображениям посвещенным осестроительству.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 26 сен 2007, 23:59 

Зарегистрирован: 26 апр 2007, 15:35
Сообщения: 366
Откуда: Saint-Petersburg
Привет. Сначала попробуй прочитать цикл статей на Lowlevel. Изучи исходники существующих ОСей.
Как пример по построению простейшего ядра, могу тебе предложить туториалы, которые я специально для объяснения сего процесса написал прошлым летом - OSTuts.
Цитата:
Начало теоретического изыскания в конце концов уперлось просто в систему кодировки. Получилось что то вроде азбуки Морзе - битовая последовательность различной длины в которую заключен код и длина кода.

Что-то я не очень понимаю, что ты имеешь в виду ;)
Цитата:
Следущий шаг как мне мыслится файловая система?

ИМХО, реализацию драйверов файловых систем лучше оставить на тот момент, когда ядро уже сможет обеспечить нормальную многозадачность, межпроцессное взаимодействие, интерфейсы к драйверам и т.п.

И уж лучше попробуй писать ОСь не в теории, а в практике; получше разобравшись, что к чему -- перейти к теоретическим размышлениям ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 00:13 

Зарегистрирован: 26 сен 2007, 22:48
Сообщения: 15
Цитата:
Привет. Сначала попробуй прочитать цикл статей на ["http Lowlevel].
Цитата:
Начало теоретического изыскания в конце концов уперлось просто в систему кодировки. Получилось что то вроде азбуки Морзе - битовая последовательность различной длины в которую заключен код и длина кода.

Что-то я не очень понимаю, что ты имеешь в виду ;)
//legos

система кодировки символов отличная от табличной - мне она кажеться недостаточно гибкой и часто избыточной. хотя в такой кодировке как я придумал избыточность тоже присутсвует - принцип простой, в битовой последовательности представляющей из себя символ содержатся биты по которым можно определить длину последовательности. каждый символ может быть разной длины от двух бит до... скольки фантазия позволит.
Цитата:
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><td id='QUOTE'><!--QuoteEBegin-->Следущий шаг как мне мыслится файловая система?
ИМХО, реализацию драйверов файловых систем лучше оставить на тот момент, когда ядро уже сможет обеспечить нормальную многозадачность, межпроцессное взаимодействие, интерфейсы к драйверам и т.п.

И уж лучше попробуй писать ОСь не в теории, а в практике; получше разобравшись, что к чему -- перейти к теоретическим размышлениям ;)<!--QuoteEnd-->QUOTE<div class='postcolor'><!--QuoteEEnd-->
Речь идет не о драйверах, а о структуре файловой системы. Еще интересны методы защиты целостности информации, а также принцип распределеных файловых систем (подобные RAID как я понимаю это).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 00:14 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1070
Откуда: Балаково
На теоретический вопрос я и отвечу теоретически :) Представь, что ты пишешь Тетрис. Но не обычный, потому что обычный писать не интересно. Значит первое дело - надо придумать что-то, делающее игру круче. Разработать новую логику игры, вид. ОС - это почти такая же программа как и все остальные, поэтому подход к разработке можно брать из обычной практики, тут нет ничего сверхестественного.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 00:27 

Зарегистрирован: 26 сен 2007, 22:48
Сообщения: 15
Цитата:
На теоретический вопрос я и отвечу теоретически :) Представь, что ты пишешь Тетрис. Но не обычный, потому что обычный писать не интересно. Значит первое дело - надо придумать что-то, делающее игру круче. Разработать новую логику игры, вид. ОС - это почти такая же программа как и все остальные, поэтому подход к разработке можно брать из обычной практики, тут нет ничего сверхестественного.
//Chizh


ну вот... теоретически я начинаю писать ось пользуя 256 битную таблицу символов. Исчерпав ее - упираюсь в потолок и начинаю писать дополнительные драйвера, менять вызовы процедур, часть ПО умеет работать с новой кодировкой часть нет... ну наверно мысль понятна - додумав кодировку с переменой длиной (уверен не я первый такое придумал и наверняка уже она как то используется) я уже избежал (тоже теоретически, потому как я не пишу ось) проблем при добавлении китайского словаря в систему кодировки.

вот все таки мне мыслиться что разумный подход к осестроительству в следующем шаге требует файловую систему продумать, а не способы распределения оперативки, выделения процессорного времени и тому подобного

хотя возможно я ошибаюсь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 00:36 

Зарегистрирован: 26 апр 2007, 15:35
Сообщения: 366
Откуда: Saint-Petersburg
Цитата:
система кодировки символов отличная от табличной - мне она кажеться недостаточно гибкой и часто избыточной. хотя в такой кодировке как я придумал избыточность тоже присутсвует - принцип простой, в битовой последовательности представляющей из себя символ содержатся биты по которым можно определить длину последовательности. каждый символ может быть разной длины от двух бит до... скольки фантазия позволит.

Так UTF-8 разве недостаточно?
Цитата:
Речь идет не о драйверах, а о структуре файловой системы. Еще интересны методы защиты целостности информации, а также принцип распределеных файловых систем (подобные RAID как я понимаю это).

Вот пример описания строения ФС Ext2 - http://av5.com/?action=jns,oread,read_i ... t_button=1
Цитата:
а также принцип распределеных файловых систем (подобные RAID как я понимаю это)

Что значит "распределенных ФС"? Сетевых? Тогда при чем тут RAID? В случае расположения одной ФС на нескольких дисках -- эти диски обычно просто виртуально объединяются драйвером диска в один раздел. И драйвер ФС работает именно с этим одним разделом, как с цельным диском -- драйверу ФС совсем не обязательно знать про физическое строение раздела.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 00:59 

Зарегистрирован: 26 сен 2007, 22:48
Сообщения: 15
Цитата:
Так UTF-8 разве недостаточно?

//legos

незнаком (теория все таки - необязательно знать существующие)
там табличная организация?
могу привести пример того что придумал я - может подскажите как оно называется.
Цитата:
Что значит "распределенных ФС"? Сетевых? Тогда при чем тут RAID? В случае расположения одной ФС на нескольких дисках -- эти диски обычно просто виртуально объединяются драйвером диска в один раздел. И драйвер ФС работает именно с этим одним разделом, как с цельным диском -- драйверу ФС совсем не обязательно знать про физическое строение раздела.

вообще скажем - файловая система приближенная к идеальной
разработка ведь этой части не нуждается в программном обеспечении, ее можно разработать на бумаге.
чего от нее желательно - устойчивость к разрушению, маштабируемость, возможность частичного или полного востановления данных при разрушении. Желательно последнее к примеру без остановки системы.
Тема очень емкая по моему и немаленькое поле для исследования и работы в этом направлении.


з.ы.
ссылка кстати не плоха - спасибо, читаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 01:15 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1070
Откуда: Балаково
Цитата:
ну вот... теоретически я начинаю писать ось пользуя 256 битную таблицу символов. Исчерпав ее - упираюсь в потолок и начинаю писать дополнительные драйвера, менять вызовы процедур, часть ПО умеет работать с новой кодировкой часть нет... ну наверно мысль понятна - додумав кодировку с переменой длиной (уверен не я первый такое придумал и наверняка уже она как то используется) я уже избежал (тоже теоретически, потому как я не пишу ось) проблем при добавлении китайского словаря в систему кодировки.
//Zidan

Советую использовать Unicode кодировку, она 16 битная, и содержит все языки сразу. К тому же её начали поддерживать все системы. Коды 0-0x7F содержат таблицу ASCII, а начиная с 0x400-0x4FF идёт кириллица.
Лучше не ориентироваться на текстовый режим, а лучше графический, чтобы отображать любые буквы одновременно.
Цитата:
Речь идет не о драйверах, а о структуре файловой системы. Еще интересны методы защиты целостности информации, а также принцип распределеных файловых систем (подобные RAID как я понимаю это).
//Zidan

Но скорее всего ты "изобретёшь" RAID. Тоесть получится ФС устроенная как RAID-1 или RAID-5, потому что он придуман для такой же защиты от сбоев. По большому счёту такая ФС будет не актуальна при наличии RAID. А без RAID защита от сбоев будет так сильно тормозить, что ни какой защиты не захочется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 09:13 

Зарегистрирован: 27 апр 2007, 22:51
Сообщения: 84
Главное при написании оси не начинать с загрузчика, ибо на этом и закончишь... (куча примеров в инете и всем известный 3ОС)
Я начал с ядра, а конкретно с функций обработчиков прерываний исключений и системных вызовов, в которых мне понадобились семафоры очереди и пошло поехало и так до тех пор пока не сдал диплом...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ОСь с нуля. С чего начать?
СообщениеДобавлено: 27 сен 2007, 09:23 

Зарегистрирован: 26 апр 2007, 15:35
Сообщения: 366
Откуда: Saint-Petersburg
Цитата:
Тоесть получится ФС устроенная как RAID-1 или RAID-5, потому что он придуман для такой же защиты от сбоев. По большому счёту такая ФС будет не актуальна при наличии RAID. А без RAID защита от сбоев будет так сильно тормозить, что ни какой защиты не захочется.


А как же журналирование? Ext3, ReiserFS, NTFS (2), UFS..

Статьи:
"Разработка собственной файловой системы с помощью FUSE"
Алексей Федорчук, "Создание файловых систем"


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

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


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

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


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

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