OSDev
http://osdev.su/

Новая рассылка на тему OsDev
http://osdev.su/viewtopic.php?f=8&t=2238
Страница 3 из 3

Автор:  Станислав [ 15 июл 2012, 10:57 ]
Заголовок сообщения:  Re: Новая рассылка на тему OsDev

SII писал(а):
У меня в этом плане нечто среднее между монолитом и QNX: драйверы могут входить в состав ядра, а могут быть выполнены как задачи режима пользователя. В частности, в ядре я размещаю все быстрые и компактные драйверы, напрямую работающие с "железом", в то время как тяжеловесные -- типа файловых систем -- будут выполнены в виде задач (пока поддержки для них нет, но думаю, появится довольно скоро: по работе надо будет обеспечить возможность чтения-записи SD-карт и флэшек, а значит, надо делать FAT32).


Файловую систему fat32 можно хранит в ядре, это класика(тупо маска кластеров, по первому кластеру соберается цепочка кластеров), сама папка как небольшой файл грузится в память со всеми своими кластерами, и имеет свой формат из 32байтных блоков. Производительность максимальная, если сама карта кластеров в памяти. Файлам и папкам нужно только первый кластер. А папка это список из имён у которых есть их первый кластер.
Если добавить к размеру файла 4байта, чтобы небыло предела в 4Гб и с именами доработать то лучше и не надо. В ntfs в метофайлы добавили инфу о защите(самой защиты нету если все файлы могут скачать игнорируя это, скорее всего инфа о правах доступа не более), даже о иконке и сортировке файлов(просто для системы).

Автор:  D-S [ 15 июл 2012, 11:01 ]
Заголовок сообщения:  Re: Новая рассылка на тему OsDev

Станислав писал(а):
Файловую систему fat32 можно хранит в ядре, это класика(тупо маска кластеров, по первому кластеру соберается цепочка кластеров), сама папка как небольшой файл грузится в память со всеми своими кластерами, и имеет свой формат из 32байтных блоков. Производительность максимальная, если сама карта кластеров в памяти. Файлам и папкам нужно только первый кластер. А папка это список из имён у которых есть их первый кластер.
Если добавить к размеру файла 4байта, чтобы небыло предела в 4Гб и с именами доработать то лучше и не надо. В ntfs в метофайлы добавили инфу о защите(самой защиты нету если все файлы могут скачать игнорируя это, скорее всего инфа о правах доступа не более), даже о иконке и сортировке файлов(просто для системы).


Если к FAT32 что-то добавить, то это будет не FAT32 :). Совместимость и точное следование стандартам - лучший способ не получить на выходе сферического коня.

Автор:  Станислав [ 15 июл 2012, 11:21 ]
Заголовок сообщения:  Re: Новая рассылка на тему OsDev

D-S писал(а):
Если к FAT32 что-то добавить, то это будет не FAT32 :). Совместимость и точное следование стандартам - лучший способ не получить на выходе сферического коня.

Сам формат данных о папке(этот список имён с первым кластером как обязательные пораметры) просто файл со своим форматом данных вообще может быть любым, т.е. в заголовке добавляеш версию формата файла с записями о файлах и создаёш несколько кодеков которые расшифровывают эти даные выдовая список и всё.
В нормальной системе хоть чуть чуть внятной это делается элементарно. В fat32 реально не удобно искать файл по пути начиная с корневой, т.к. имены нужно клеить из блоков, и предел в 4Гб не серьёзно.
А вот добавляя формат с шифровкой записей уже может назваться защитой.

Автор:  phantom-84 [ 15 июл 2012, 12:22 ]
Заголовок сообщения:  Re: Новая рассылка на тему OsDev

Станислав писал(а):
Файловую систему fat32 можно хранит в ядре, это класика...
Классика - это VFS. Конкретная ФС в ядре - это "сначала сделали, а потом подумали".

Кстати, если уж ты такой спец по FAT32, нефиг было тырить загрузчик для этой ФС. Ты умудрился его запороть, внося минимальные изменения: в слове MALINKA семь букв, а пробелов в оригинале было восемь.

Насчет ввода-вывода и монолита полностью согласен с SII. Наличие модулей пространства ядра и служебных процессов не делает монолит микроядром. Приставки типа "гибридное" или "модульное" можно использовать по желанию. А всякие "нано-" только сбивают с толку, делая неоднозначным понятие микроядра. У меня драйверы ФС традиционно оформляются в виде модулей ядра, но нет особых сложностей с тем, чтобы вынести их из пространства ядра.

Автор:  KIV [ 22 июл 2012, 21:34 ]
Заголовок сообщения:  Re: Новая рассылка на тему OsDev

Дошёл до разработки на Си и написал демонстрационный драйвер телетайпа с аналогом printf.
Может быть кому-нибудь будет интересно именно с этого момента :-)

Автор:  D-S [ 30 июл 2012, 22:17 ]
Заголовок сообщения:  Re: Новая рассылка на тему OsDev

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

Страница 3 из 3 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/