Контакти

Як перемикаються режими pio dma Несподіване гальмування HDD чому і як вилікувалося. Боротьба з режимом PIO. Можливі режими роботи жорсткого диска

Привіт усім читачам блогу. У статті поговоримо у тому, як відновити продуктивність системи. Часто у користувачів виникає проблема дуже повільної роботикомп'ютера, особливо під час записуі при читаннідисків, або просто необґрунтовані «гальма» системи під час роботи чи завантаження. Чому система зависає читайте
Причин виникнення цього може бути безліч, сьогодні пропоную розглянути досить поширену – це неправильний режим роботи CD/DVD - ROM'аабо жорстких дисків , тобто поговоримо про PIO та DMA.Як перевірити жорсткий дискна помилки та усунути їх читайте

У чому суть і різниця PIO та DMA.

PIO та DMA- це два режими роботи жорстких дисків, у випадку будь-якого приводу.
PIO (Programmable Input/Output)- вже застарілий режим, для роботи йому потрібно
задіятицентральний процесор, що призводить до значної втрати продуктивності.
DMA (Direct MemoryAccess)- сучасний метод, який мине процесор і
звертається безпосередньодо оперативної пам'яті, це дозволяє значно збільшити продуктивністьі позбутися надокучливих «гальм».
Режим DMA у різних варіантах вже давно використовується в операційних системах Windows 7, 8, а також 10, однак у Windows XP,часто трапляється ситуація в якій DMA автоматично перемикається на PIOі вже вивести його звичайними методами не вдасться. Через що виникає ця ситуація?
У Windows XP впровадженомеханізм контролю помилок, якщо під час читання з жорсткого дискаабо іншого приводу занадто часто виникають помилки, то система автоматично переходить у повільніший режим, де їх відсоток менше. Проте, Windows XPможе перевести в такий режим і пристрій, що нормально працює.
Як усунути помилки Windows читайте

І так, перевіримо режими роботи всіх приводів, щоб система не гальмувала.

1 . Запускаємо консоль «Керування комп'ютером»- Правою кнопкою на "Мій комп'ютер"


у випадаючому меню вибираємо пункт "Диспетчер пристроїв", або через
Панель управління.Або Пуск - Виконати - devmgmt.msc

2. Вибираємо « Диспетчер пристроїв", вибираємо IDE ATA/ATAPI контролери,


відкриється кілька рядків із контролерами – нас цікавлять :
Первинний та Вториннийканали IDE→ заходимо по черзі в властивостіцих каналів (правою кнопкою на каналі, рядок « Властивості»), в закладку « Додаткові параметри» ,
тут виділено дві групи «Пристрій 0» та «Пристрій 1», у кожному є рядки
"Режим передачі"– у ній має бути обрано «DMA, якщо доступно», далі рядок "Поточний режим передачі", має бути щось типу «Режим ультра DMA:4,


якщо тут стоїть "Режим PIO", то це якраз нашвипадок і ми будемо його виправляти.
Якщо скрізьстоїть режим ультра DMA,то у Вас все в порядку та подальші дії можна не продовжувати.
3. Для початку спробуємо виправити вручну – у кожному рядку "Режим передачі" ставимо "DMA, якщо доступно", тиснемо "ОК"та перезавантажуємо комп'ютер. Після включення знову
дивимося режими роботи каналів, якщо скрізь стоїть DMA, то все гаразд, якщо залишився PIO, то продовжуємо далі.
4. Знову знайдіть Первинний та Вторинний канали IDEта видаліть їх (правою кнопкою на кожному каналі, у списку вибираємо "Видалити"). Не бійтеся, все нормально працюватиме.
Знову перезавантажте комп'ютер – Windows XP знайде контролериі переведе їх у швидкий режим роботи, тобто в DMA. Перевірте результат, скрізь має стояти режим DMA.
5. Якщо все перераховане не допомогло і у Вас знову висвічується Режим PIO»тоді необхідно буде переставити драйверадля материнської плати– перевантажитись
та знову перевірити результат.
6. Ну і останній пункт, якщо після всіх страждань режим PIOтак і не пропав, тоді доведеться підредагувати в реєстрі.Хочу зазначити – робіть будь-які операції з
реєстром дуже обережно та уважно, будь-яка неправильна дія може призвести до повної непрацездатності Вашої системи. Найкраще зробити заздалегідь копію реєстру.
Як настроїти Windows XP за допомогою реєстру читайте

