На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Перед отправкой сообщения внимательно прочтите правила раздела!!!
1. Запрещается обсуждать написание вирусов, троянов и других вредоносных программ!
2. Помните, что у нас есть FAQ раздела Assembler и Полезные ссылки. Посмотрите, возможно, там уже имеется решение вашего вопроса.

3. Настоятельно рекомендуем обратить особое внимание на правила форума, которые нарушаются чаще всего:
  3.1. Заголовок темы должен кратко отражать её суть. Темы с заголовками типа "Срочно помогите!" или "Ассемблер" будут отправляться в Корзину для мусора.
  3.2. Исходники программ обязательно выделяйте тегами [code]...[/code] (одиночные инструкции можно не выделять).
  3.3. Нежелательно поднимать старые темы (не обновлявшиеся более года) без веской на то причины.

Не забывайте также про главные Правила форума!

Добро пожаловать и приятного вам общения!!! ;)
 
Модераторы: Jin X, Qraizer
  
> Помогите понять FAT, пожалуйста
    Цитирую
    ExpandedWrap disabled
      <br> A diskette (or a DOS partition of a hard disk) is laid out like so:<br><br>  _ Boot and reserved sector(s)<br>  _ FAT #1<br>  _ FAT #2 (optional -- not used on RAM disks; simulated by Dblspace)<br>  _ root directory<br>  _ data area (all file data reside here, including files for directories)<br>


    Теперь я высчитал, где начинается корневое оглавление (root directory),
    считал его в память. Правильно ли я понимаю, что это корневое оглавление
    состоит только из 32-байтовых элементов оглавления каждого файла.
    По смещению 1Ah находится ссылка на первый кластер этого файла и значит можно
    полностью  его расположение на диске (или дискете). Но дальше я чего-то в
    тупик зашёл.
    Вопрос такой: если этот файл - это каталог и в нём есть другие каталоги,
    то как определить из элемента оглавления этого каталога ссылки на элементы
    оглавления каталогов (чтобы потом выйти через них на FAT) или(и) файлов,
    находящихся в нём ?

    Структура элемента такая, но ответа я в ней не нахожу :(
    Цитирую
    ExpandedWrap disabled
       <br>Offset Size Contents<br> ______ ____ ___________________________________________________________<br> +0       8  abName       left-justified, blank-padded (e.g. 'FILE    '<br> +8       3  abExt        left-justified, blank-padded (e.g. 'EXT'<br>+0bH      1  bAttr        file attribute<br>+0cH     10  res          (reserved)<br>+16H      2  rTime        time created/last modified in FileTimeRec format<br>+18H      2  rDate        date created/last modified in FileDateRec format<br>+1aH      2  wClstrNo     cluster number of start of file (link into FAT)<br>+1cH      4  lSize        file size in bytes<br>         32               size of DirEntryRec<br>

      Каталог - это файл, имеющий атрибут каталога. Его можно также прочесть (по секторам), как обычный файл, но содержать он будет такие же 32-байтовые элементы, как и Root Dir Entries.... Кстати, описание файла/каталога может состоять из нескольких 32-байтных элементов, если файл/каталог имеет длинное имя....
      Сообщение отредактировано: 7in -
        ExpandedWrap disabled
          <br>Его можно также прочесть (по секторам), как обычный файл, но содержать он будет такие же 32-байтовые элементы, как и Root Dir Entries...<br>


        Они будут находиться в кластере, на который указывает (т.е. начиная с) wClstrNo ?    
          Всё ! Разобрался !  8)
          1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0411 ]   [ 14 queries used ]   [ Generated: 20.05.24, 04:20 GMT ]