คีย์บอร์ดส่งกิจกรรมไปยังคอมพิวเตอร์ เหตุการณ์แจ้งว่า“ สแกนโค้ดไม่ทำงาน” หรือ“ สแกนโค้ดไม่ทำงาน” ที่ปลายอีกด้านหนึ่งของห่วงโซ่การใช้งานที่ทำงานในสถานีคาดหวังว่าการป้อนข้อมูลในรูปแบบของลำดับของตัวละคร (ยกเว้นพวกเขาได้ร้องขอการเข้าถึงแบบ raw เช่นเดียวกับที่เซิร์ฟเวอร์ X ทำ) เมื่อคุณกดAแป้นพิมพ์จะส่งข้อมูล“ รหัสการสแกน 38 ลง” คนขับคอนโซลเงยหน้าขึ้นของรูปแบบแป้นและแปลงนี้ใน“ตัวอักษรa
” (หากไม่มีการปรับเปลี่ยนคีย์ถูกกด)
เมื่อคุณกดคีย์หรือคีย์ผสมที่ไม่ส่งผลให้มีตัวอักษรข้อมูลจะต้องถูกเข้ารหัสในรูปแบบของอักขระ ปุ่มบางปุ่มและคีย์ผสมมีอักขระควบคุมที่สอดคล้องกันเช่นCtrl+ Aส่งอักขระ␁
(ค่าไบต์ 1) Returnส่งอักขระ␍
(Ctrl + M, ค่าไบต์ 13) ฯลฯ ปุ่มฟังก์ชันส่วนใหญ่ไม่มีอักขระที่สอดคล้องกันและส่งแทน ลำดับของอักขระที่เริ่มต้นด้วยอักขระ␛
(escape, byte value 27) ตัวอย่างเช่นคีย์Upถูกแปลเป็นลำดับ escape ␛[A
(สามตัวอักษร: escape, open bracket, capital A)
พรอมต์ชื่อผู้ใช้บนคอนโซลนั้นเป็นใบ้และไม่เข้าใจลำดับการหลีกเลี่ยงส่วนใหญ่ มันไม่มีคุณสมบัติของรุ่นบรรทัดและประวัติที่คุณคุ้นเคย: สิ่งเหล่านี้มีให้โดยเชลล์และจนกว่าคุณจะเข้าสู่ระบบคุณจะไม่มีเชลล์ ดังนั้นมันจึงแสดงลำดับการหลบหนี มีสัญลักษณ์สำหรับการไม่เป็นตัวละครจึงแสดงเป็น␛
^[
โดยปกติแล้ว^
สัญญาณจะถูกใช้เป็นคำนำหน้าสำหรับอักขระควบคุมและการหลบหนีเป็น^[
เพราะค่าของไบต์: มันคือค่าไบต์[
เป็นลบ 64
หากคุณกดUpที่ shell prompt จะส่งลำดับ 3 ตัวอักษรไปยัง shell ของคุณ เชลล์ตีความสิ่งนี้เป็นลำดับคำสั่ง (โดยทั่วไปเพื่อเรียกคืนรายการประวัติก่อนหน้า) หากคุณกดCtrl+ Vจากนั้นUpที่พร้อมต์เชลล์สิ่งนี้จะแทรกลำดับ escape ที่พร้อมต์: Ctrl+ Vเป็นคำสั่งเพื่อแทรกอักขระถัดไปตามตัวอักษรแทนที่จะตีความมันเป็นคำสั่งดังนั้น␛
อักขระจะไม่ถูกตีความว่าเป็นจุดเริ่มต้นของลำดับหนี .
ปุ่มบางปุ่มเป็นเพียงตัวดัดแปลงและไม่ได้ส่งไปยังแอปพลิเคชันเทอร์มินัล ตัวอย่างเช่นเมื่อคุณกดปุ่มShiftนี้การเข้าพักข้อมูลในโปรแกรมควบคุมขั้วและถูกนำเข้าบัญชีถ้าคุณกดAเพื่อให้คนขับรถส่งไปยังโปรแกรมประยุกต์แทนA
a
นอกจากนี้บางปุ่มฟังก์ชั่นอาจไม่ได้รับการแมปในคอนโซลของคุณ
สำหรับมุมมองที่คล้ายกันใน GUI ดูที่เมตาคีย์ของ bash คืออะไร
getty
หรือlogin
แม้ว่าฉันไม่แน่ใจว่าทำไม การศึกษาที่คาดเดาได้บอกว่าหน้าจอการพิมพ์ถูกตีความเป็นพิเศษโดยเคอร์เนลด้วยเหตุผลทางประวัติศาสตร์ แม้ว่าฉันจะไม่แน่ใจ 100% ยกเว้นการปรับเปลี่ยน