Відмінності між версіями «Підсистема управління введенням-виведенням.»
(Створена сторінка: Підсистема управління введенням-виведенням реалізує базові механізми обміну даними між...) |
|||
Рядок 1: | Рядок 1: | ||
− | Підсистема | + | Підсистема вводу / виводу складається з ядра компонентів, які забезпечують інтерфейс для апаратних пристроїв для додатків і інших обов'язкових компонентів системи. Windows XP підвищує підсистеми введення / виводу при збереженні повної сумісності з драйверами написані для Windows 2000. Ця сумісність було важливо, тому що підсистема вводу / виводу забезпечує інтерфейс для всіх пристроїв, і занадто багато змін в процесі введення / виведення може порушити роботу існуючих програм і драйверів. |
− | + | ||
− | + | Покращення були зроблені за рахунок додавання нових API-інтерфейсів, доступних драйверів, написані, щоб скористатися функціональністю нової ОС Windows XP. З цієї причини, в той час як існуючі драйвери для Windows 2000 буде працювати з Windows XP, то вони повинні бути переписані, щоб скористатися новою введення / виводу поліпшень, у тому числі такі: | |
− | + | ||
+ | Нові скасувати черги | ||
+ | |||
+ | Драйвер фільтра файлової системи API, | ||
+ | |||
+ | Покращена низької продуктивності пам'яті | ||
+ | |||
+ | I / O дроселювання | ||
+ | |||
+ | Прямий доступ до пам'яті (DMA) поліпшення | ||
+ | |||
+ | WebDAV Redirector | ||
+ | |||
+ | Відновлення системи | ||
+ | |||
+ | Служба Volume Snapshot | ||
+ | Нові Скасування черзі | ||
+ | |||
+ | Замість того, драйвери пристроїв виконують черги та обробки введення / виводу (IRP) скасування гонки, Windows XP введення / виводу дозволяє автоматизувати цей процес. У Windows XP, драйвера обробляти IRP черг і не потрібно обробляти IRP скасування. Інтелект в процесі черги дозволяє I / O API, обробляти запити, а не водіїв у тих випадках, коли I / O буде відмінено. Загальна проблема з відміною ІПР в драйвер синхронізації між блокування скасувати або InterlockedExchange в диспетчер введення / виводу з черги блокування водія. | ||
+ | |||
+ | Windows XP тези логіки відмовитися від API, дозволяючи водієві реалізувати черги та пов'язані з синхронізацією. Драйвер надає процедури для вставки і видалення пакетів IRP з черги, і він забезпечує блокування, яке відбудеться при виклику цих підпрограм. Драйвер гарантує, що пам'ять для черзі походить від правильного басейн. Коли водій насправді хоче, щоб вкласти щось у черзі, він не називає її введення рутинної, але замість дзвінків IoCsqInsertIrp (). | ||
+ | |||
+ | Для видалення IRP з черги, водій може або вказати IRP, щоб бути відновлена, або передати NULL, і перший IRP в черзі буде витягнуто. Як тільки ПІВТ була відновлена, вона не може бути скасований; очікується, що водій буде обробляти IRP і завершити його швидко. | ||
+ | Драйвер фільтра файлової системи API, | ||
+ | |||
+ | Кілька нових API-інтерфейси забезпечують велику всебічну надійність. Microsoft працювала з сторонніх розробників перевірити свої драйвери фільтра. Якщо водій врізався спробі виконати незаконне функцій, разом ми визначили функції, необхідні, і за умови, API, щоб дозволити їм зробити те, що потрібно було зробити без шкоди для решти. Ці API включені в файл Windows, що встановлюються з розвитку системи (IFS) Kit для Windows XP. | ||
+ | Покращена низької продуктивності пам'яті | ||
+ | |||
+ | Windows XP є більш стійкою в періоди низької пам'яті, тому що "повинні домогтися успіху" асигнування вже не допускається. Більш ранні версії ядра і драйверів, що містяться розподілу пам'яті запити, які були на успіх, навіть якщо пул пам'яті був низьким. Ці асигнування б крах системи, якщо пам'ять не були доступні. Два важливих виділення підпрограми введення / виводу використовується "повинні домогтися успіху", з першим з яких для розподілу IRP, а інший для Memory Descriptor List (MDL) асигнувань. Якщо пам'ять не міг бути виділені, система буде синій екран, якщо ці процедури були використані. Для Windows XP, компоненти ядра і драйверів більше не дозволено виконувати "повинні домогтися успіху" виділених коштів; процедур виділення пам'яті не буде виділяти пам'ять, якщо басейн знаходиться дуже низько. Ці зміни дозволяють водіям та іншим компонентам вжити відповідних заходів помилки, а не екстремальний підхід, таких як помилка перевірки машини. | ||
+ | I / O Регулювання | ||
+ | |||
+ | Ще одним удосконаленням, з низьким рівнем пам'яті умов введення / виводу дроселювання. Якщо система не можу виділити пам'ять, вона дроселів до процесу по одній сторінці за раз, якщо це необхідно, використовуючи вільно виділені ресурси. Це дозволяє системі продовжувати в більш повільному темпі, поки більше ресурсів. | ||
+ | DMA Покращення | ||
+ | |||
+ | Три нові записи додаються в кінець структури DMA_OPERATIONS. Ці три записи будуть доступні для будь-якого водія, який використовує IoGetDmaAdapter (). Щоб безпечно перевірити нову функціональність існує, водій повинен встановити версію області DEVICE_DESCRIPTION структури наданих IoGetDmaAdapter (), щоб DEVICE_DESCRIPTION_VERSION2. | ||
+ | |||
+ | Поточною апаратної абстракції Layers (HALS), які не підтримують новий інтерфейс, не вдасться операцію номер версії. HALS, які підтримують цю функцію зрозуміють нову версію і вдасться прохання, припускаючи, що всі інші параметри в порядку. Водій повинен спробувати отримати доступ до цих нових покажчики на функції тільки тоді, коли водій успішно отримує адаптера за допомогою DEVICE_DESCRIPTION_VERSION2. | ||
+ | |||
+ | |||
+ | Новинка! Нажмите на слова вверху, чтобы увидеть альтернативный перевод. Отказаться | ||
+ | Переводчик Google для бизнеса –Инструменты переводчика | ||
+ | переводчик сайтов | ||
+ | служба "Анализ рынков" | ||
+ | Отключить моментальный перевод | ||
+ | О Переводчике GoogleМобильная версияКонфиденциальностьСправкаОтправить отзыв |
Версія за 16:03, 6 грудня 2011
Підсистема вводу / виводу складається з ядра компонентів, які забезпечують інтерфейс для апаратних пристроїв для додатків і інших обов'язкових компонентів системи. Windows XP підвищує підсистеми введення / виводу при збереженні повної сумісності з драйверами написані для Windows 2000. Ця сумісність було важливо, тому що підсистема вводу / виводу забезпечує інтерфейс для всіх пристроїв, і занадто багато змін в процесі введення / виведення може порушити роботу існуючих програм і драйверів.
Покращення були зроблені за рахунок додавання нових API-інтерфейсів, доступних драйверів, написані, щоб скористатися функціональністю нової ОС Windows XP. З цієї причини, в той час як існуючі драйвери для Windows 2000 буде працювати з Windows XP, то вони повинні бути переписані, щоб скористатися новою введення / виводу поліпшень, у тому числі такі:
Нові скасувати черги
Драйвер фільтра файлової системи API,
Покращена низької продуктивності пам'яті
I / O дроселювання
Прямий доступ до пам'яті (DMA) поліпшення
WebDAV Redirector
Відновлення системи
Служба Volume Snapshot Нові Скасування черзі
Замість того, драйвери пристроїв виконують черги та обробки введення / виводу (IRP) скасування гонки, Windows XP введення / виводу дозволяє автоматизувати цей процес. У Windows XP, драйвера обробляти IRP черг і не потрібно обробляти IRP скасування. Інтелект в процесі черги дозволяє I / O API, обробляти запити, а не водіїв у тих випадках, коли I / O буде відмінено. Загальна проблема з відміною ІПР в драйвер синхронізації між блокування скасувати або InterlockedExchange в диспетчер введення / виводу з черги блокування водія.
Windows XP тези логіки відмовитися від API, дозволяючи водієві реалізувати черги та пов'язані з синхронізацією. Драйвер надає процедури для вставки і видалення пакетів IRP з черги, і він забезпечує блокування, яке відбудеться при виклику цих підпрограм. Драйвер гарантує, що пам'ять для черзі походить від правильного басейн. Коли водій насправді хоче, щоб вкласти щось у черзі, він не називає її введення рутинної, але замість дзвінків IoCsqInsertIrp ().
Для видалення IRP з черги, водій може або вказати IRP, щоб бути відновлена, або передати NULL, і перший IRP в черзі буде витягнуто. Як тільки ПІВТ була відновлена, вона не може бути скасований; очікується, що водій буде обробляти IRP і завершити його швидко. Драйвер фільтра файлової системи API,
Кілька нових API-інтерфейси забезпечують велику всебічну надійність. Microsoft працювала з сторонніх розробників перевірити свої драйвери фільтра. Якщо водій врізався спробі виконати незаконне функцій, разом ми визначили функції, необхідні, і за умови, API, щоб дозволити їм зробити те, що потрібно було зробити без шкоди для решти. Ці API включені в файл Windows, що встановлюються з розвитку системи (IFS) Kit для Windows XP. Покращена низької продуктивності пам'яті
Windows XP є більш стійкою в періоди низької пам'яті, тому що "повинні домогтися успіху" асигнування вже не допускається. Більш ранні версії ядра і драйверів, що містяться розподілу пам'яті запити, які були на успіх, навіть якщо пул пам'яті був низьким. Ці асигнування б крах системи, якщо пам'ять не були доступні. Два важливих виділення підпрограми введення / виводу використовується "повинні домогтися успіху", з першим з яких для розподілу IRP, а інший для Memory Descriptor List (MDL) асигнувань. Якщо пам'ять не міг бути виділені, система буде синій екран, якщо ці процедури були використані. Для Windows XP, компоненти ядра і драйверів більше не дозволено виконувати "повинні домогтися успіху" виділених коштів; процедур виділення пам'яті не буде виділяти пам'ять, якщо басейн знаходиться дуже низько. Ці зміни дозволяють водіям та іншим компонентам вжити відповідних заходів помилки, а не екстремальний підхід, таких як помилка перевірки машини. I / O Регулювання
Ще одним удосконаленням, з низьким рівнем пам'яті умов введення / виводу дроселювання. Якщо система не можу виділити пам'ять, вона дроселів до процесу по одній сторінці за раз, якщо це необхідно, використовуючи вільно виділені ресурси. Це дозволяє системі продовжувати в більш повільному темпі, поки більше ресурсів. DMA Покращення
Три нові записи додаються в кінець структури DMA_OPERATIONS. Ці три записи будуть доступні для будь-якого водія, який використовує IoGetDmaAdapter (). Щоб безпечно перевірити нову функціональність існує, водій повинен встановити версію області DEVICE_DESCRIPTION структури наданих IoGetDmaAdapter (), щоб DEVICE_DESCRIPTION_VERSION2.
Поточною апаратної абстракції Layers (HALS), які не підтримують новий інтерфейс, не вдасться операцію номер версії. HALS, які підтримують цю функцію зрозуміють нову версію і вдасться прохання, припускаючи, що всі інші параметри в порядку. Водій повинен спробувати отримати доступ до цих нових покажчики на функції тільки тоді, коли водій успішно отримує адаптера за допомогою DEVICE_DESCRIPTION_VERSION2.
Новинка! Нажмите на слова вверху, чтобы увидеть альтернативный перевод. Отказаться
Переводчик Google для бизнеса –Инструменты переводчика
переводчик сайтов
служба "Анализ рынков"
Отключить моментальный перевод
О Переводчике GoogleМобильная версияКонфиденциальностьСправкаОтправить отзыв