VCS

Section: Linux Programmer's Manual (4)
Updated: February 19, 1995
Index
Return to Main Contents
 

이름

vcs, vcsa - 가상 콘솔 메모리  

설명

/dev/vcs0 는 문자 장치로서, 메이저 넘버 7과 마이너 넘버 0을 지니고, 보통 모드 0664와 root.tty를 소유자로 지닌다. 이는 또한 가상 콘솔 터미널에 현재 보이는 메모리를 참조한다.

/dev/vcs[1-63] 는 가상 콘솔 터미널을 위한 문자 디바이스로서, 메이저 넘버 7, 마이너 넘버를 1에서 63까지 갖고, 보통 모드 0664와 root.tty를 소유자로 지닌다. /dev/vcsa[0-63]는 동일하지만, 화면의 넓이와 마우스 커서의 위치를 주는 4바이트가 접두어로를 지니는 속성들을 포함한다. (lines, columns, x, y) (x = y = 0 화면의 왼쪽 상위)

이들은 console(4)의 스크린 덤프 ioctls를 대체시키므로, 시스템 관리자는 파일 시스템 권한들을 이용하여 액세스를 제어할 수 있다.

첫번째 여덟개의 가상 콘솔들에 대해 이 장치들은 아래의 내용에 의해 만들어질 수 있다.

        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*
어떤 ioctl() 요청들도 지원되지 않는다.  

예제

여러분은 vt3에서 cat /dev/vcs3 >foo을 입력하고, vt1으로 전환함으로서 스크린덤프를 할 수 있다. 그 출력은 새로운 행의 문자들을 포함하지 않는다라는 것을 참고하하. 따라서
 fold -w 81 /dev/vcs3 | lpr 또는 (horrors) setterm -dump 3 -file /proc/self/fd/1와 같은 일부 프로세스가 더 필요할 수도 있다. 이 프로그램은 두번째 가상 콘솔의 마우스 커서 아래의 문자 및 화면 속성들을 보여주고, 배경색을 변경시킨다.
        #include <unistd.h>
        #include <stdio.h>
        #include <fcntl.h>

        void main()
        {       int fd;
                struct {char lines, cols, x, y;} scrn;
                char ch, attrib;

                fd = open("/dev/vcsa2", O_RDWR);
                (void)read(fd, &scrn, 4);
                (void)lseek(fd, 4 + 2*(scrn.y*scrn.cols + scrn.x), 0);
                (void)read(fd, &ch, 1);
                (void)read(fd, &attrib, 1);
                printf("ch='%c' attrib=0x%02x\n", ch, attrib);
                attrib ^= 0x10;
                (void)lseek(fd, -1, 1);
                (void)write(fd, &attrib, 1);
        }
 

파일

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

저자

Andries Brouwer <aeb@cwi.nl>  

역사

Introduced with version 1.1.92 of the Linux kernel.  

관련 항목

console(4), tty(4), ttys(4), selection(1)


 

Index

이름
설명
예제
파일
저자
역사
관련 항목

This document was created by man2html, using the manual pages.
Time: 08:07:01 GMT, March 25, 2004