Что определяет, реагирует ли 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 в этом случае, может быть, в качестве второго теста. Например, в программном обеспечении Music Tracker, например, Milky Tracker, Fast Tracker и даже OpenMPT, CapsLock используется для вставки заметки, и, таким образом, статус клавиши CapsLock фиксируется. Таким образом, светодиод не будет включаться после нажатия, давая ложное ощущение замерзания.
LPChip

@LPChip - Требуется ли от этого музыкального программного обеспечения реагирование?
Борт

@ Борт Зависит. ОС все равно должна заложить ключи к программе, но это зависит от того, как она запрограммирована и как программа зависает. Возможно, программа не аварийно завершилась, но просто не реагирует на нажатия клавиш и щелчки мышью, но все еще полностью работает. В этом случае заглавные буквы не изменят состояние и программа не ответит. Но активация другой программы будет работать нормально.
LPChip

Ответы:


2

Вы в основном отвечаете на свой вопрос во время своего вопроса, но ради ответа я постараюсь ответить на него в меру своих возможностей.

Есть разные способы, что-то может перестать отвечать.

Предположим, вы используете Windows, хотя процесс не отличается для других операционных систем.

Когда вы взаимодействуете с программой, вы делаете это, нажимая или печатая, пока программа находится в фокусе.

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

Сочетания клавиш будут отправлены активному приложению, если не нажата горячая клавиша, имеющая глобальный статус. В этом случае операционная система выполнит другое действие.

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

Современные операционные системы имеют функцию многозадачности, которая в основном означает, что она циклически проходит по всем программам, давая каждой программе время для выполнения цикла в своем программировании. Таким образом, окажется, что все программы бегут одновременно. В этом цикле самой операционной системе также дается время процессора.

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

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

Существуют разные уровни неотзывчивости, когда говорят об ошибках в программе. Возможно, программа останавливает выполнение в ожидании нажатия определенной кнопки, но эта кнопка появилась за пределами экрана. Программа работает нормально, она просто не принимает ввод пользователя и, как таковая, кажется, что она остановлена, хотя технически это не так.

Возможно, что программа выполняет операцию с памятью, но операция с памятью относится к другому сегменту памяти, который снова относится к другому сегменту памяти и в конечном итоге ссылается на первый сегмент памяти. В результате формируется бесконечный цикл. Программа считает, что выполняет простое действие, и ожидает результат в течение нескольких наносекунд, но вызывает переполнение или переполнение буфера. Windows 7 и выше имеет несколько средств защиты и выдаст критическую ошибку: «Программа перестала отвечать и зависла. Отправьте отчет об ошибке». В более ранних версиях Windows, в зависимости от степени зацикливания памяти, это могло привести к появлению «синего экрана смерти».

Операционная система сама по себе также является программой и имеет те же проблемы. Возможно, ошибка в программировании может привести к тому, что вся операционная система перестанет отвечать на запросы.

Наконец, частью операционной системы являются программы, используемые для связи с оборудованием. Это так называемые драйверы. Как и обычные программы, драйвер также может аварийно завершить работу и перестать отвечать на запросы, хотя шансы на это менее вероятны. Возможно, что драйвер клавиатуры дает сбой и приводит к тому, что клавиатура перестает реагировать, пока мышь все еще работает.

Операционная система обычно обнаруживает проблемы с драйверами и пытается перезапустить драйвер. В зависимости от того, насколько хорошо был запрограммирован драйвер, определяется, насколько пользователь находит препятствие для сбоя. Иногда это может вызвать мерцание дисплея и ничего более, иногда отображается всплывающее окно, указывающее, что драйвер был разбит и перезапущен.

Драйверы Plug and Play обычно стабильны и не дают сбоев. Пользовательские драйверы для конкретного оборудования могут более легко аварийно завершить работу, поскольку вероятность того, что некоторые ошибки еще не найдены, выше.

С учетом вышеизложенного, пришло время ответить на вопрос.

Как указано, сбой может произойти по разным причинам и с разной степенью серьезности. Если клавиша CapsLock сработает, для светодиода требуется две вещи. Это требует, чтобы драйвер работал, и это требует, чтобы операционная система давала время для обработки цикла программирования драйвера (многозадачная часть, о которой я упоминал ранее)

Если оба значения верны, нажатие клавиши Capslock сделает следующее:

Клавиша нажимается на клавиатуре, и ее сигнал отправляется на материнскую плату. Драйвер операционной системы объясняет операционной системе, что происходит, и драйвер отправляет обратно на клавиатуру сообщение о том, что состояние индикатора должно измениться на новое. Операционная система будет использовать эту информацию для ввода текста заглавными буквами. Некоторые программы, однако, выключают светодиодную кнопку, посылая второй сигнал capslock водителю. В зависимости от клавиатуры индикатор CapsLock может не включиться, если это так.

Если водитель не запускает цикл сразу после нажатия кнопки «Caps Lock», светодиод не изменится. Но возможно, что система почему-то очень медленная, и цикл задерживается. В этом случае может случиться так, что нажатие на верхний или верхний колпачок не сразу изменит состояние светодиода, а через секунду или две.

Наконец, возможно, что по какой-то причине на уровне операционной системы он ожидает циклический цикл программирования драйверов, потому что он чего-то ждет. Если это так, возможно, мышь все еще можно двигать, но все остальное кажется замороженным.

Учитывая, что компьютер будет испытывать серьезные проблемы, если обычные функции светодиодных индикаторов клавиатуры не будут работать через 5 секунд, можно смело предположить, что система вышла из строя и не может быть восстановлена.

Есть две другие клавиши, а именно Scroll Lock и Numlock. Из этих трех ключей Numlock является единственным ключом, который другие программы, вероятно, не будут злоупотреблять из-за характера действия ключа. Надежнее использовать numlock, чтобы проверить, реагирует ли система на срабатывание или нет, чем блокировка блокировки или прокрутки, потому что некоторые программы, как правило, используют эти клавиши для запуска другой функции, и поэтому они часто отключают светодиодный индикатор, что делает его менее надежный для тестирования с помощью Capslock или Scroll Lock, и более надежный для тестирования с помощью numlock.


Мой последний вопрос был о том, [что определяет, отвечает ли светодиод Caps Lock]. Вторичным по отношению к этому было [если уместно использовать Caps Lock для проверки «точки невозврата»]. Я не уверен, каким образом вы подразумеваете, что я ответил на свой вопрос. Мой вопрос содержал только умозрительную гипотезу, без фактических данных или истинной теории. Я полагаю, что ваш ответ подкрепляет мое предложенное использование Caps Lock, объясняя механизмы более низкого уровня.
Борт

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