Điều gì quyết định liệu Caps Lock có phản hồi trong khi máy tính bị đóng băng không?


15

Khi một máy tính không phản hồi theo một cách nào đó, sẽ có các mức độ "đóng băng" khác nhau.

Ví dụ: giả sử tôi đang duyệt web trên PC của mình ...

  1. Nếu tab trình duyệt hiện tại dừng đáp ứng (nhấp / gõ không làm gì), có lẽ trình duyệt vẫn sẽ.

  2. Nếu toàn bộ trình duyệt bị khóa, có lẽ HĐH vẫn đang phản hồi.

  3. Nếu GUI của hệ điều hành không phản hồi, thường thì tôi vẫn có thể bật Caps Lockđèn LED.

  4. Nếu Caps Lockkhông còn phản hồi, tôi phải giả sử "đóng băng tối đa". Đôi khi, nếu tôi chờ đợi, toàn bộ máy tính vẫn có thể trở lại bình thường sau một thời gian.


  • Nếu Caps Lock không còn bật, điều đó có nghĩa là máy tính "bị đóng băng nhiều hơn ở bước 3"?

  • Liệu nó có ý nghĩa để sử dụng Caps Locknhư một thử nghiệm cuối cùng của "đóng băng"?

  • ... Và nếu vậy, sự khác biệt giữa khi Caps Lockbật và không? Điều gì quyết định có Caps Locktrả lời hay không ?


10
Đáp ứng với Caps Lock, Num Lock và Scroll Lock yêu cầu HĐH vẫn có thể phục vụ ngắt (bàn phím). Phản hồi LED AFAIK được tạo trong ISR và không yêu cầu xử lý không gian người dùng. Vì vậy, việc không thể thực hiện thao tác này cho thấy tình trạng nghiêm trọng. Khi tình trạng này kéo dài hơn một vài giây và Ctrl-Alt-Del cũng không phản hồi, sau đó tôi coi nó là không thể phục hồi và nhấn thiết lập lại hoặc swittch
mùn cưa

Một số chương trình thực hiện công cụ thú vị với phím CapsLock, làm cho khóa CapsLock trở nên kém tin cậy hơn để đảm bảo. Tôi sẽ sử dụng Numlock trong trường hợp này, có thể là thử nghiệm thứ hai. Ví dụ: trong phần mềm Trình theo dõi nhạc, ví dụ: Milky Tracker, Fast Tracker và thậm chí OpenMPT, CapsLock được sử dụng để chèn ghi chú và do đó, trạng thái của phím CapsLock bị bắt. Như vậy, đèn LED sẽ không bật khi được nhấn, tạo cảm giác đóng băng giả.
LPChip

@LPChip - Những thứ thú vị đó có yêu cầu phần mềm âm nhạc vẫn phản hồi không?
Bort

@Bort Phụ thuộc. HĐH vẫn phải đặt các khóa cho chương trình, nhưng nó phụ thuộc vào cách lập trình của nó và cách chương trình treo. Có thể chương trình không bị sập, nhưng đơn giản là không phản ứng với phím bấm và nhấp chuột, nhưng nó vẫn hoạt động hoàn toàn. Trong trường hợp đó, khóa mũ sẽ không thay đổi trạng thái, chương trình cũng không phản hồi. Nhưng kích hoạt một chương trình khác sẽ hoạt động bình thường.
LPChip

Câu trả lời:


2

Về cơ bản, bạn đang trả lời câu hỏi của chính mình trong câu hỏi của bạn, nhưng để có câu trả lời, tôi sẽ cố gắng trả lời nó với khả năng tốt nhất của tôi.

Có nhiều cách khác nhau, một cái gì đó có thể trở nên không phản hồi.

Giả sử bạn đang sử dụng Windows, mặc dù quá trình này không khác đối với các hệ điều hành khác.

Khi bạn tương tác với một chương trình, bạn làm như vậy bằng cách nhấp hoặc gõ trong khi chương trình có tiêu điểm.

Nhấp hoặc Nhập sẽ đi qua chuột hoặc bàn phím đến bo mạch chủ. Hệ điều hành sẽ truy vấn những gì đang được gõ và cách di chuyển chuột. Nó diễn giải các tín hiệu và tương tác với các chương trình tương ứng.

Phím tắt sẽ được gửi đến ứng dụng đang hoạt động trừ khi nhấn phím nóng có trạng thái chung. Trong trường hợp đó, hệ điều hành sẽ thực hiện một hành động khác.

