Apa yang menentukan apakah Caps Lock merespons atau tidak ketika komputer dibekukan?

15

Ketika komputer tidak merespons dalam beberapa cara, ada berbagai tingkat "beku".

Sebagai contoh, katakanlah saya sedang menjelajahi web di PC saya ...

  1. Jika tab browser saat ini berhenti merespons (mengklik / mengetik tidak melakukan apa-apa), mungkin browser masih akan melakukannya.

  2. Jika seluruh browser terkunci, mungkin OS masih merespons.

  3. Jika OS GUI tidak merespons, sering saya masih bisa beralih Caps LockLED.

  4. Jika Caps Locktidak lagi merespons, saya harus menganggap "pembekuan maksimum". Namun terkadang, jika saya menunggu, seluruh komputer mungkin akan kembali normal setelah beberapa saat.


  • Jika Caps Lock tidak lagi beralih, apakah itu berarti komputer "lebih beku dari pada langkah 3"?

  • Apakah masuk akal untuk digunakan Caps Locksebagai tes akhir "beku"?

  • ... Dan jika demikian, apa perbedaan antara kapan Caps Lockmatikan dan tidak? Apa yang menentukan apakah Caps Lockmerespons atau tidak ?

Bort
sumber
10
Respons terhadap Caps Lock, Num Lock dan Scroll Lock membutuhkan OS untuk tetap dapat melayani (keyboard) interupsi. Respons LED AFAIK dihasilkan dalam ISR, dan tidak diperlukan pemrosesan ruang pengguna. Jadi ketidakmampuan untuk melakukan operasi ini menunjukkan kondisi yang parah. Ketika kondisi ini berlangsung lebih dari beberapa detik dan Ctrl-Alt-Del juga tidak responsif, maka saya memperlakukannya sebagai tidak dapat dipulihkan dan menekan tombol reset atau power swittch
serbuk gergaji
Beberapa program melakukan hal-hal yang funky dengan tombol CapsLock, membuat kunci CapsLock kurang dapat diandalkan. Saya akan menggunakan Numlock dalam hal ini, mungkin sebagai tes kedua. Misalnya, dalam perangkat lunak Pelacak musik, Misalnya Milky Tracker, Fast Tracker dan bahkan OpenMPT, CapsLock digunakan untuk memasukkan catatan, dan dengan demikian status tombol CapsLock ditangkap. Dengan demikian, LED tidak akan menyala begitu ditekan, memberikan rasa beku yang salah.
LPChip
@LPChip - Apakah hal-hal yang funky itu memerlukan perangkat lunak musik untuk tetap merespons?
Bort
@Bort Tergantung. OS masih harus meletakkan kunci ke program, tetapi tergantung pada bagaimana programnya dan bagaimana program itu hang. Ada kemungkinan program tidak macet, tetapi tidak bereaksi terhadap penekanan tombol dan klik mouse, namun masih berfungsi penuh. Dalam hal ini, caps lock tidak akan mengubah status, dan program juga tidak akan merespons. Tetapi mengaktifkan program yang berbeda akan bekerja secara normal.
LPChip

Jawaban:

2

Anda pada dasarnya menjawab pertanyaan Anda sendiri selama pertanyaan Anda, tetapi demi memiliki jawaban, saya akan mencoba menjawabnya sesuai kemampuan saya.

Ada berbagai cara, sesuatu bisa menjadi tidak responsif.

Mari kita asumsikan Anda menggunakan Windows, meskipun prosesnya tidak jauh berbeda dengan sistem operasi lain.

Saat Anda berinteraksi dengan suatu program, Anda melakukannya dengan mengklik atau mengetik saat program memiliki fokus.

Mengklik atau Mengetik berjalan melalui mouse atau keyboard ke motherboard. Sistem operasi akan menanyakan apa yang sedang diketik dan bagaimana mouse dipindahkan. Ini menafsirkan sinyal dan berinteraksi dengan program yang sesuai.

