Man page - vcsa(4)

Packages contains this manual

Available languages:

en fr es it pl cs ja ru ro de

Manual

vcs

BEZEICHNUNG
BESCHREIBUNG
DATEIEN
VERSIONEN
BEISPIELE
SIEHE AUCH
ÜBERSETZUNG

BEZEICHNUNG

vcs, vcsa - Speicher der virtuellen Konsolen

BESCHREIBUNG

/dev/vcs0 ist ein zeichenorientiertes Gerät mit der Major-Nummer 7 und der Minor-Nummer 0. Das Gerät gehört üblicherweise root:tty; der Zugriffsmodus ist auf 0644 gesetzt. Es verweist auf den Speicher der aktuell angezeigten virtuellen Konsole.

/dev/vcs[1-63] sind zeichenorientierte Geräte für virtuelle Konsolen mit der Major-Nummer 7 und den Minor-Nummern 1 bis 63, normalerweise Modus 0644 und die Eigentümerschaft root:tty. /dev/vcsa[0-63] sind identisch, verwenden aber unsigned short s (in der Reihenfolge des Rechners), die Attribute enthalten und denen vier Bytes vorangestellt sind, die die Bildschirmgröße und die Cursor-Position angeben: lines , columns , x , y . ( x = y = 0 linke obere Bildschirmecke)

Wenn eine Schrift mit 512 Zeichen geladen wird, kann die neunte Bit-Position durch die Anwendung der ioctl (2)-Operation VT_GETHIFONTMASK (verfügbar seit Linux 2.6.18) auf /dev/tty[1-63] bestimmt werden; der Wert wird in dem unsigned short zurückgegeben, auf den das dritte Argument von ioctl (2) zeigt.

Diese Geräte ersetzen die »Screendump«- ioctl (2)-Operationen von ioctl_console (2), sodass der Systemadministrator die Rechte für die einzelnen Konsolen durch das Setzen von normalen Dateisystemattributen vergeben kann.

Die Geräte für die ersten acht virtuellen Konsolen können wie folgt erstellt werden:

for x in 0 1 2 3 4 5 6 7 8; do
mknod -m 644 /dev/vcs$x c 7 $x;
mknod -m 644 /dev/vcsa$x c 7 $[$x+128];
done
chown root:tty /dev/vcs*

Aufrufe von ioctl (2) werden nicht unterstützt.

DATEIEN

/dev/vcs[0-63]
/dev/vcsa[0-63]

VERSIONEN

Eingeführt in der Linux-Version 1.1.92.

BEISPIELE

Sie können ein »Screendump« (Bildschirmphoto) von VT2 erstellen, indem Sie auf VT1 wechseln und folgendes eingeben:

cat /dev/vcs3 >foo

Beachten Sie, dass die Ausgabe kein Zeilenumbruchzeichen enthält und Nacharbeit notwendig sein kann, wie

fold -w 81 /dev/vcs3 | lpr

oder (Horror)

setterm -dump 3 -file /proc/self/fd/1

Das Gerät /dev/vcsa0 unterstützt Braille.

Das folgende Programm zeigt die Zeichen- und Bildschirmattribute unter dem Cursor der zweiten virtuellen Konsole an und ändert danach dort die Hintergrundfarbe.

#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/vt.h>
int
main(void)
{
int fd;
char *device = "/dev/vcsa2";
char *console = "/dev/tty2";
struct {unsigned char lines, cols, x, y;} scrn;
unsigned short s;
unsigned short mask;
unsigned char attrib;
int ch;
fd = open(console, O_RDWR);
if (fd < 0) {
perror(console);
exit(EXIT_FAILURE);
}
if (ioctl(fd, VT_GETHIFONTMASK, &mask) < 0) {
perror("VT_GETHIFONTMASK");
exit(EXIT_FAILURE);
}
(void) close(fd);
fd = open(device, O_RDWR);
if (fd < 0) {
perror(device);
exit(EXIT_FAILURE);
}
(void) read(fd, &scrn, 4);
(void) lseek(fd, 4 + 2*(scrn.y*scrn.cols + scrn.x), SEEK_SET);
(void) read(fd, &s, 2);
ch = s & 0xff;
if (s & mask)
ch |= 0x100;
attrib = ((s & ~mask) >> 8);
printf("ch=%#03x attrib=%#02x\n", ch, attrib);
s ^= 0x1000;
(void) lseek(fd, -2, SEEK_CUR);
(void) write(fd, &s, 2);
exit(EXIT_SUCCESS);
}

SIEHE AUCH

ioctl_console (2), tty (4), ttyS (4), gpm (8)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Christian Schmidt <c.schmidt@ius.gun.de>, Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>, Helge Kreutzmann <debian@helgefjell.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org .