Спершу спробуйте вимкнути систему контролю помилок.
Для цього у гілці реєстру:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdfs\,
створіть ключ ErrorControlта встановіть його значення рівним 0.


Після цього перевантажтеся та виконайте пункт №4.


у ній можна вручну виставити режим DMA.
Тут розміщуються кілька папок - 0000, 0001, 0002.
0000 - відповідає за сам контролер;
0001 - відповідає за Secondary IDE Chanell;
0002 – відповідає за Primary IDE Chanell;
Відкриваємо папку для потрібного каналу. У ній знаходяться
кілька ключів, для початку вибираємо:
MasteDeviceTimingModeAllowed
SlaveDeviceTimingModeAllowed
і проставляємо значення рівне 0хffffffff.
Після цього виставляємо значення наступних ключів:
MasterDeviceTimingMode
SlaveDeviceTimingMode
відповідно до таких даних, залежно від
підтримуваного UDMA - режим:
UDMA Mode 2 – 0×2010
UDMA Mode 4 – 0×8010
UDMA Mode 5 – 0×10010
UDMA Mode 6 – 0xffff

Після цього перевантажтеся та перевірте результат – має все нормально працювати.

Як прискорити та відновити продуктивність Windows 10, читайте
Яка швидкість передачі інформації в комп'ютерах читайте
Сподіваюся ця стаття допоможе Вам правильно виставити режими PIO та DMAта підвищити загальну продуктивність системи.

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

Можливі режими роботи жорсткого диска

У HDD є можливість працювати з даними у двох режимах: застарілий PIO та новий DMA. Вони кардинально відрізняються принципом своєї роботи та, відповідно, швидкістю обробки даних. Так у режимі PIO всі дані обробляються за допомогою процесора, що сильно його навантажує і, як наслідок, призводить до падіння загальної продуктивності системи. А ось режим DMA – це вже апаратна обробка даних, при якій використовуються різноманітні прискорювачі і ЦП у цьому процесі не бере участі.

Мимовільне перемикання Віндовс на режим PIO та ознаки цього

Windows за замовчуванням працює з HDD у швидкісному режимі DMA, але іноді через специфічні помилки самостійно переключається в режим PIO. Причому назад увімкнути DMA дуже проблематично і зробити це стандартними способамипрактично неможливо. Характерні ознаки того, що Windows переключилася на роботу з жорстким диском в режим PIO:

Падіння швидкості роботи з HDD у кілька разів;
Повільна швидкість роботи системи під час дискових операцій;
Надмірне завантаження процесора (80-90%) під час роботи з жорстким диском;
Система почала "гальмувати" різко. Тобто ще годину тому все було нормально, а потім різко виникли проблеми.

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

1. Натисніть правою клавішею миші на піктограму "Мій комп'ютер" та виберіть пункт "Керування";

2. Розкрийте гілку контролера і знайдіть канал, до якого підключено жорсткий диск;
3. Натисніть на ньому праву клавішумиші, зайдіть у «Властивості» та перейдіть на «Додаткові параметри»;
4. Перегляньте рядок «Поточний режим передачі». Якщо там написано «Режим DMA», то все нормально, а от якщо «Режим PIO», то вам доведеться зробити кілька нескладних операцій і повернути диск у кращий режим роботи.

Включаємо режим DMA

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