Pintasan keyboard akan dikirim ke aplikasi aktif kecuali jika hotkey ditekan yang berstatus global. Dalam hal ini sistem operasi akan melakukan tindakan yang berbeda.

Sistem operasi juga akan membuat program di antara program lain berfungsi tanpa interaksi apa pun. Misalnya, ketika Anda menyalin file dari lokasi 1 ke lokasi 2, jika Anda tidak mengetik apa pun atau tidak memindahkan mouse, operasi salin file akan tetap berlanjut.

Sistem Operasi Modern memiliki fitur yang disebut Multi Tasking yang pada dasarnya berarti ia menggilir semua program dengan sangat cepat, memberikan setiap waktu program untuk melakukan siklus dalam pemrogramannya. Dengan melakukan itu, akan tampak bahwa semua program berjalan pada saat yang sama dengan lancar. Dalam siklus ini, Sistem Operasi itu sendiri juga akan diberikan waktu CPU.

Ketika suatu program melakukan banyak perhitungan, CPU sedang digunakan lebih banyak. Semakin banyak CPU digunakan, semakin sedikit daya yang tersedia untuk seluruh sistem, termasuk bersepeda melalui semua program lainnya. Ketika CPU mencapai utilisasi 100%, komputer akan menjadi sangat lambat karena menunggu waktu CPU untuk memproses semua kegiatan oleh semua program terbuka. Sistem Operasi biasanya mencegah komputer dari pembekuan jika ini terjadi, tetapi ada kemungkinan komputer dapat membeku dalam kesempatan ini.

Ketika sebuah program sedang dibuat, ada kemungkinan ada bug yang menyebabkan program mogok atau menjadi tidak responsif ketika serangkaian tugas dilakukan.

Ada beberapa tingkat ketidaktanggapan ketika berbicara tentang bug program. Ada kemungkinan program menghentikan eksekusi menunggu tombol tertentu ditekan, tetapi tombol itu muncul di luar layar. Program ini bekerja secara normal, hanya saja tidak menerima input pengguna dan dengan demikian tampaknya terhenti sementara secara teknis tidak.

Mungkin saja program melakukan operasi memori tetapi operasi memori mengacu pada segmen memori yang berbeda, yang lagi-lagi mengacu pada segmen memori yang berbeda dan sepanjang perjalanan berakhir dengan merujuk ke segmen memori pertama. Akibatnya, loop yang tidak pernah berakhir terbentuk. Program ini berpikir melakukan tindakan sederhana dan mengharapkan hasil dalam beberapa nanodetik tetapi menyebabkan buffer underrun atau overflow. Windows 7 dan lebih tinggi memiliki beberapa perlindungan dan akan memberikan kesalahan kritis: "Program berhenti merespons dan macet. Kirim laporan kesalahan". Pada versi windows yang lebih lama, tergantung seberapa parah loop memori itu, itu bisa menghasilkan Blue Screen of Death.

Sistem Operasi itu sendiri pada dasarnya juga sebuah program, dan memiliki masalah yang sama. Mungkin saja bug dalam pemrograman dapat menyebabkan seluruh Sistem Operasi menjadi tidak responsif.

Terakhir, bagian dari Sistem Operasi adalah program yang digunakan untuk berkomunikasi dengan perangkat keras. Ini disebut driver. Sama seperti program normal, pengemudi juga dapat macet dan menjadi tidak responsif, meskipun kemungkinan hal ini terjadi lebih kecil kemungkinannya. Mungkin saja driver keyboard crash dan menyebabkan keyboard berhenti merespons, sementara mouse masih berfungsi.

Sistem Pengoperasian biasanya mendeteksi masalah driver dan upaya untuk me-restart driver. Tergantung pada seberapa baik driver diprogram menentukan berapa banyak pengguna menemukan penghalang kecelakaan. Terkadang hal itu dapat menyebabkan tampilan layar berkedip dan tidak lebih, kadang-kadang muncul sembulan yang menunjukkan bahwa driver mengalami crash dan restart.

