Оболонка використовує пристрій TTY (якщо він підключений до одного) для отримання вводу користувача та отримання виводу, і не багато іншого. Те, що оболонка підключена до TTY, визначається getty
(і зберігається login
); більшу частину часу оболонці не важливо, підключена вона до TTY чи ні. Його взаємодія з ядром відбувається за допомогою системних дзвінків.
Сервер X11 не знає про входи (як і оболонку). Процес входу в X11 працює двома способами:
- або користувач входить у термінал, а потім запускає X (як правило, використовуючи
startx
);
- або X-сервер запускається з "диспетчером дисплеїв", який пропонує користувачеві ввести логін та пароль (або будь-яку інформацію про автентифікацію).
Те, як сервери X11 отримують вхід і виробляють вихід, сильно відрізняється порівняно з оболонкою. З боку вводу, X знає про пристрої, яких снаряди не мають, починаючи з мишей; він, як правило, керує тими безпосередньо своїми власними драйверами. Навіть для клавіатур X має власні драйвери, які доповнюють обробку ядра (так, наскільки я це розумію, в Linux, наприклад, X використовує драйвер TTY для зчитування сирого вводу з клавіатури, але потім інтерпретує його за допомогою власного драйвера). З боку виводу, X керує пристроями відображення безпосередньо, з допомогою ядра або без нього, і не проходячи через пристрій TTY.
X11 - сервера на багатьох системах роблять використання TTY пристрій , хоча, для синхронізації з ядром: на системах , які підтримують віртуальні термінали, X повинен «заповідник» VT він працює на, і перемикання ручки VT. На шляху є кілька інших тонкощів; Таким чином, в Linux, X налаштовує TTY, щоб відключити GPM (програма, яка дозволяє використовувати миші в текстовому режимі). X також може поділитися VT ...
На деяких робочих станціях в минулому не було багато явної синхронізації з ядром; якщо ви не працювали xconsole
, ви можете отримати повідомлення з ядром, що відображаються в "текстовому режимі" у верхній частині екрана X11.