Tastaturpuffer und CPU

552
Newbie

Verwenden moderne Computer Vollduplex- oder Halbduplex-Kommunikation zwischen Tastaturpuffer und CPU oder deren gemischten Komponenten? Wenn wir im Terminal einige Befehle eingeben, nehme ich an, dass dies halbduplex ist, da dieser Befehl ausgeführt wird, nachdem die Eingabetaste gedrückt wurde. Wo wird Vollduplex verwendet?

0
Huh Tastaturen werden interruptgesteuert. Nichts mit Duplex zu tun. DavidPostill vor 7 Jahren 0
[Tastatursteuerung (Computing)] (https://en.wikipedia.org/wiki/Keyboard_controller_ (Computing)) DavidPostill vor 7 Jahren 0
@DavidPostill Ich stimme zu. Ich und eine andere Person haben eine Antwort eingereicht, um den Unterschied zu erklären. Feedback / Änderungen / Negativvereinbarungen werden geschätzt. Lol. DrZoo vor 7 Jahren 0
@DrZoo Die Antworten sind gut. Ich habe als unklar gewählt, da ich keine Ahnung habe, was der Benutzer wirklich herausfinden möchte. DavidPostill vor 7 Jahren 1

2 Antworten auf die Frage

0
DrZoo

Ich würde sagen, moderne PCs machen es schwierig, Tastatur als Duplex-Hardware darzustellen. Die Unterschiede zwischen Halbduplex und Vollduplex liegen in der Fähigkeit, Daten gleichzeitig zu senden und zu empfangen. Bei einer Tastatur sendet die Tastatur die Tasten an den Puffer, um die CPU nacheinander zu verbrauchen.

Heute wird mit einem CPU-Interrupt auf Tastendruck geprüft. Dies geschieht mehrmals pro Sekunde. Der erzeugte Interrupt zeichnet dann die Tastendrücke im Tastaturpuffer auf, damit die CPU diese verbrauchen und entsprechend verwenden kann.

Die CPU stellt jedoch niemals Daten in eine Warteschlange, um sie an die Tastatur zu senden.

Basierend auf diesem Wiki-Artikel zu Tastaturpuffern kann ich eine Halbduplex-Tastatur nur auf alten Schulterminals halbwegs verstehen. Selbst auf den Schulsystemen der alten Schule würde ich es eher als Halbduplexsystem sehen als als Halbduplextastatur.

Ein Terminal war ein sehr schlechtes Beispiel für das, was ich zu sagen versuche. Ich habe nur über allgemeine Kommunikationsprotokolle zwischen Tastatur und CPU nachgedacht. Newbie vor 7 Jahren 0
@Newbie Hast du den Wiki-Artikel gelesen? "In Halbduplexsystemen werden Tastatureingaben lokal auf einem Computerterminal wiederholt. Der Benutzer kann die Befehlszeile auf seinem Terminal sehen und bearbeiten, bevor sie an den Hauptcomputer übertragen wird. Der Puffer ist also lokal." Wie ich in meiner Antwort erläutert habe, senden Sie entweder per Halbduplex ** oder ** Daten. Vollduplex erlaubt das gleichzeitige Senden von ** UND ** Daten. Auf einem Terminal geben Sie entweder einen Befehl ein ** ODER **, um einen Befehl auszuführen. Sie können während der Ausführung keinen neuen Befehl eingeben. Also halbduplex. DrZoo vor 7 Jahren 0
0
dirkt

Bei "modernen" Computern können Sie die Tastatur über USB oder über den PS / 2-Tastaturanschluss anschließen. Beide verwenden ein Halbduplex-Protokoll (Daten können nur in eine Richtung gesendet werden, nicht in beide Richtungen gleichzeitig). Dies ist jedoch nicht besonders wichtig, da die einzigen Daten, die an die Tastatur gesendet werden, das Ein- und Ausschalten der LEDs sind. Daher gehen die meisten Daten ständig von der Tastatur bis zum Computer. Außerdem kann ein Mensch die Tasten nicht schnell genug drücken, um die Leitung zu sättigen.

Wenn wir im Terminal einige Befehle eingeben, nehme ich an, dass dies halbduplex ist, da dieser Befehl ausgeführt wird, nachdem die Eingabetaste gedrückt wurde. Wo wird Vollduplex verwendet?

Das hat nichts mit "Vollduplex" oder "Halbduplex" zu tun, möglicherweise haben Sie die Bedeutung der Wörter missverstanden.

Danke für die Antwort, und ja, ich habe es missverstanden. Trotzdem, Sie haben verstanden, was ich zu sagen versuche, und haben mir eine gute Antwort gegeben. Newbie vor 7 Jahren 0
Ich glaube nicht, dass die Tastaturbeleuchtung Daten hat, die an die Tastatur zurückgesendet werden. Dies sind Daten, die lokal von der Tastaturhardware verarbeitet werden, indem die Logikgatter einfach geöffnet oder geschlossen werden, um die Beleuchtung des Lichts zuzulassen oder abzuschalten. Die CPU sendet kein Signal "Ausschalten des Lichts". DrZoo vor 7 Jahren 0
@DrZoo: Für PS / 2 siehe [hier] (http://www.computer-engineering.org/ps2keyboard/). Der Befehl zum Einstellen der LEDs lautet "0xED". Für USB siehe [hier] (http://www.usb.org/developers/hidpage/HID1_11.pdf). Es gibt Beispiele für HID-Ausgabedeskriptoren, um die Tastatur-LEDs einzustellen. In Anhang C heißt es explizit: "Die Synchronisation zwischen LED-Status und CAPS LOCK-, NUM LOCK-, SCROLL LOCK-, COMPOSE- und KANA-Ereignissen wird vom Host und NICHT von der Tastatur verwaltet." dirkt vor 7 Jahren 0
@dirkt die USB-Seite war dicht lol. Ich habe es aber in der PS / 2 gefunden. Vielen Dank! DrZoo vor 7 Jahren 0