ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Файлова система FAT
         

     

    Іноземна мова

    Файлова система FAT

    Курсова робота з курсу "Архітектура ЕОМ"

    Студент 3-го курсу Заньковській Ю.В.

    Міністерство освіти У країни

    Чернівецький державний університет ім. Ю. Федьковича

    Фізичний факультет

    Кафедра ЕОМ

    1999

    Відразу після завантажувального сектора на логічному диску знаходяться сектори, що містять таблицю розміщення файлів FAT (File Allocation Table).

    Для того, щоб призначення цієї таблиці стало більш зрозумілим, розглянемо, як організоване збереження інформації на різноманітних носіях даних.

    Магнітні стрічки.

    При використанні магнітних стрічок інформація записується у вигляді файлів із послідовним доступом. Послідовний доступ означає, що для читання якогось файла потрібно спочатку прочитати всі попередні файли. При записі інформація може добавляти в кінець стрічки, після тієї інформації, що була записана востаннє.

    Якщо ви спробуєте перезаписати файл, то це може привести до втрати усіх файлів, розташованих на магнітній стрічці після нього (цього файла).

    Доступ до інформації, записаної на магнітному диску, може виконуватися або послідовним, або прямим методом доступу. Використання прямого методу доступу дозволяє позиціонувати головки відразу на той файл, що вам потрібний (або на потрібний запис файла). Наприклад, ви можете задати номер сектора на визначеній доріжці і номер голівки.

    Але метод доступу - це ще не усе. Важливе значення має засіб розподілу місця на диску для файлів. Від правильного вибору засобу розподілу залежить ефективність роботи програм.

    Операційна система дозволяє задати початкову кількість циліндрів диска для розміщення набору даних і розмір області диска, що може бути використана для цього набору додатково. Якщо при записі у файл усе розподілене для файла місце на диску виявиться вичерпаним, програма завершиться аварійно, навіть якщо на диску ще є вільні циліндри.

    Операційні системи, такі як DOS, UNIX, OS/2 використовують дисковий простір іншим способом.

    У цих операційних системах при створенні файла для нього не задається початковий розподіл пам'яті в доріжках або секторах. У міру того, як файл збільшується в розмірах, операційна система відводить цьому файлу сектори з числа вільних, не використовуваних іншими файлами. При цьому файл розташовується не обов'язково в суміжних областях диска, він може бути розкиданий по різних доріжках і секторах.

    Очевидно, що в цьому випадку операційна система повинна вести облік використовуваних ділянок диска. Для кожного файла вона повинна берегти десь інформацію про те, якому файлу які ділянки диска відведені.

    Як правило в операційних системах для збереження цієї інформації використовується таблиця розміщення файлів.

    Весь диск розбивається операційною системою на ділянки однакового розміру, які називаються кластерами. Кластер може містити декілька секторів. Для кожного кластера FAT має свою індивідуальну комірку, в якій зберігається інформація про використання даного кластера. Іншими словами, таблиця розміщення файлів -- це масив, що містить інформацію про кластери. Розмір цього масиву визначається загальною кількістю кластерів на логічному диску. (Саме кластерів, а не секторів!).

    Що зберігається в таблиці розміщення файлів?

    Всі вільні кластери позначені в ній нулями. Якщо файл займає декілька кластерів, то ці кластери пов'язані в список. Для пов'язаних у список кластерів елементи таблиці FAT містять номера наступних використовуваних даним файлом кластерів. Кінець списку відзначений у таблиці спеціальним значенням. Номер першого кластера, виділеного файлу, зберігається в елементі каталога, що описує даний файл.

    Утиліти операційної системи і деякі спеціальні утиліти перевіряють диск на предмет наявності дефектних областей. Кластери, що знаходяться в цих дефектних областях, відзначаються в FAT як погані і не використовуються операційною системою.

    Отже, FAT - масив інформації про використання кластерів диска, містить однозв'язані списки кластерів, розподілених між файлами. Номера початкових кластерів файлів зберігаються в каталогах.

    Розглянемо спочатку два формати FAT - 12-бітовій і 16-бітовій. Ці формати використовують, відповідно, 12 і 16 бітів для збереження інформації про один кластер диска.

    12-бітовій формат зручний для дискет із невеликою кількістю секторів - уся таблиця розміщення файлів поміщається в одному секторі. Якщо розмір диска такий, що для представлення всіх секторів дванадцятьох розрядів недостатньо, можна збільшити розмір кластера, наприклад до восьми секторів. Проте великий розмір кластера приводить до неефективного використання дискового простору. Це відбувається через те, що мінімальний віділяємій файлу елемент - кластер - має занадто великий розмір. Навіть для файла, що має довжину 1 байт виділяється цілий кластер. Виходить, якщо розмір кластера складає 8 секторів, то для збереження одного байта буде використано 4 кілобайта дискової пам'яті.

    При використанні FAT 16-бітового формату операційна система може працювати з диском, що має розмір більш 32 мегабайт. DOS версії 4.0 при використанні 16-бітового формату FAT і кластерів розміром 4 сектори може працювати з розділами, які по розміру досягають 134 мегабайт.

    Як програма визначає формат FAT.

    Для DOS версії 3.0 16-бітовій формат використовується, якщо розмір диска перевищує 4086 кластерів. Це число утворилося виходячи з того, що в 12 розрядах може бути подане максимальне число 4096, крім того, значення, більші 0ff6, зарезервовані.

    Для DOS версії 3.2 16-бітовій формат FAT використовується в тому випадку, коли розмір диска перевищує 20790 секторів (саме секторів, а не кластерів). Фактично це означає, що 16-бітовій формат використовується тільки для дисків, що мають розмір більш 10 мегабайт.

    Сектор завантажувального запису (BOOT-сектор) диска, відформатованого в DOS версії 4.0 у полі зі зсувом 36h містить вісьмібайтовій рядок, що ідентифікує формат FAT. Вона має вигляд "FAT12" або "FAT16". Можна використовувати це поле для визначення формату FAT. У структурі BOOT, описаної у файлі sysp. h, це поле назіваетcя fat_format.

    Якщо рзділі на жорсткому диску створювалися утілітою DOS FDISK, формат FAT можна визначити, аналізуючи вміст поля sys головного завантажувального запису (Master Boot Record). Якщо це поле містить значення 1, використовується 12-бітовій формат, якщо 4 - 16-бітовій. Проте диск, підготовлений програмами диск-менеджерів, може мати нестандартний для DOS формат таблиці розділів диска (Partition Table), і поле sys може містити інші розміри, відмінні від 1 і 4.

    Формат FAT.

    Перший байт FAT називається "Опісувач середовища" (Media Descriptor) або байт ID ідентифікації FAT. Він має таке ж значення, як і байт-опісувач середовища, що знаходиться в BOOT-секторі логічного диска.

    Наступні 5 байтів для 12-бітового формату або 7 байтів для 16-бітового формату завжди містять значення 0ffh.

    Вся інша частина FAT складається з 12-бітових або 16-бітових комірок, кожна комірка відповідає одному кластеру диска. Ці комірки можуть містити такі значення: FAT12 FAT16

    Що означає 000h0000h - вільний кластер,

    ff0h -- ff6hfff0h - fff6h - зарезервований кластер,

    ff7hfff7h - Поганий кластер,

    ff8h -- fffhfff8h - ffffh - останній кластер у списку,

    002h -- fefh0002h - ffefh - номер такого кластера в списку.

    Безпосередній доступ до FAT може знадобитися для:

    організації сканування каталогів для пошуку потрібних файлів;

    для читання каталогів як файлів;

    для організації захисту інформації від несанкціонованого копіювання.

    Загальна схема використання FAT така:

    • Читаємо FAT у пам'ять. Як уже зазначалося FAT розташовується відразу після BOOT-сектора (логічний сектор із номером 1). Для точного визначення початкового сектора FAT потрібно прочитати у пам'ять BOOT-сектор і проаналізувати вміст блоку параметрів BIOS. У поле ressecs записана кількість зарезервованих секторів, що розташовуються перед FAT. Поле fatsize містить розмір FAT у секторах. Крім того, варто враховувати, що на диску може знаходитися декілька копій FAT. Операційна система використовує тільки першу копію, інші потрібні для утіліт відновлення вмісту диска. Кількість копій FAT знаходиться в полі fatcnt BOOT-сектора.

    • Потім необхідно визначити номер першого кластера файла, для якого необхідно визначити його розташування на диску.

    • Використовуємо номер першого кластера як індекс у FAT для отримання номера такого кластера.

    Повторюємо цю процедуру доти, поки отримане з FAT значення не буде відповідати кінцю файлу.

    Процедура витягу номера кластера з FAT залежить від формату таблиці розміщення файлів.

    16-бітову FAT можна уявити як масив 16-бітових чисел. Для визначення номера такого кластера треба просто отримати 16-бітове значення з FAT, використавши в якості індексу номер попереднього кластера.

    Для 12-бітової FAT процедура значно складніша.

    Необхідно виконати такі дії:

    • помножити номер початкового кластера на 3.

    • Розділити результат на 2 (тому що кожний елемент таблиці має довжину 1.5 байта).

    • Прочитати 16-бітове слово з FAT, використовуючи в якості зсуву значення, отримане після ділення на 2.

    • Якщо номер початкового кластера парний, на вибране з FAT слово треба накласти маску 0fffh, залишивши молодші 12 бітів. Якщо номер початкового кластерів не парний, вибране з FAT значення необхідно зсунути вправо на 4 біта, залишивши старші 12 біт.

    • Отриманий результат - номер такого кластера в ланцюгу, значення 0fffh відповідає кінцю ланцюга кластерів.

    Файлова система (DOS) має деревоподібну структуру. У кореневому каталозі розташовуються 32-байтові елементи, що містять інформацію про файли й інші каталоги. Для читання кореневого каталога необхідно визначити його розташування і розмір.

    Коренева каталог знаходиться відразу за останньою копією FAT. Кількість секторів, що займаються однією копією FAT, знаходиться в блоці параметрів BIOS у BOOT-секторі в полі fatsize, кількість копій FAT - у полі fatcnt блоку BPB. Отже, перед кореневим каталогом знаходиться один BOOT-сектор і (fatcnt_ * _fatsize) секторів таблиці розміщення файлів FAT.

    Розмір кореневого каталога можна визначити виходячи із значення поля rootsize. У цьому полі при форматуванні диска записується максимальна кількість файлів і каталогів, що можуть знаходитися в кореневому каталозі. Для кожного елемента в каталозі виділяється 32 байта, тому кореневих каталог має довжину (32_ * _rootsize) байтів.

    Після кореневого каталога на логічному диску знаходиться область файлів і підкаталогів кореневого каталогу. На малюнку зображені всі області логічного диска. Таку структуру мають логічні диски, розташовані в розділах жорстких дисків, а також дискети.

    Області логічного диска Номер початкового сектора на логічному диску

    +----------------------+

    :: 0

    : BOOT-сектор і:

    : зарезервовані:

    : сектори:

    ::

    +------------------- :

    :: ressecs - кількість резервних

    : Перша копія FAT: секторів

    :

    +------------------- :

    :: ressecs + fatsize

    : Друга копія FAT:

    ::

    +------------------- :

    :: ressecs + (fatsize * fatcnt)

    : Коренева каталог:

    ::

    +------------------- :

    :: ressecs + (fatsize * fatcnt) +

    : Область даних: sectsize_/_ (32 * rootsize)

    ::

    +------------------- +

    FAT захищеного режиму.

    FAT захищеного режиму - це стандартна файлова система, яка використовується Windows 95 для пристроїв масової пам `яті, наприклад, для дісководів і жорстких дисків. FAT захищеного режиму сумісна з FAT MS-DOS і також зберігає інформацію про вміст диску на основі таблиці розміщення файлів і записів в каталогах. Крім того, FAT захищеного режиму підтримує довгі імена і зберігає дату і час створення файлу, а також дату останнього доступу.

    У FAT захищеного режиму допустимі імена файлів довжиною до 256 символів, включаючи нульовий завершаючій символ. В цьму плані вона схожа з фйловою системою Microsoft Windows NT (NTFS), яка теж працює з довжиною файлів до 256 символів. Довжина шляху в FAT захищеного режиму (без імені самого файлу) може бути до 246 символів (сюди входять імя диску, дві крапки і зворотній слеш). максимальне число символів в повному імені файлів (разом з іменем диска, Двокрапка, шляхом і завершаючім нульовим символом) рівне 260.

    Коли додаток створює файл чи каталог з довгими іменами, січтема автоматично генерує для нього відповідний псевдонім в стандартному форматі "8.3", використовуючи ті символи, які допустимі в FAT MS-DOS. до них відносять любі комбінації латинських букв, цифр ісімволів з ASCII-кодами більше 127, а також пробєл іспеціальні символи:

    !%()_-@`~{}&#^$'

    Не дивлячись на те, що пробєл допустимий в іменах файлів та каталогів у попередніх версіях DOS, багато додатків не признаються їх. По цій причині операційна система, генеруйчі псевдонім для довгих імен, не використовує пропєлі. Крім того, MS-DOS не відрізняє в іменах файлів і каталогів букви верхнього і нижнього регістрів, це поширюється і на псевдоніми.

    Windows 95 зберігає регістр букв, вказаних в довгих іменах файлів. Але FAT захищеного режиму, не враховує регістр букв, і не дозволить створити в одному каталозі двох файлів наприклад з такими іменами FileName і filename.

    Операційні та файлові системи FAT .

    Сьогодні FAT явно не є найдосконалішою з файлових систем, хоча і підтримується всіма ОС. Майже кожна операційна система пропонує власні формати, які мають переваги у відношенні збереження даних, швидкості доступу, використання об'єму жорсткого диску і т.п. Так, наприклад, при застосуванні Windows NT слід вибирати NTFS, якщо основними вимогами є надійність і швидкість. Правда при певних обставинах можна само заблокувати, якщо із-за проблем в апаратній частині чи в програмному забезпеченні виявиться неможливим запустити цю операційну систему. До цих даних не можна буде звернутися навіть з допомогою іншої операційної системи.

    До файлової системи FAT16 може звертатися практично люба ОС. Якщо створити первинний розділ в цьому форматі і якщо цей розділ має розмір до 1ГБ, то це найкращі умови для інсталяції декількох різних операційних систем на одному ПК. Існуючі розділи можуть зменшуватися або ділитися без втрати даних лише з допомогою комерційних допоміжних програм, наприклад Partition Magic.

    Користувач, який бажає розмістити на одному ПК довільну комбінацію самостійно загружаючіх систем DOS, Windows 95/98 i NT 4.0 з можливістю сумісного доступу до масивів, не обійдеться без FAT16. Правда, перевага сумісного використання масивів даних і програм протистоять деякі недоліки.

    Під традиційними версіями MS-DOS включно до версії 6,22 неможливо, наприклад, мати безпосередній доступ до файлів з довгими іменами, які використовуються Windows 95/98 або NT 4.0; такий доступ можна мати лише до файлів скороченими до 8 символів іменами MS-DOS і розширенням з трьох символів (формат 8.3). Якщо ви записуєте, переносите чи копіюєте в MS-DOS 6.22 і більш ранніх версіях файл, що має довге ім'я, то таке ім'я обрізається до формату 8.3.

    Ще непріємнішім є те, що деякі DOS чи Windows-програми оптимізації файлової системи при використанні їх у файлових системах Windows 95/98 чи NT 4.0 замість користі приносять шкоду, тому що заплутують таблицю розміщення файлів і структури діректорій (наприклад, більш старі версії Norton Disk Doctor). Таким чином, програми DOS, які безпосередньо маніпулюють структурами діректорій або FAT, застосовувати на FAT16 не можна.

    Ще один недолік файлового формату FAT16 максимальна ємність диску: з його використанням можна адресувати лише 2047 МБ на одному розділі. До того ж ці трохи більше 2 ГБ використовують ще дещо більше пам'яті оскільки FAT16 в цьому випадку розмір кластерів у 32 КБ. Це стає замітнім при великій кількості малих файлів. Навіть дуже малі файли в любому випадку займають не менше 32КБ пам'яті жорсткого диску.

    FAT32 підтримується Windows 95 OSR2, Windows 98 і Linux (починаючи з Kernel 2.0.34), а також майбутньою Windows NT5.0 файлова система FAT32 дозволяє установити мінімальний розмір кластерів всього в 4КБ (замість 32КБ) навіть для дисків ємністю до 8 Гбайт. FAT12 і FAT16 вони також підтримують. Старіші версії Windows 95, NT 4.x, Linux, нажаль, не підтримують FAT32. Таким чином, для обміну даними між любими операційними системами у випадку використання файлової системи FAT32 шлях закритий.        

    ОС/Файл. Система         

    FAT16         

    FAT32             

    DOS/Windows   3.x         

    +         

    -             

    Windows   95         

    +         

    (+) починаючи з OSR2             

    Windows   98         

    +         

    +             

    Windows   NT до 4.х

            

    +         

    -             

    Windows   NT 5.0 (*)         

    +         

    +             

    OS/2         

    +         

    -             

    Linux         

    +         

    (+) починаючи з ядра 2.0.34     

    Файлова система FAT не допускає, щоб були логічні диски, каталоги, файли з однаковими ідентіфікаторамі!

    ЗАБОРОНЯЄТЬСЯ у повному імені файла використовувати пробєл!

    Приклади допустимих імен файлів:

    Format. com Read. me MyFyle. txt 28-03-96. doc 123. 45

    Приклади НЕ допустимих імен файлів:

    123456789.txt aa?. doc 35 *.? It.F.doc. Txt

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status