Понеділок, 07.07.2025, 09:58

Інтернет-лабораторія ДНЗ "ПТУ №38 м. Жашкова"

Block title
Цікаве програмне забезпечення [19]
Опис програм, призначення
Сучасні комп"ютерні технології [18]
Рейтинг тестування пристроїв, комплектуючих [14]
Результати тестування комплектуючих ПК і не тільки для правильного вибору користувачем
Драйвери [1]
Міні-чат
Наше опитування
Що сьогодні не вистачає молоді?
Всього відповідей: 46
Статистика

Онлайн всього: 1
Гостей: 1
Користувачів: 0

Каталог статей

Головна » Статті » Статті "Новини комп"ютерних технологій" » Цікаве програмне забезпечення

Введення-виведення: пріоритетність завдань

Введення-виведення: пріоритетність завдань

Висока пріоритетність при перегляді фільмів може негативно відіб'ється на багатозадачності. Так, до ХР в Windows існували серйозні проблеми з фоновими службами, наприклад, автоматичної дефрагментацією. Звичайно, це допомагало підтримувати жорсткий диск в порядку, але кому ж сподобається, коли, наприклад, Outlook випадає з обойми на дві години?

Однак завдяки пріоритетності вводу-виводу чекати більше не доведеться. Так, в Vista процеси «переднього плану» (не фонові) завжди користуються перевагою, і дефрагментація призупиниться до тих пір, поки користувач не зробить у своїй роботі чергову паузу. Система введення-виведення в Vista передбачає п'ять ступенів пріоритетності - від «дуже низька» до «критично важлива»; стандартний рівень - «нормальна». Фоновим завданням Windows автоматично присвоює низьку пріоритетність, проте менеджер пам'яті завжди вважається критично важливим: дійсно, коли оперативної пам'яті починає не вистачати, він повинен негайно скинути дані на жорсткий диск.

Команди введення-виведення, що посилаються від драйверів пристроїв (такі як рух миші), надходять у чергу із середньою пріоритетністю.

Ще одна цінна можливість полягає в тому, що Vista може резервувати для операцій введення-виведення фіксовані діапазони. Так, наприклад, Media Player може зажадати від системи введення-виведення гарантію, що фільм буде зчитуватися з DVD у певному темпі.

Тоді як в Vista пріоритетність введення-виведення - нововведення, в Mac OS X і Linux даний прийом використовується давно. У Mac OS X це закладено в архітектурі, так як для передачі повідомлень використовується Mach. У системах сімейства Linux, починаючи з ядра 2.6, теж вбудована ефективна схема пріоритетів.

 

Адресний простір: динамічне управління

32-бітові процесори накладають на Windows і інстальовані програми серйозні обмеження щодо адресного простору. Так, ядро Windows не може займати більше 2 Гбайт. Коли потрібно виділити місце для драйверів, кеша файлової системи і стека, це може призвести до певних труднощів. Тому в Vista адресний простір ядра динамічне. Воно займається роздачею і розблокуванням ділянок залежно від робочих потреб.

Операційні системи Linux і Mac OS X не мають суворих обмежень. І в цих операційних системах загальні розміри ядра мають свою межу. У цілому формат окремих компонентів ніяк не обмежений. Дійсно, на відміну від Windows на цих системах немає чіткого розмежування між простором ядра і простором драйверів.

 

КТМ: запобігання програмних збоїв

Якщо програма має намір зробити ряд взаємозалежних змін, воно може створити або дескриптор КТМ («диспетчера транзакцій ядра») і транзакцію DTC (Distributed Transaction Coordinator, «координатора розподілених транзакцій»), або просто дескриптор КТМ, і виконувати зміни файлів і ключів реєстру в рамках цієї транзакції. Якщо все пройшло успішно, транзакція підтверджується - зміни прийняті. До цього програма може в будь-який момент скасувати весь процес. Додаткова перевага полягає в тому, що інші програми бачать ці зміни тільки після того, як транзакція прийнята.

Ядра Mac OS X і Linux теж працюють з транзакціями. Користувач, як правило, цього зовсім не помічає, якщо не вважати збоїв при установці оновлень. Втім, в обох ОС це ніяк не підриває стабільність системи, просто транзакції не будуть виконані. Windows 7, 8, 9 ...

Не секрет, що Microsoft працює над новою архітектурою Windows. Прототипом операційної системи майбутнього (після Win7) повинні стати два проекти.

Singularity обіцяє нам Windows без «синіх екранів» та зависань. Проект заснований на трьох ключових функціях: програмно-ізольовані процеси (SIP), мікроядро і канали (channels). Мікроядро забезпечує лише невід'ємні «ядерні» функції, такі як управління пам'яттю, процесами і каналами, планування процесорного часу і керування введенням-виводом. Всі інші функції перекладаються на модулі та реалізуються ізольовано один від одного через SIP-процеси.

Проект Midori розрахований на віддалену перспективу. Його ядро буде мати модульну структуру. Перевага полягає в тому, що Windows буде краще працювати на різних платформах, таких як нетбуки, КПК або мобільні телефони.

Висновок

Минулі версії Windows на тлі Linux і Mac OS X виглядають зовсім непогано. Хоча конкуренти кілька молодший, вони багато в чому засновані на старих принципах Unix. Vista доводить, що застарілу архітектуру Windows можна компенсувати сучасними технологіями безпеки, такими як захищені процеси або цифрові підписи коду для модулів ядра. Але, на жаль, ці функції часто працюють тільки в 64-бітному світі, а в ХР вони і зовсім відсутні. До того ж Linux і OS X не потребують хитрощах начебто ASLR, оскільки вони не так сильно схильні до атак хакерів. Та й отримати права адміністратора в Linux і Mac OS X складніше, ніж у Windows.

У Windows багато застарілих проблем: наприклад, навіть в Vista дефектний драйвер все ще може обвалити всю систему. OS X виглядає дещо сучасніше: висока продуктивність забезпечується головним чином за рахунок використання компонентів Mach для комунікацій усередині ядра, а також системи введення-виведення I / O Kit. У цьому сенсі Windows відстає, і компенсувати розрив зуміла тільки Vista. На користь Linux каже її відкритість: кожен може налаштувати ядро на свій розсуд.

Категорія: Цікаве програмне забезпечення | Додав: lina (15.11.2010)
Переглядів: 465 | Рейтинг: 2.0/1
Додавати коментарі можуть лише зареєстровані користувачі.
[ Реєстрація | Вхід ]