Hệ điều hành cũng sẽ làm cho chương trình giữa các chương trình khác hoạt động mà không có bất kỳ tương tác nào. Ví dụ: khi bạn sao chép tệp từ vị trí 1 sang vị trí 2, nếu bạn không nhập bất cứ thứ gì hoặc không di chuyển chuột, thao tác sao chép tệp sẽ vẫn tiếp tục.

Các hệ điều hành hiện đại có một tính năng gọi là Đa tác vụ , về cơ bản có nghĩa là nó quay vòng qua tất cả các chương trình rất nhanh, cho mỗi chương trình thời gian để thực hiện một chu trình trong lập trình của nó. Bằng cách làm như vậy, sẽ xuất hiện tất cả các chương trình chạy cùng một lúc trôi chảy. Trong chu trình này, bản thân Hệ điều hành cũng sẽ được cung cấp thời gian CPU.

Khi một chương trình thực hiện nhiều tính toán, CPU sẽ được sử dụng nhiều hơn. CPU càng được sử dụng nhiều thì càng có ít năng lượng cho phần còn lại của hệ thống, bao gồm cả việc đạp xe qua tất cả các chương trình khác. Khi CPU đạt mức sử dụng 100%, máy tính sẽ trở nên rất chậm vì nó đang chờ thời gian CPU để xử lý tất cả các hoạt động của tất cả các chương trình mở. Hệ điều hành thường ngăn máy tính đóng băng nếu điều này xảy ra, nhưng có khả năng máy tính có thể đóng băng trong những dịp này.

Khi một chương trình đang được tạo, có thể có một lỗi tồn tại khiến chương trình bị sập hoặc không phản hồi khi một loạt các tác vụ được thực hiện.

Có nhiều mức độ không phản hồi khác nhau khi nói về lỗi chương trình. Có thể chương trình trì hoãn việc thực thi của nó chờ đợi một nút nhất định được nhấn, nhưng nút đó xuất hiện bên ngoài màn hình. Chương trình hoạt động bình thường, nó chỉ không chấp nhận đầu vào của người dùng và như vậy dường như bị đình trệ trong khi về mặt kỹ thuật thì không.

Có thể chương trình đang thực hiện một hoạt động bộ nhớ nhưng hoạt động bộ nhớ đề cập đến một phân đoạn bộ nhớ khác, một lần nữa đề cập đến một phân đoạn bộ nhớ khác và trên đường đi kết thúc với phân đoạn bộ nhớ đầu tiên. Kết quả là một vòng lặp không bao giờ kết thúc được hình thành. Chương trình nghĩ rằng nó thực hiện một hành động đơn giản và mong đợi một kết quả trong vòng vài nano giây nhưng gây ra lỗi tràn hoặc tràn bộ đệm. Windows 7 trở lên có một số biện pháp bảo vệ và sẽ đưa ra một lỗi nghiêm trọng: "Chương trình đã ngừng phản hồi và đã bị sập. Gửi báo cáo lỗi". Trong các phiên bản trước của cửa sổ, tùy thuộc vào mức độ nghiêm trọng của vòng lặp bộ nhớ, nó có thể dẫn đến Màn hình xanh chết chóc.

Bản thân Hệ điều hành cũng là một chương trình và có cùng các vấn đề. Có thể một lỗi trong lập trình có thể khiến toàn bộ Hệ điều hành trở nên không phản hồi.

Cuối cùng, một phần của Hệ điều hành là các chương trình được sử dụng để giao tiếp với phần cứng. Chúng được gọi là trình điều khiển. Cũng giống như các chương trình bình thường, một tài xế cũng có thể gặp sự cố và trở nên không phản hồi, mặc dù cơ hội cho điều này xảy ra ít có khả năng xảy ra. Có thể trình điều khiển bàn phím gặp sự cố và khiến bàn phím ngừng phản hồi, trong khi chuột vẫn hoạt động.

Hệ điều hành thường phát hiện các sự cố trình điều khiển và cố gắng khởi động lại trình điều khiển. Tùy thuộc vào mức độ trình điều khiển được lập trình xác định mức độ người dùng tìm thấy sự cản trở của sự cố. Đôi khi nó có thể gây ra nhấp nháy màn hình và không có gì nữa, đôi khi một cửa sổ bật lên được hiển thị cho biết rằng trình điều khiển đã bị hỏng và khởi động lại.

