Zasadniczo odpowiadasz na swoje pytanie w trakcie pytania, ale dla uzyskania odpowiedzi postaram się odpowiedzieć na nie z jak najlepszej strony.
Istnieją różne sposoby, coś może przestać reagować.
Załóżmy, że używasz systemu Windows, chociaż proces ten nie różni się tak bardzo w przypadku innych systemów operacyjnych.
Kiedy wchodzisz w interakcję z programem, robisz to, klikając lub pisząc, gdy program jest aktywny.
Kliknięcie lub pisanie przechodzi za pomocą myszy lub klawiatury na płytę główną. System operacyjny zapyta, co jest wpisywane i jak porusza się mysz. Odpowiednio interpretuje sygnały i współdziała z programami.
Skróty klawiaturowe będą wysyłane do aktywnej aplikacji, chyba że zostanie naciśnięty klawisz skrótu o statusie globalnym. W takim przypadku system operacyjny wykona inną akcję.
System operacyjny sprawi również, że program wśród innych programów będzie działał bez żadnej interakcji. Na przykład, jeśli skopiujesz plik z lokalizacji 1 do lokalizacji 2, jeśli nic nie wpiszesz lub nie poruszysz myszą, operacja kopiowania pliku będzie kontynuowana.
Nowoczesne systemy operacyjne mają funkcję o nazwie Multi Tasking, która w zasadzie oznacza, że cyklicznie przechodzi przez wszystkie programy bardzo szybko, dając każdemu programowi czas na wykonanie cyklu w jego programowaniu. W ten sposób okaże się, że wszystkie programy działają płynnie w tym samym czasie. W tym cyklu sam system operacyjny otrzyma również czas procesora.
Gdy program wykonuje wiele obliczeń, procesor jest wykorzystywany w większym stopniu. Im bardziej procesor jest wykorzystywany, tym mniej energii jest dostępne dla reszty systemu, w tym cyklicznie przez wszystkie inne programy. Gdy procesor osiągnie 100% wykorzystania, komputer stanie się bardzo wolny, ponieważ czeka na czas procesora na przetworzenie wszystkich działań przez wszystkie otwarte programy. System operacyjny zwykle zapobiega zamrożeniu komputera, jeśli tak się stanie, ale możliwe jest, że komputer może się zawiesić w takich przypadkach.
Podczas tworzenia programu istnieje możliwość wystąpienia błędu, który powoduje awarię programu lub jego brak reakcji po wykonaniu szeregu zadań.
Istnieją różne poziomy braku odpowiedzi w przypadku błędów programu. Możliwe, że program wstrzyma jego wykonanie, czekając na naciśnięcie określonego przycisku, ale ten przycisk pojawił się poza ekranem. Program działa normalnie, po prostu nie akceptuje wprowadzania danych przez użytkownika i jako taki wydaje się być zablokowany, podczas gdy technicznie nie jest.
Możliwe, że program wykonuje operację pamięci, ale operacja pamięci odnosi się do innego segmentu pamięci, który ponownie odnosi się do innego segmentu pamięci i po drodze kończy się odniesieniem do pierwszego segmentu pamięci. W rezultacie powstaje niekończąca się pętla. Program uważa, że wykonuje proste działanie i oczekuje wyniku w ciągu kilku nanosekund, ale powoduje przepełnienie lub przepełnienie bufora. System Windows 7 i nowszy ma kilka zabezpieczeń i wyświetla błąd krytyczny: „Program przestał odpowiadać i uległ awarii. Wyślij raport o błędzie”. We wcześniejszych wersjach systemu Windows, w zależności od tego, jak poważna była pętla pamięci, może to powodować niebieski ekran śmierci.
Sam system operacyjny jest w istocie także programem i ma te same problemy. Możliwe, że błąd w programowaniu może spowodować, że cały system operacyjny przestanie odpowiadać.
Wreszcie część systemu operacyjnego to programy służące do komunikacji ze sprzętem. Są to tak zwane sterowniki. Podobnie jak normalne programy, sterownik może również ulec awarii i przestać odpowiadać, chociaż szanse na to są mniejsze. Możliwe, że sterownik klawiatury ulega awarii i powoduje, że klawiatura przestaje reagować, podczas gdy mysz nadal działa.
System operacyjny zwykle wykrywa problemy ze sterownikami i próbuje ponownie uruchomić sterownik. W zależności od tego, jak dobrze sterownik został zaprogramowany, określa, ile użytkownik znajdzie na przeszkodzie awarii. Czasami może to powodować migotanie ekranu i nic więcej, czasami pojawia się okienko wyskakujące wskazujące, że sterownik został zawieszony i ponownie uruchomiony.
Sterowniki Plug and Play są zwykle stabilne i nie powodują awarii. Niestandardowe sterowniki dla określonego sprzętu mogą ulec awarii łatwiej, ponieważ szanse są większe, niektóre błędy nie zostały jeszcze znalezione.
Po wyjaśnieniu powyższego czas na odpowiedź na pytanie.
Jak wskazano, awaria może się zdarzyć z różnych powodów i z różną intensywnością. Jeśli klawisz CapsLock uruchomi się, światło LED wymaga dwóch rzeczy. Wymaga to działania sterownika i systemu operacyjnego, który ma czas na przetworzenie cyklu programowania sterownika (część wielozadaniowa, o której wspomniałem wcześniej)
Jeśli oba są prawdziwe, naciśnięcie klawisza Capslock spowoduje:
Klawisz jest naciskany na klawiaturze, a jego sygnał jest wysyłany na płytę główną. Sterownik systemu operacyjnego wyjaśnia systemowi operacyjnemu, co się dzieje, a sterownik odsyła z powrotem do klawiatury komunikat, że stan diody LED powinien zmienić się na nowy. System operacyjny użyje tych informacji do wpisywania tekstu wielkimi literami. Niektóre programy wyłączają jednak diodę LED, wysyłając drugi sygnał blokady klawiszy do kierowcy. W zależności od klawiatury lampka CapsLock może nigdy się nie włączyć.
Jeśli kierowca nie dostanie cyklu bezpośrednio po naciśnięciu klawisza Caps Lock, dioda LED nie zmieni się. Ale możliwe jest, że system z jakiegoś powodu jest bardzo wolny, a cykl jest opóźniony. W takim przypadku może się zdarzyć, że naciśnięcie klawisza Capslock lub Numlock nie zmieni natychmiast stanu diody LED, ale po sekundie lub dwóch.
Wreszcie możliwe jest, że z jakiegoś powodu na poziomie systemu operacyjnego czeka na cykl programowania sterowników, ponieważ na coś czeka. W takim przypadku możliwe jest przesuwanie myszy, ale wszystko inne wydaje się być zamrożone.
Biorąc pod uwagę, że komputer będzie miał poważne kłopoty, jeśli normalne funkcje LED klawiatury nie będą działać po upływie 5 sekund, można bezpiecznie założyć, że system poważnie się zawiesił i nie można go przywrócić.
Istnieją dwa inne klucze, a mianowicie Scroll Lock i Numlock. Z tych trzech kluczy Numlock jest jedynym kluczem, którego inne programy prawdopodobnie nie wykorzystają ze względu na naturę tego, co robi klucz. Bardziej niezawodne jest używanie numlocka do sprawdzania, czy system reaguje, czy nie na Capslocka lub Lock Lock, ponieważ niektóre programy zwykle używają tych klawiszy do wyzwalania innej funkcji i jako takie często wyłączają status diody LED, co powoduje, że mniej niezawodny do testowania za pomocą Capslock lub scroll lock, i bardziej niezawodny do testowania za pomocą numlock.