Якщо з якоїсь причини вам не вдається включити DMA першим способом, тоді вам доведеться докласти трохи більше зусиль і використовувати редактор реєстру. Зробіть таке:

  1. Натисніть Win+R і надрукуйте в рядку, що з'явився команду regedit;
  2. Перейдітьдороги HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\(4D36Е96A-Е325-11CE-BFC1-08002BE10318);

  1. Знайдіть рядок MasterDeviceTimingModeAllowed.
  2. Якщо в колонці значення цього рядка написано 0х00000001f, це означає, що ваш жорсткий диск дійсно працює в режимі PIO;
  3. Змініть значення на 0xffffffff та перезавантажте комп'ютер.

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

Для передачі між вінчестером і пам'яттю PC використовуються два основних режими:

    режим програмного введення/виводу (Programmed Input/Output, PIO);

    режим прямого доступу до пам'яті (Direct Memory Access, DMA).

Режим pio

У режимі PIO кожен байт інформації з жорсткого диска спочатку зчитується центральним процесором і потім записується в оперативну пам'ять. Залежно від тривалості циклу зчитування та кількості секторів, що передаються за одне звернення до диска, розрізняють режими PIO (PIO Mode 0), PIO1, PIO2, PIOЗ, PI04, PI05.

Режим dma

Режими PIO використовуються в однозадачних операційних системах, коли процесор комп'ютера зчитує або записує дані в буферну пам'ятьнакопичувача на жорстких дисках стандартів IDE або EIDE, потім ці дані передаються в оперативну пам'ять. У багатозадачних операційні системи доцільно використовувати режими прямого доступу до оперативної пам'яті (Direct Memory Access, DMA). Введення/виведення даних у цьому режимі здійснюється в оперативну пам'ять PC без участі CPU. Цей процес відбувається під управлінням контролера накопичувача на жорстких дискаху паузах між зверненнями CPU до оперативної пам'яті, що дещо знижує швидкість передачі, але заощаджує процесорний час. Для реалізації режимів DMA, на відміну РЮ, необхідні як спеціальні контролери, і драйвери.

Режими DMA поділяються на однослівні (Singleword) та багатослівні (Multiword) залежно від кількості слів, що передаються за один цикл роботи із системною шиною.

Serial ata (sata)

Подальше збільшення швидкості передачі через паралельний інтерфейс АТА викликало технічні складності. Крім того, виробників PC не влаштовував широкий 40-жильний (або 80 житловий) кабель, який перешкоджає циркуляції повітря всередині корпусу та обмежений завдовжки 46 см.

Тому в 1999 р. було створено робочу групу Serial ATA Working Group, метою якої було створення послідовного інтерфейсу ATA - Serial ATA (SATA). Інтерфейс був представлений у 2001 р. та продемонстрував швидкість передачі даних – 150 Мбайт/с.

Крім того, для підключення кількох пристроїв (HDD, приводи CD-ROM, DVD-ROM та ін.) буде використана не топологія типу "зірка" (коли кожен пристрій необхідно ідентифікувати як Master або Slave), а топологія point-to-point, коли кожен пристрій буде безпосередньо підключено до хост-адаптера (на зразок SCSI- пристроїв).

