Для познания великого ассемблера и структуры современных ОС воин дзена решил отправиться в кругосветное путешествие(т.е. написать свою ОС). В конце своего пути он надеялся понять Дао и запрограммировать его . День и ночь шел великий воин, пробирался через дремучие леса и бескрайние степи, и тут перед ним постала гора. Называлась она FAT12. Воину понадобилось около дня чтобы покорить ету гору, оставалось только спуститься с нее. И тут у него появились вопросы... 1.FAT12 описываетьса 9 секторами, в которых имеетьса 4068 байта. Для описания одного сектора нужно 1.5 байта. Значит можно описать 3072 сектора. Реально на дискете имеетьса 2880 секторов. 192 последних байта в 9-м секторе остаютьса свободными. Можно их использовать в своих целях? Далее несколько вопросиков, не относящихся к FAT 1.В каком состоянии находитьса память в тот момент, когда BIOS собираеться загрузить бут-сектор и передать на него управление? То есть вопрос в том, какие области я могу свободно использовать, а какие принадлежат BIOS и т.д.? 2.Сохранаеться ли ето состояние памяти, если я сразу в бут-секторе прыгну в PM с использованием страничной адресации?(не учитывая создания таблиц типа LDT и таблицы страниц) 3.Стоит ли прыгать в защищенный режим прямо в бут-секторе? Если вам не тяжело, подкиньте пожалуйста ссылок на описания разных файловых систем(особенно интересует ext3fs), а то кажетьса, что одним FAT12 дело не закончитьса... Желательно на русском и с примерами 8), хотя покатит любое, лиш бы читалось 8) И еще одно, если кто-то уже пытался сделать такое(а таких, наверное, немало), поделитесь, плиз, чем все закончилось? На чем вы остановились, в общем поделитесь опытом, ведь лучше учитьса на чужих ашипках . Если поможете, век буду благодарен и никого не забуду. P.S. Если у кого-то есть Танненбаум, если не внапряг, киньте плиз на мыло, но только желательно поменьше размер файла нужен, так как и-нет у меня хилый ~14.400 кБит. z25-Storm(at)yandex.ru [z25]-Storm
...На утро протрезвев, воин понял, что это было не покорение горы, просто он уснул вечером в изнеможении, на вершине булыжника, что был первым у подножия Эвереста... по п.1. > память находится в нормальном "девственно-нетронутом" кемто состоянии и ее структуру и пр. это к Кулакову и проч. популярным азам, пллз... по п.2. > сразу скажу, глупо и наивно и даже ЛЕНИВО! Сразу в PM! А что, слабо сразу заняться изучением железячного ресурса(окружения) машины, выяснить про оборудование, прерывания, каналы, ФАКТИЧЕСКИ работающие и проИНИЧЕННЫЕ BIOS`ом, сложить все ВЫЯСНЕННОЕ стройными, структурированными данными в СВОИХ СИСТЕМНЫХ областях(ибо очень потом надо будет ОСи), а уж потом ринуться в пучину PM!? Или лучше бегом без размышлений, как попало, лишь бы быстрее прям из BOOT`а, но с криком ура!? (наводка: PM - гол, как сокол! И ты это скоро возможно прочувствуешь.) по п. 3. > Если кратко - конечно нет!
Нам нужна реализация ext3/2 для колибри на асме. Ты мог бы сделать полезное дело. Таненбаума можно найти в поисковике в формате pdf полностью. У него кстати есть кое какая инфа по fat12,16,28
Блин, хочу FAT 28 !!! Научите форматить так, а то Р.Джордейн ни че ноговорит да у гугль всего пару линков выдал! ))
EvilsInterrupt а ыт в курсе что в fat32 реально используется меньше бит ? (насчет 28 я не уверен, но похоже на правду). Дополнительно смотри реализацию fat32 в линухе - там есть ооочень интересные комменты...
Формат загрузочных записей и таблиц разделов: http://www.geocities.com/thestarman3/ По ext2fs была отличная статья на lowlevel.ru (сайт сдох, искать через http://archive.org). Поищи также документы "The extended-2 filesystem overview", автор Gadi Oxman, и "John's spec of the second extended filesystem". FAT16/32, имхо, лучше всего изучать с помощью Norton Disk Editor. В старых версиях Norton Utilities была классная справка в .hlp-формате, где был расписан каждый байт. Сейчас программу упростили донельзя и описание убрали. Также ищи PDF-документы от Microsoft под названиями "FAT: General Overview of On-Disk Format" и "Long Filename Specification". Это официальные описания формата. Описание NTFS см. на http://linux-ntfs.sourceforge.net/ntfs/. Все перечисленное искать Googl'ом в режиме точного совпадения (взять искомую фразу в кавычки). infern0, FAT32 теоретически поддерживает 2^28–10 номеров кластеров, однако операционные системы Windows 98/2000/XP ограничивают это число до 4 177 918 кластеров. Так что даже меньше, чем FAT28