Накопичувач на жорстких магнітних дисках або НЖМД (англ. Hard (magnetic) disk drive, HDD, HMDD), жорсткий диск, в комп'ютерному сленгу «вінчестер» - пристрій, що запам'ятовує (пристрій зберігання інформації) довільного доступу, засноване на принципі магнітного запису. Є основним накопичувачем даних в більшості комп'ютерів.
На відміну від «гнучкого» диска (дискети), інформація в НЖМД записується на жорсткі (алюмінієві або скляні) пластини, покриті шаром феромагнітного матеріалу, найчастіше двоокису хрому - магнітні диски. У НЖМД використовується одна або кілька пластин на одній осі. Зчитувальні головки в робочому режимі не торкаються поверхні пластин завдяки прошарку набігаючого потоку повітря, що утворюється у поверхні при швидкому обертанні. Відстань між головкою і диском складає декілька нанометрів (у сучасних дисках близько 10 нм [1]), а відсутність механічного контакту забезпечує довгий термін служби пристрою. При відсутності обертання дисків головки знаходяться у шпінделя або за межами диска в безпечній ( «паркувальної») зоні, де виключений їх нештатний контакт з поверхнею дисків.
Також, на відміну від гнучкого диска, носій інформації зазвичай поєднують з накопичувачем, приводом і блоком електроніки. Такі жорсткі диски часто використовуються в якості незнімного носія інформації
2. Історія створення жорсткого диска
Вінчестер являє собою пристрій зберігання даних з обертовими всередині дисками. І хоча сучасна електроніка, зокрема мобільні пристрої, переходять на твердотельную пам'ять, вінчестер або як його ще називають «жорсткий диск» залишив цілком істотний слід в історії розвитку комп'ютерної техніки і його історію потрібно обов'язково розповісти.
Жорсткий диск - дивовижне пристрій, створене з використанням безлічі технологій і завдяки безлічі попередніх його появи відкриттів в електроніці. Але все відкриття та пристрої зберігання даних, які були створені до появи вінчестера, ми розглядати не будемо, а торкнемося лише ті події, які стосуються безпосередньо жорсткого диска. Тим більше, що його історія дещо незвична, так як стосується історії появи цілих компанії в області створення комп'ютерної техніки.
Зрозуміло, що при таких розмірах IBM 350 RAMAC не міг стати масово випускається продуктом. Проте, аж до 1979 року компанія утримувала першість в області створення дискових пристроїв для зберігання даних. Інженери саме цієї компанії в 1961 році додумалися до ідеї, що зчитують головки можуть підніматися і парити над поверхнею дисків тільки за рахунок потоку повітря.
Лише в 1979 році у IBM з'явився конкурент в особі новоствореної компанії Seagate Technology - одного з найвідоміших виробників жорстких дисків в наш час. Та й то, творцем і першим ідейним натхненником компанії став колишній інженер IBM Алан Шугарт, який брав безпосередню участь у створенні 350 RAMAC. Не дивлячись на це, саме Seagate в 1980 році вдалося створити і випустити на ринок перший в світі серійний жорсткий диск. Перша модель компанії називалася ST-506. При обсязі в 5 Мб вона мала розмір в діаметрі всього 5,25 дюйма.
У 1981 році, всього через рік, Seagate випускає наступну модель ST-412 об'ємом 10 Мб. Неймовірний на ті часи обсяг інформації, що зберігається і вельми скромні розміри дозволили новому диску залишити досить помітний слід в історії комп'ютерної техніки. Саме ST-412 використовувався в персональних комп'ютерах, які стали згодом легендарними - IBM PC / AT і IBM PC / XT. Мабуть давній конкурент компанія IBM вирішила зосередитися на створенні персональних комп'ютерів, поступившись ринок комплектуючих більш молодим компаніям.
Взагалі, якщо подивитися історію жорсткого диска, то вже через 4 роки після виходу на ринок першого ST-412 почався справжній бум розвитку і створення вінчестерів. Багато компаній, що спеціалізуються на виробництві електронних компонентів і побутової електроніки переорієнтувалися для створення жорстких дисків. Тож не дивно, адже саме в той час стрімко розвивалися і самі персональні комп'ютери. Їх постійно розширюється ринок не міг залишити осторонь, компанії, які мали всі ресурси для розробки і створення комп'ютерних комплектуючих.
3. Пристрій жорсткого диска
Більшість користувачів, відповідаючи на питання, що знаходиться в їх системному блоці, крім іншого згадують вінчестер. Вінчестер - це пристрій, на якому найчастіше зберігаються Ваші дані. Існує легенда, що пояснює, чому за жорсткими дисками повелося таке химерне назву. Перший жорсткий диск, випущений в Америці на початку 70-х років, мав ємність по 30 Мб інформації на кожній робочій поверхні. У той же час, широко відома в тій же Америці магазинна гвинтівка О. Ф. Вінчестера мала калібр - 0.30; може гуркотів при своїй роботі перший вінчестер як автомат або порохом від нього пахло - не знаю, але з того часу стали називати жорсткі диски вінчестерами.
В процесі роботи комп'ютера трапляються збої. Віруси, перебої енергопостачання, програмні помилки - все це може послужити причиною пошкодження інформації, що зберігається на жорсткому диску. Пошкодження інформації далеко не завжди означає її втрату, так що корисно знати про те, як вона зберігається на жорсткому диску, бо тоді її можна відновити. Тоді, наприклад, в разі пошкодження вірусом завантажувального області, зовсім не обов'язково форматувати весь диск (!), А, відновивши пошкоджене місце, продовжити нормальну роботу зі збереженням усіх своїх безцінних даних.
З одного боку, в процесі написання цієї статті я ставив для себе завданням розповісти Вам:
про принципи запису інформації на жорсткий диск;
про розміщення і завантаженні операційної системи;
про те як грамотно розділити Ваш новий вінчестер на розділи з метою використовувати декілька операційних систем.
З іншого боку, я хочу підготувати читача до другої статті, в якій я розповім про програми, які називаються boot manager-ами. Для того щоб розуміти, як працюють ці програми, потрібно володіти базовими знаннями про такі речі як MBR, Partitions і т. Д.
Досить загальних слів - приступимо.
Жорсткий диск (НDD - Hard Disk Drive) влаштований таким чином: на шпинделі, сполученим з електромотором, розташований блок з декількох дисків (млинців), над поверхнею яких знаходяться головки для читання / запису інформації. Форма голівках надається у вигляді крила і кріпляться вони на серпоподібний поводок. При роботі вони "летять" над поверхнею дисків в повітряному потоці, який створюється при обертанні цих же дисків. Очевидно, що підйомна сила залежить від тиску повітря на головки. Воно ж, в свою чергу, залежить від зовнішнього атмосферного тиску. Тому деякі виробники вказують в специфікації на свої пристрої граничний стелю експлуатації (наприклад, 3000 м). Ну чим не літак? Диск розбитий на доріжки (або треки), які в свою чергу поділені на сектори. Дві доріжки, рівновіддалені від центру, але розташовані по різні боки диска, називаються циліндрами.
На жаль, досить часто відбувається плутанина між такими поняттями як "сектор", "кластер" і "блок". Фактично, між "блоком" і "сектором" різниці немає. Правда, одне поняття логічне, а друге топологічне. "Кластер" - це кілька секторів, що розглядаються операційною системою як одне ціле. Чому не відмовилися від простої роботи з секторами? Відповім. Перехід до кластерів відбувся тому, що розмір таблиці FAT був обмежений, а розмір диска збільшувався. У разі FAT16 для диска об'ємом 512 Мб кластер буде складати 8 КБ, до 1 Гб - 16 Кб, до 2 Гб - 32 Кб і так далі.
lba = (cyl * HEADS + head) * SECTORS + (sector-1);
Не можна не сказати кілька слів і про Large Mode. Цей режим роботи призначений для роботи жорстких дисків об'ємом до 1 Гб. У Large Mode кількість логічних головок збільшується до 32, а кількість логічних циліндрів зменшується вдвічі. При цьому звертання до логічних головок 0..F транслюються в парні фізичні циліндри, а звертання до головок 10..1F - в непарні. Вінчестер, розмічений в режимі LBA, несумісний з режимом Large, і навпаки.
Розділи є контейнерами усього свого вмісту. Цим вмістом є, як правило, файлова система. Під файлової системою з точки зору диска розуміється система розмітки блоків для зберігання файлів. Після того, як на розділі створена файлова система і в ній розміщені файли операційної системи, розділ може стати завантажуваних. Завантаження розділ має в своєму першому блоці невелику програму, яка виробляє завантаження операційної системи. Однак для завантаження певної системи потрібно явно запустити її завантажувальну програму з першого блоку. Про те, як це відбувається, буде розказано трохи нижче.
Розділи з файловими системами не повинні перетинатися. Це пов'язано з тим, що дві різні файлові системи мають кожна своє уявлення про розміщення файлів, але коли це розміщення припадає на один і той же фізичний місце на диску, між файловими системами виникає конфлікт. Цей конфлікт виникає не відразу, а лише в міру того, як файли починають розміщуватися в тому місці диска, де розділи перетинаються. Тому слід уважно ставитися до поділу диска на розділи.
Само по собі перетин розділів безпечно. Небезпечно саме розміщення декількох файлових систем на пересічних розділах. Розмітка диска на розділи ще не означає створення файлових систем. Однак, вже сама спроба створення порожньої файлової системи (тобто форматування), на одному з пересічних розділів може призвести до виникнення помилок у файловій системі іншого розділу. Все сказане стосується однаковою мірою до всіх операційних систем, а не тільки найпопулярнішим.
Диск розбивається на розділи програмним шляхом. Тобто, Ви можете створити довільну конфігурацію розділів. Інформація про розбиття диска зберігається в самому першому блоці жорсткого диска, званим головним завантажувальним записом (Master Boot Record (MBR)).
MBR є основним засобом завантаження з жорсткого диска, підтримуваним BIOS. Для наочності наведемо вміст завантажувального області у вигляді схеми:
Все те що знаходиться по зсуву 01BEh-01FDh називається таблицею розділів. Ви бачите, що в ній чотири розділи. Тільки один з чотирьох розділів має право бути поміченим як активний, що буде означати, що програма завантаження повинна завантажити в пам'ять перший сектор саме цього розділу і передати туди управління. Останні два байта MBR повинні містити число 0xAA55. За наявності цієї сигнатури BIOS перевіряє, що перший блок був завантажений успішно. Сигнатура ця вибрана не випадково. Її успішна перевірка дозволяє встановити, що всі лінії даних можуть передавати і нулі, і одиниці.
Програма завантаження переглядає таблицю розділів, вибирає з них активний, завантажує перший блок цього розділу і передає туди управління.
Давайте подивимося як влаштований дескриптор розділу:
Розміщення даних на диску
Швидкість обміну між процесором і диском
Інтерфейс (IDE або SCSI)
Опишемо, для початку, як фізично влаштований жорсткий диск.
На жорсткому диску дані зберігаються на магнітній поверхні диска. Інформація записується і знімається за допомогою магнітних головок (все майже як в магнітофоні). Всередині жорсткого диска може бути встановлено кілька пластин (дисків), в просторіччі іменовані "млинцями". Двигун, що обертає диск, включається при подачі живлення на диск і залишається включеним до зняття пітанія.ПРІМЕЧАНІЕ. Якщо в розділі Power Management програми Setup з BIOS встановлений параметр виключення жорсткого диска при відсутності звернення до нього, то двигун може бути вимкнений програмою BIOS.
Двигун обертається з постійною швидкістю, вимірюваної в оборотах в хвилину (rpm). Дані організовані на диску в циліндрах, доріжках і секторах. Циліндри - концентричні доріжки на дисках, розташовані одна над іншою. Доріжка потім розділяється на сектори. Диск має магнітний шар на кожній своїй стороні. Кожна пара головок одягнена як би на "вилку", що охоплюватиме кожен диск. Ця "вилка" переміщається над поверхнею диска за допомогою окремого серводвігателя (а не крокової, як часто помилково думають - кроковий двигун не дозволяє швидко переміщатися над поверхнею). Всі жорсткі диски мають резервні сектора, які використовуються його схемою управління, якщо на диску виявлені дефектні сектора.
Зазвичай сучасні жорсткі диски мають швидкість обертання від 5400 до 7200 об / м. Чим вище швидкість обертання, тим вище швидкість обміну даними. Слід тільки врахувати, що при зростанні швидкості обертання збільшується температура корпусу жорсткого диска і диски зі швидкістю 7200 об / хв вимагають або застосування корпусу з продуманою для цілей відведення тепла конструкцією, або додаткового охолодження зовнішнім вентилятором власне диска. Вентилятора блоку живлення для цього недостатньо. Ще більш високооборотні диски зі швидкістю обертання 10000 об / хв, які зараз випускають все без винятку фірми-виробники, вимагають як гарну вентиляцію всередині корпусу, так і "правильного" корпусу, добре відводить тепло. Жорсткі диски на 15000 об / хв без примусового обдування просто не рекомендується використовувати.
Кількість секторів на доріжці
Сучасні жорсткі диски мають різну кількість секторів на доріжці в залежності від того, зовнішня чи це доріжка або внутрішня. Зовнішня доріжка довше і на ній можна розмістити більше секторів, ніж на більш короткій внутрішній доріжці. Дані на чистий диск починають записуватися також з зовнішньої доріжки.
Час пошуку / час перемикання головок / час перемикання між циліндрами
Час пошуку (seek time) мінімально тільки в разі потреби операції з доріжкою, яка є сусідній з тією, над якою в даний момент знаходиться головка. Найбільше час пошуку відповідно при переході з першої доріжки на останню. Як правило, в паспортних даних на жорсткий диск вказується середній час пошуку (average seek time).
Всі магнітні головки диска знаходяться в кожен момент часу над одним і тим же циліндром, і час перемикання визначається тим, наскільки швидко виконується перемикання між головками при читанні або запису.
Час перемикання між циліндрами - це час, необхідний для переміщення головок на один циліндр вперед або назад.
Всі часи вказуються в документації на жорсткі диски в мілісекундах (ms).
затримка позиціонування
Після того, як головка виявляється над бажаної доріжкою, вона чекає появи необхідного сектора на цій доріжці. Це час називається затримкою позиціонування і також вимірюється в мілісекундах (ms). Середній час затримки позиціонування вважається як час повороту диска на 180 градусів і, тому залежить тільки від швидкості обертання шпинделя диска. Конкретні дані по величині затримки зведені в таблицю.
Час доступу до даних
Час доступу до даних по суті - це комбінація з часу пошуку, часу перемикання головок і затримки позиціонування, вимірюється також в мілісекундах (ms). Час пошуку, як вам уже відомо, це тільки показник того, як швидко головка виявляється над потрібним циліндром. До тих пір, поки дані не записані або прочитані, слід додати час на перемикання головок і на очікування необхідного сектора.
Кеш-пам'ять на жорсткому диску
Як правило, на всіх сучасних жорстких дисках є власна оперативна пам'ять, яка називається кеш-пам'яттю (cache memory) або просто кешем. Виробники жорстких дисків часто називають цю пам'ять буферної. Розмір і структура кеша у фірм-виробників і для різних моделей жорстких дисків істотно відрізняються. Зазвичай кеш пам'ять використовується як для запису даних так і для читання, але на SCSI дисках іноді потрібно примусове дозвіл кешування запису, так зазвичай за умовчанням кешування запису на диск для SCSI заборонено. Є програми, що дозволяють, визначити, як встановлено параметри кеш-пам'яті, наприклад ASPIID від фірми Seagate. Як це багатьом не здасться дивним, розмір кешу не є визначальним для оцінки ефективності його роботи. Організація обміну даними з кешем важливіша для підвищення швидкодії диска в цілому.
Деякі виробники жорстких дисків, такі як Quantum, використовують частину кеша під своє програмне забезпечення (для моделі Quantum Fireball 1.3 Gb, наприклад, під firmware зайнято 48 Kb з 128). Як нам здається, більш кращий спосіб, який використовується фірмою Western Digital. Для зберігання firmware використовуються спеціально відведені сектора на диску, невидимі для будь-яких операційних систем. За включення харчування ця програма завантажується в звичайну дешеву DRAM на диску і при цьому відпадають витрати на мікросхему флеш-пам'яті для зберігання firmware. Такий спосіб дозволяє легко виправляти вбудоване програмне забезпечення жорсткого диска, що часто фірма Western Digital і робить.