Що визначає, реагує чи ні Caps Lock, коли комп'ютер заморожений?


15

Коли комп’ютер не реагує якимось чином, існують різні рівні "заморожених".

Наприклад, скажімо, я переглядаю Інтернет на своєму ПК ...

  1. Якщо поточна вкладка браузера перестане реагувати (натискання / введення нічого не робить), можливо, браузер все-таки буде.

  2. Якщо весь браузер заблокований, можливо, ОС все ще відповідає.

  3. Якщо графічний інтерфейс ОС не реагує, я часто можу ввімкнути Caps Lockсвітлодіод.

  4. Якщо Caps Lockбільше не реагує, я повинен припустити "максимальне заморожування". Іноді, якщо я зачекаю, весь комп'ютер через деякий час все-таки повернеться до норми.


  • Якщо Caps Lock більше не перемикається, чи означає це, що комп'ютер "більш заморожений, ніж на кроці 3"?

  • Чи має сенс використовувати Caps Lockяк заключний тест «заморожених»?

  • ... І якщо так, то яка різниця між Caps Lockперемиканнями та ні? Що визначає, відповідає чи ні Caps Lock?


10
Відповідь на функцію Caps Lock, Num Lock та Scroll Lock вимагає, щоб ОС все ще могла обслуговувати (клавіатура) переривання. Світлодіодна відповідь AFAIK генерується в ISR, і обробка простору користувача не потрібна. Тож неможливість виконати цю операцію вказує на важкий стан. Коли ця умова триває більше декількох секунд, а Ctrl-Alt-Del також не відповідає, я вважаю, що це не підлягає відновленню і потрапляю на перезавантаження або перемикач живлення
тирса

Деякі програми виконують прикольні речі за допомогою клавіші CapsLock, що робить клавішу CapsLock менш надійною, щоб бути впевненою. Я б використовував Numlock в цьому випадку, можливо, як другий тест. Наприклад, у програмі музичного відстеження, наприклад Milky Tracker, Fast Tracker і навіть OpenMPT, CapsLock використовується для вставки нотатки, і таким чином вловлюється статус клавіші CapsLock. Як такий, світлодіод не вмикається один раз при натисканні, даючи помилкове відчуття замерзлості.
LPChip

@LPChip - Чи потребує цього прикольного матеріалу, щоб музичне програмне забезпечення все ще відповідало?
Борт

@ Борт залежить. ОС все одно повинен закладати ключі програми, але це залежить від того, як її запрограмовано та як програма висить. Можливо, програма не вийшла з ладу, але просто не реагує на натискання клавіш та клацання миші, але вона все ще повністю працює. У такому випадку блокування шапки не змінить стан, а також програма не відповість. Але активація іншої програми працювала б нормально.
LPChip

Відповіді:


2

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

Існують різні способи, щось може стати невідповідним.

Припустимо, що ви використовуєте Windows, хоча процес не так відрізняється від інших операційних систем.

Під час взаємодії з програмою ви робите це, натискаючи або вводячи, поки програма фокусується.

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

Комбінації клавіш надсилаються до активної програми, якщо не буде натиснута швидка клавіша, яка має глобальний статус. У цьому випадку операційна система виконає іншу дію.

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

Сучасні операційні системи мають функцію під назвою Multi Tasking, яка в основному означає, що вона проходить всі програми дуже швидко, даючи кожній програмі час для виконання циклу в її програмуванні. Тим самим виявиться, що всі програми одночасно вільно працюють. У цьому циклі сама Операційна система також отримає час процесора.

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

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

Існують різні рівні безвідповідальності, коли йдеться про програмні помилки. Можливо, програма зупиняє її виконання, очікуючи натискання певної кнопки, але ця кнопка з’явилася поза екраном. Програма працює нормально, вона просто не приймає користувальницькі введення, і як таке, схоже, затримується, а технічно це не так.

Цілком можливо, що програма виконує операцію з пам'яттю, але операція з пам'яттю відноситься до іншого сегмента пам'яті, який знову відноситься до іншого сегмента пам'яті і по ходу закінчується переходом на перший сегмент пам'яті. В результаті утворюється нескінченна петля. Програма вважає, що її виконання є простою дією, і очікує результату протягом декількох наносекунд, але викликає заниження або переповнення буфера. У Windows 7 і новіших версіях захист є критична помилка: "Програма перестала реагувати та вийшла з ладу. Надіслати звіт про помилку". У попередніх версіях Windows, залежно від того, наскільки суворим був цикл пам'яті, це може призвести до появи синього екрану смерті.

Сама Операційна система є, по суті, також програмою і має ті самі проблеми. Можливо, помилка в програмуванні може призвести до відмови всієї операційної системи.

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

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

Драйвери Plug and Play зазвичай стабільні і не виходять з ладу. Спеціальні драйвери для певного обладнання можуть вийти з ладу легше, оскільки шанси вищі, деякі помилки ще не знайдені.

З урахуванням сказаного, настав час відповісти на питання.

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

Якщо обидва вірні, натискання клавіші Capslock зробить наступне:

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

Якщо драйвер не отримує цикл безпосередньо після натискання блокування ковпачків, світлодіод не зміниться. Але можливо, що система чомусь дуже повільна, і цикл затримується. У такому випадку може статися так, що натискання на блокчейн або нумелок не змінить стан світлодіода відразу, а через секунду чи дві.

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

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

Є ще дві клавіші, а саме: Блок прокрутки та Numlock. З цих трьох клавіш Numlock є єдиним ключем, який інші програми, ймовірно, не зловживають через характер того, що робить ключ. Більш надійно використовувати numlock для перевірки того, чи реагує система чи ні, ніж блокчейн або блокування прокрутки, оскільки деякі програми, як правило, використовують ці клавіші для запуску іншої функції, і, як такий, вони часто роблять вимкнений статус світлодіода, що робить його менш надійний для тестування за допомогою Capslock або прокрутки, і більш надійний для тестування з numlock.


Моє остаточне питання стосувалося [що визначає, чи відповідає світлодіод Caps Lock]. Вторинним було таке [якщо доречно використовувати функцію Caps Lock для тесту на "точку неповернення"]. Я не впевнений, яким чином ви маєте на увазі, що я відповів на власне запитання. Моє запитання містило лише спекулятивну гіпотезу, в якій відсутні фактичні дані та правдива теорія. Я вважаю, що ваша відповідь зміцнює моє запропоноване використання Caps Lock, пояснюючи механізми нижнього рівня.
Борт

@Bort Я відредагував своє запитання, сподіваючись зробити його більш зрозумілим. Я намагався відповісти на ваше запитання, але відчув необхідність пояснити, як все працює для того, щоб закласти фундамент того, чому все таке. Інакше це сприймається як моя думка і не стільки на основі фактів.
LPChip
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.