SCSl (Small Computer System Interface, системний інтерфейс малих комп'ютерів) – це більш універсальний та ефективний інтерфейс, ніж IDE. Однак його апаратна реалізація є значно дорожчою, ніж реалізація інтерфейсу IDE. Інтерфейс SCSI має явні переваги при роботі з відео, а також при використанні приводу CD-ROM у багатозадачному операційному середовищі або як мережному накопичувачі.

Зв'язок між SCSI-пристроєм та шиною вводу/виводу (таких, як ISA, PCI, VLB) здійснюється через зовнішню шину за допомогою Host-адаптера. Пристрої, підключені до SCSI-шини, взаємодіють між собою не безпосередньо, а через вбудовані SCSI-контролери.

Як ви знаєте, Windows 7отримала більш значні покращення у часі завантаження та відгуку системи порівняно з її попередницею Windows Vista . Було внесено суттєві зміни, що дозволили системі не витрачати всю системну пам'ятьпри відкритті великої кількостівікон провідника, оптимізовані системні служби та процеси.


У цій статті ми розглянемо:

Увага!
Зверніть увагу на те, що частина розглянутих методів прискорення роботи Windows 7ґрунтуються на відключенні будь-яких завдань, спрощенні або поліпшенні функціональності системи для зручнішого її використання. Тобто. по суті ви вибираєте між зручністю та продуктивністю.

Шляхи оптимізації Windows 7

1. Прискорення меню пуск.

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

Для цього вам необхідно перейти до налаштування меню пуск: у властивостях «Панель завдань та меню Пуск»(для активації перейдіть до панелі керування Windows 7: Пуск -> Панель керування). Перейдіть до закладки «Меню Пуск»та натисніть на кнопку «Налаштувати».
Рисунок 1. Налаштування меню "Пуск"

Заберіть галочку "Виділяти недавно встановлені програми", після чого натисніть "Застосувати".
Рисунок 2. Вимкнення виділення нещодавно встановлених програм
Щоб зменшити паузу, з появою вікна меню пуск, перейдіть у редактор реєстру (команда "regedit"у діалозі «Знайти програми та файли»).
Рисунок 3. Запуск редактора реєстру
Після запуску редактора реєстру ( regedit.exe) перейдіть у гілку HKEY_CURRENT_USER -> Control Panel-> Desktop(Рис. 4).

Рисунок 4. Вибір необхідної гілки реєстру
Змініть значення ключа MenuShowDelayз "400"на "50". Пауза значно зменшиться.

Рисунок 5. Зміна паузи під час відображення вікна
2. Оптимізація роботи жорсткого диска у Windows 7

Ця опція знайома ще з часів Windows XP, але якщо в XPвона була спочатку включена, то в Windows 7оптимізацію жорстких дисків вважали зайвою і за замовчуванням її відключено. Тепер ми розглянемо спосіб включення даної опції.

Заходимо в Пуск -> Панель керування -> Диспетчер пристроїв -> Дискові пристрої-> (вибираємо свій жорсткий диск) -> Властивості -> Політика...і ставимо там галочку навпроти пункту «Вимкнути очищення буфера кешу записів Windowsдля цього пристрою».
Рисунок 6. Вимкнення очищення буфера кешу записів Windows
Тепер у цьому ж «Диспетчері пристроїв»розкриваємо іншу гілку - "IDE ATA/ATAPI контролери (IDE ATA/ATAPI Controllers)", після чого у властивостях усіх каналів ATA (ATA Channel 0, ATA Channel 1і т.д.) у вкладці « Додаткові налаштування(Advanced Settings)»перевіряємо, чи варто галочка на "Задіяти/Включити DMA (Enable DMA)".
Рисунок 7. Увімкнення режиму DMA
Якщо галочка не стоїть – встановіть її.

3. Прискорення копіювання та переміщення файлів у Windows 7

Windows 7здобула ще одну цікаву особливість - віддалене різницеве ​​стиснення.
З одного боку ця опція обчислює і передає різницю між двома об'єктами, мінімізуючи обсяг даних, але з іншого – це забирає час на калькуляцію.

Ви можете вимкнути цю функцію. Для цього перейдіть до Пуск -> Панель управління -> Програми та компоненти -> Увімкнення та вимкнення компонентів Windows-> Віддалений різницевий стиск (необхідно зняти галочку).

Рисунок 8. Вимкнення різницевого стиснення
4. Вимкнення перевірки цифрового підписудрайверів

Ця дія також може трохи збільшити швидкість роботи системи (при встановленні нових драйверів). Для відключення даної опції Windows 7виконайте наступні дії:

Виконайте в «Пуску» gpedit.msc.
Рисунок 9. Запуск панелі адміністрування
Потім перейдіть наступним шляхом:

Конфігурація користувача -> Адміністративні шаблони -> Система -> Встановлення драйвера -> Цифровий підпис драйверів пристроїв. У цьому вікні потрібно вибрати режим "Відключено".

Рисунок 10. Відключення перевірки цифрового підпису драйверів
5. Прискорення завантаження Windows 7

Ми можемо виграти ще кілька секунд, правда ця порада відноситься до тих користувачів, які працюють на багатоядерних процесорах з Windows 7як операційна система.
Отже, виконайте такі дії:

Введіть MSCONFIGу полі пошуку меню «Пуск»та натисніть клавішу "Enter".

У вікні, перейдіть на вкладку і натисніть на кнопку "Додаткові параметри (Advanced options)".

Рисунок 11. Додаткові параметри оптимізації системиВстановіть прапорець навпроти пункту Число процесорів (Number of processors)і у випадаючому меню під цим пунктом виберіть максимальна кількістьваших ядер (2 або 4).

Рисунок 12. Встановлення кількості процесорів для систем з багатопотоковими процесорами
Натисніть «Ок»та перезавантажте систему, щоб побачити досить відчутну різницю у швидкості завантаження Windows 7.

6. Прискорення перегляду ескізів (мініатюр).

Ви можете збільшити швидкість перегляду ескізів (мініатюр) Windows 7. Для цього вам необхідно виконати такі дії:

Введіть regedit(без лапок) у полі пошуку меню «Пуск»та натисніть клавішу "Enter".

Перейдіть у гілку "HKEY_CURRENT_USER -> Control Panel -> Mouse".

Рисунок 13. Вибір потрібної гілки реєстру для оптимізації паузи під час відображення ескізів
Двічі клацніть на параметрі MouseHoverTimeта змініть його значення на 100 .

Рисунок 14. Встановлення нового значення
7. Зменшення часу вимкнення Windows 7

Час завершення роботи Windows 7можна помітно зменшити. Однак це досить варварський спосіб: ми зменшуємо час, який приділяється процесу на завершення роботи програми, після чого програма буде завершена примусово.

Введіть regeditу полі пошуку меню «Пуск»та натисніть клавішу "Enter".

Перейдіть у гілку HKEY_LOCAL_MACHINE -> System -> CurrentControlSet -> Control.


Рисунок 15. Вибір необхідного ключа реєстру
Змініть значення параметра "WaitToKillServiceTimeout"зі значення 12000 (12 секунд) на 2000 (2 секунди).

Рисунок 16. Зміна значення.

Secondary Master

опції-меню призначення кожному з можливо чотирьох жорстких дисків (E) IDE-інтерфейсу оптимального PIO-режиму (Programmable Input/Output). Можливі значення: "Auto" (за замовчуванням), "Mode 0", "Mode 1", "Mode 2", "Mode 3", "Mode 4". Режими 0...2 відносяться до звичайних IDE-дисків (стандарт ATA), 3 і 4 - до EIDE (ATA-2), режим 5 - до ATA-3. Зрозуміло, що в автоматичному режимісистема вибере кожному з дисків найкращий швидкісний режим передачі. Але треба пам'ятати, що автоматичне встановлення PIO-режиму здійснюється відповідно до можливості автовизначення функціонування жорсткого диска та обсягу інформації, отриманого від пристрою. Якщо у користувача є сумніви щодо правильності автовизначення PIO-режиму, то відповідно до документації на жорсткий диск користувач може змінити режим PIO для будь-якого з дисків. BIOS у режимі "Auto" може також неправильно ідентифікувати PIO-режим EIDE-диска, і останній не розпізнається. Для використання режимів 3 і 4 потрібне використання в системі EIDE-дисків.

Аналогічні (чотири!) опції можуть називатися також IDEPrimaryMasterPIO" і т.д.

Опція " Fast Programmed I/O Mode (s)" пропонує такі значення: "Disabled", "Auto detected", "PIO0", ... "PIO4". Опція з тією ж назвою несподівано запропонувала значення "Disabled" та "Auto Detected" (за замовчуванням). Перше призводить до встановлення швидкісних характеристик, менших за оптимальні, "Auto Detected" встановлює максимально можливу швидкість.

Опція може називатися також " Mode PIO Transfer Data" або " Transfer ModeОстання опція запропонувала такий набір значень: "Auto", "Default" (рівносильно "Fast PIO 1"), "Fast PIO 1", "Fast PIO 2", "Fast PIO 3", "Fast PIO 4", " FPIO 3/DMA 1", "FPIO 4/DMA 2". Зрозуміло, що мова йдещоразу про параметри чотирьох жорстких дисків, або два для старіших систем. В цьому випадку опції можуть називатися " IDE Master PIO Mode" ("Master Drive PIO Mode") та " IDE Slave PIO Mode" ("Slave Drive PIO Mode").

PIO (Programmable Input/Output — "програмоване введення/виведення") здійснюється центральним процесором і працює шляхом передачі даних за певними адресами введення/виводу (див. підрозділ "Порти"). Режими PIO визначають, як швидко дані можуть передаватися між диском і контролером. При їх використанні задіяні регістри центрального процесорасистеми. Але це не все! Режимами PIO, або DMA, визначаються величина пакетів інформації, спосіб їх кодування, швидкість і послідовність передачі, всі тимчасові характеристики циклу обміну. Залежно від режимів встановлюються різні періоди циклів, тому швидкості передачі можуть змінюватися в дуже широких межах (див. таблицю).

При отриманні команди "Identify Drive" диск повертає, поряд з іншими параметрами, інформацію про режими PIO і DMA, що підтримуються. Ці параметри можна визначити за допомогою спеціальних утиліт. Установка режиму передачі здійснюється за значенням одного з регістрів - SC (реєстру лічильника секторів ATA-пристроїв). Через один з режимів роботи цього регістру відбувається управління режимом обміну.

Режими ATA-2 (PIO 3 та PIO 4) використовують апаратне керування потоком даних. Якщо бути точним, Enhanced IDE включає операції, звані "управління потоком з використанням IORDY", які дозволяють диску включати пакетний режим передачі для 100%-ного використання смуги пропускання шини. Режим управління потоком передає ініціативу пристрою (диску) і дозволяє позбавитися неефективних "сліпих" режимів PIO за рахунок встановлення смуги пропускання контролера відповідно до можливостей вінчестера. Це означає, що в тих випадках, коли доступна вся смуга, вінчестер управлятиме обміном даними з хост-адаптером.

Що це за сигнал? "IORDY" (Input/Output Ready) - сигнал від EIDE-вінчестера, що підтверджує завершення циклу обміну з контролером. Інші назви - "CHRDY", "IOCHDRY". Використання "IORDY" дозволяє швидкісному вінчестеру затягнути цикл обміну з контролером, коли він не встигає прийняти або передати дані. Це дозволяє звести стандартну тривалість циклу обміну до мінімуму, гранично збільшивши швидкість, а при необхідності подовжувати окремі цикли за допомогою "IORDY". Для цього сигнал повинен підтримуватись і вінчестером, і контролером. Управління потоком з боку диска включається контролером за допомогою команди Set Features, в результаті чого такий обмін підтримується одночасно і диском, і контролером. Контролери, що не підтримують "IORDY", можуть призводити до втрати даних під час використання швидких режимів PIO; у цьому випадку слід використовувати менш швидкісні режими. У деяких джерелах згадується режим 5, проте поширення не отримав і стандартним не є.

У разі неможливості програмувати режими обміну індивідуально для кожного з пристроїв у системі та при підключенні пристроїв, що працюють оптимально в різних режимах, в системі буде встановлено обмін зі швидкістю мінімального режиму. Звідси і стандартна рекомендація - не підключати до одного каналу жорсткий диск і CD-ROM.

Режими програмованого введення/виводу досить ефективні лише в однозадачних середовищах. Для багатозадачних ОС режими DMA кращі. Необхідно пам'ятати, що високошвидкісні режими множинного обміну DMA реалізуються драйверами операційної системи. Можливості програмного конфігурування драйвера визначають гнучкість керування режимами DMA.



Сподобалась стаття? Поділіться їй