Driver Plug and Play biasanya stabil dan tidak crash. Driver khusus untuk perangkat keras tertentu mungkin lebih mudah rusak karena kemungkinan lebih tinggi beberapa bug belum ditemukan.

Dengan penjelasan di atas, saatnya menjawab pertanyaan.

Seperti yang ditunjukkan, kerusakan dapat terjadi karena alasan yang berbeda dan dengan tingkat keparahan yang berbeda. Jika tombol CapsLock akan memicu lampu LED memerlukan dua hal. Ini membutuhkan driver untuk berfungsi, dan membutuhkan Sistem Operasi untuk memberikan waktu untuk memproses siklus pemrograman driver (bagian multitasking yang saya sebutkan sebelumnya)

Jika keduanya benar, menekan tombol Capslock akan melakukan hal berikut:

Tombol sedang ditekan pada keyboard dan sinyalnya dikirim ke motherboard. Driver Sistem Operasi menjelaskan kepada Sistem Operasi apa yang terjadi dan driver mengirim pesan kembali ke keyboard bahwa keadaan LED harus berubah ke keadaan baru. Sistem Operasi akan menggunakan informasi ini untuk mengetik teks dalam huruf besar. Namun beberapa program mematikan kunci LED dengan mengirimkan sinyal capslock kedua ke pengemudi. Bergantung pada keyboard, lampu CapsLock mungkin tidak pernah menyala jika ini masalahnya.

Jika pengemudi tidak mendapatkan siklusnya langsung setelah menekan caps lock, LED tidak akan berubah. Tetapi mungkin saja sistemnya sangat lambat karena suatu alasan, dan siklusnya tertunda. Dalam hal ini dapat terjadi bahwa menekan capslock atau numlock tidak akan segera mengubah status LED, tetapi setelah satu atau dua detik.

Terakhir, adalah mungkin, bahwa untuk beberapa alasan di Level Sistem Operasi, ia menunggu siklus bersepeda melalui driver karena menunggu sesuatu. Jika demikian, mungkin saja mouse masih dapat dipindahkan, namun yang lainnya tampak beku.

Mengingat bahwa pc akan berada dalam masalah serius jika fungsi LED keyboard normal tidak berfungsi setelah 5 detik waktu berlalu, dapat diasumsikan dengan aman bahwa sistem mengalami kerusakan parah dan tidak dapat dipulihkan.

Ada dua tombol lain, yaitu Scroll Lock dan Numlock. Dari ketiga kunci ini, Numlock adalah satu-satunya kunci yang tidak akan disalahgunakan oleh program lain karena sifat dari apa yang dilakukan kunci tersebut. Lebih dapat diandalkan untuk menggunakan numlock untuk menguji apakah sistem responsif atau tidak daripada capslock atau scroll lock karena beberapa program cenderung menggunakan tombol-tombol ini untuk memicu fungsi yang berbeda, dan karena itu mereka sering membuat status LED mati yang membuatnya kurang dapat diandalkan untuk menguji dengan Capslock atau kunci gulir, dan lebih dapat diandalkan untuk menguji dengan numlock.

LPChip
sumber
Pertanyaan pamungkas saya adalah tentang [apa yang menentukan apakah Caps Lock LED merespons]. Yang kedua adalah [jika perlu menggunakan Caps Lock untuk menguji "point of no return"]. Saya tidak yakin dengan cara apa Anda menyiratkan bahwa saya menjawab pertanyaan saya sendiri. Pertanyaan saya hanya berisi hipotesis spekulatif, tanpa data aktual atau teori sebenarnya yang terlibat. Saya yakin jawaban Anda membenarkan usulan saya menggunakan Caps Lock dengan menjelaskan mekanisme tingkat bawah.
Bort
@Bort Saya mengedit pertanyaan saya agar mudah-mudahan lebih jelas. Saya memang mencoba menjawab pertanyaan Anda, tetapi merasa perlu menjelaskan bagaimana semuanya bekerja untuk meletakkan dasar mengapa hal-hal seperti ini. Kalau tidak, itu dilihat sebagai pendapat saya dan tidak berdasarkan fakta.
LPChip