У мене виникають труднощі в розумінні того, що входить в ОС, а що ні. Чи є драйвер пристрою, наприклад драйвер принтера або графічний драйвер, частиною ОС? Думаючи про визначення ОС, я вважаю, що драйвери є частиною ОС.
У мене виникають труднощі в розумінні того, що входить в ОС, а що ні. Чи є драйвер пристрою, наприклад драйвер принтера або графічний драйвер, частиною ОС? Думаючи про визначення ОС, я вважаю, що драйвери є частиною ОС.
Відповіді:
Так, драйвери є частиною ОС. Вони працюють з тим же рівнем привілеїв, що і ядро ОС, і щоб написати драйвер, ви повинні добре знати про внутрішні системи ОС. Роль драйверів полягає у наданні абстракції обладнання, щоб додатки могли використовувати його через API OS (інтерфейс програмування прикладних програм), а не знати конкретні деталі про нього. У багатьох випадках це також дозволяє одночасно використовувати один і той же апарат між багатьма програмами.
Щось, що вводить користувачів в оману драйверів, можливо, не є частиною ОС, це те, що багато виробників постачають драйвери для обладнання, яке вони виробляють окремо від ОС. Дійсно, багато драйверів представлені як завантажувані модулі, які можна завантажувати, а потім динамічно брати участь в ОС. Після того, як вони більше не використовуються, їх можна буде відключити від ОС, і вона продовжує працювати нормально.
Завантажувані або ні, драйвери завжди характерні для пристроїв, які вони повинні робити доступними для системи, тому, хоча вони іноді є "необов'язковими" частинами ОС, вони беруть участь у ній під час роботи.
Термін "ОС" може означати багато речей.
Хоча в більшості операційних систем ядро - це фрагмент коду, який керує та "працює" всім, і аргументує доступ до апаратних засобів, він зазвичай не може зробити нічого цікавого самостійно - його завдання - створити основу для запуску програм " вгорі ", якщо це. Так багато людей визначають ОС, включаючи утиліти, оболонки та програми, що складають звичне, стандартизоване середовище.
Драйвери залежать від ядра, і, мабуть, найправильніше сказати, що вони "розширюють" його, як плагіни. Linux підтримує поняття "завантажувані модулі ядра" - і всі драйвери пристроїв можуть бути модулем ядра для завантаження. Також можливо створити ядро, де один або декілька з цих модулів "вбудовані" і не відокремлені від ядра. Таким чином, ви справді могли створити ядро "без модулів" під Linux, і воно не змогло б підтримувати будь-яке обладнання, крім модулів, які ви вбудували в нього.
Я менш знайомий з кишками Windows, але я вважаю, що за винятком небагато драйверів "мініпорту", всі драйвери - це зовнішні файли, завантажені на завантаження. Якщо трохи зайнятися створенням сервісів у Windows, здається, що драйвери - це справді спеціальні форми служб під Windows. Деякі програми встановлюють драйвери для доступу до апаратних засобів на низькому рівні, але це не обов'язково для керування пристроєм, зазвичай це драйвери "Не підключити та грати" в диспетчері пристроїв. Таким чином, здається, що драйвери виконують таку ж функцію концептуально, як і завантажувані модулі ядра під Linux.
Я б для простоти сказав, що вони є частиною ОС, оскільки вони дійсно не можуть використовуватися без ОС, і не є корисними, якщо ОС не завантажується, але накреслена лінія в будь-якому випадку є досить довільною.
Жодні драйвери не є частиною ОС. Можна сказати, що драйвери допомагають ОС спілкуватися з пристроєм або апаратним забезпеченням. ОС не містить усіх драйверів за замовчуванням, як у Windows xp та vista, але в Windows 7 входить більшість необхідних драйверів, тому ви не плутайте їх, що вони не є частиною ОС.