Trình điều khiển Plug and Play thường ổn định và không gặp sự cố. Trình điều khiển tùy chỉnh cho phần cứng cụ thể có thể bị sập dễ dàng hơn vì có khả năng cao hơn một số lỗi chưa được tìm thấy.

Với những giải thích ở trên, đã đến lúc trả lời câu hỏi.

Như đã chỉ ra, một vụ tai nạn có thể xảy ra vì những lý do khác nhau và với mức độ nghiêm trọng khác nhau. Nếu phím CapsLock sẽ kích hoạt đèn LED yêu cầu hai điều. Nó đòi hỏi trình điều khiển phải hoạt động và nó yêu cầu Hệ điều hành dành thời gian để xử lý chu trình lập trình của trình điều khiển (phần đa nhiệm tôi đã đề cập trước đó)

Nếu cả hai đều đúng, nhấn phím Capslock sẽ làm như sau:

Phím được nhấn trên bàn phím và tín hiệu của nó được gửi đến bo mạch chủ. Trình điều khiển của Hệ điều hành giải thích cho Hệ điều hành những gì xảy ra và trình điều khiển gửi thông báo trở lại bàn phím rằng trạng thái LED sẽ thay đổi sang trạng thái mới. Hệ điều hành sẽ sử dụng thông tin này để nhập văn bản trong mũ. Tuy nhiên, một số chương trình tắt phím LED bằng cách gửi tín hiệu capslock thứ hai cho trình điều khiển. Tùy thuộc vào bàn phím, đèn CapsLock có thể không bao giờ bật nếu đây là trường hợp.

Nếu người lái xe không nhận được chu kỳ trực tiếp sau khi nhấn khóa mũ, đèn LED sẽ không thay đổi. Nhưng có thể hệ thống rất chậm vì một số lý do và chu kỳ bị trì hoãn. Trong trường hợp đó, có thể xảy ra việc nhấn capslock hoặc numlock sẽ không ngay lập tức thay đổi trạng thái của đèn LED, nhưng sau một hoặc hai giây.

Cuối cùng, có thể, vì một số lý do ở Cấp độ Hệ điều hành, nó chờ đợi đạp xe qua chu trình lập trình trình điều khiển vì nó chờ đợi một cái gì đó. Nếu đây là trường hợp, có thể chuột vẫn có thể được di chuyển, nhưng mọi thứ khác dường như bị đóng băng.

Cho rằng máy tính sẽ gặp sự cố nghiêm trọng nếu các chức năng LED bàn phím bình thường không hoạt động sau 5 giây trôi qua, có thể giả định một cách an toàn rằng hệ thống đã bị hỏng nghiêm trọng và không thể phục hồi.

Có hai khóa khác, đó là Scroll Lock và Numlock. Từ ba khóa này, Numlock là khóa duy nhất mà các chương trình khác có thể sẽ không lạm dụng do bản chất của khóa. Sẽ đáng tin cậy hơn khi sử dụng numlock để kiểm tra xem hệ thống có phản hồi hay không hơn capslock hoặc khóa cuộn vì một số chương trình có xu hướng sử dụng các phím này để kích hoạt một chức năng khác và do đó chúng thường làm cho trạng thái LED tắt. ít đáng tin cậy hơn để kiểm tra với Capslock hoặc khóa cuộn và đáng tin cậy hơn để kiểm tra với numlock.


Câu hỏi cuối cùng của tôi là về [điều gì quyết định nếu đèn LED Caps Lock phản hồi]. Thứ yếu là [nếu thích hợp sử dụng Caps Lock để kiểm tra "điểm không quay lại"]. Tôi không chắc chắn theo cách bạn ngụ ý rằng tôi đã trả lời câu hỏi của riêng tôi. Câu hỏi của tôi chỉ chứa một giả thuyết đầu cơ, không có dữ liệu thực tế hoặc lý thuyết thực sự liên quan. Tôi tin rằng câu trả lời của bạn củng cố việc sử dụng Caps Lock được đề xuất của tôi bằng cách giải thích các cơ chế cấp thấp hơn.
Bort

@Bort Tôi đã chỉnh sửa câu hỏi của mình để hy vọng làm cho nó rõ ràng hơn. Tôi đã cố gắng trả lời câu hỏi của bạn, nhưng cảm thấy cần phải giải thích mọi thứ hoạt động như thế nào để đặt nền tảng là tại sao mọi thứ lại như thế này. Mặt khác, nó được xem như ý kiến ​​của tôi và không dựa trên thực tế.
LPChip
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.