https://unix.stackexchange.com/a/503874/674설명하다
모니터는 실제로 X 서버입니다. 각 X 서버에는 모니터가 하나만 있습니다. 따라서 여러 X 서버가 동일한 모니터에서 동시에 실행될 수 없으며 X 서버가 동시에 여러 모니터에서 실행될 수 없습니다. (엄밀히 말하면 후자의 주장은 틀렸지만, 다중 모니터를 서비스할 수 있는 X 서버는 없다고 생각합니다.)
https://www.x.org/archive/X11R6.8.0/doc/X.7.html#sect4디스플레이에는 여러 화면/모니터가 있을 수 있습니다.
$DISPLAY
모니터뿐만 아니라 화면을 지정하며 X 서버 또는 X 클라이언트를 시작하는 데 사용됩니다. 그러면 X 서버는 모니터에서 시작되나요, 아니면 화면에서 시작되나요? 그러면 X 서버는 모니터에서 시작되나요, 아니면 화면에서 시작되나요?https://unix.stackexchange.com/a/503884/674차트가 있습니다
화면과 모니터를 구별하는 동시에https://www.x.org/archive/X11R6.8.0/doc/X.7.html#sect4화면번호를 설명하면 같은 개념이라고 말하는 것 같습니다. 어느 것이 맞나요?
Display X 서버는 모니터의 모든 화면을 덮습니다. 그렇다면 디스플레이 서버는 디스플레이, 화면 또는 모니터에서 시작됩니까?
"$DISPLAY"를 지정할 수 있나요? 설명하다:
xserver는 하드웨어 프레임 버퍼, 가상 프레임 버퍼(Xvfb) 또는 다른 xserver(Xephyr)의 창을 사용할 수 있습니다. 마지막 두 개는 "가상" xserver/display의 예입니다.
프레임 버퍼가 디스플레이, 화면 또는 모니터와 연결되어 있습니까?
죄송합니다. 아직 여러 개념이 혼란스럽습니다. 감사해요.
답변1
그러면 X 서버는 모니터에서 시작되나요, 아니면 화면에서 시작되나요?
나는 이것을 모든 의도와 목적에 대해 X 서버와 다르게 표현하는 방법을 모릅니다.예모니터("모니터"는 X Window 개념이며 여기서 말하는 내용이 바로 이것이라는 것을 이해합니다.) X 서버를 시작할 수 없습니다존재하다모니터예모니터. "X 서버가 모니터를 시작한다", "모니터에는 하나 이상의 화면이 포함되어 있다"고 생각할 수 있습니다.
이 DISPLAY
변수는 당신이 말했듯이 X 디스플레이 이상의 것을 지정할 수 있기 때문에 혼란스러울 수 있습니다.
어느 것이 맞나요?
차트; 아래 설명을 참조하세요.
디스플레이 서버가 모니터, 화면 또는 모니터에서 시작됩니까?
X Window 설명서에서 "디스플레이 서버"는 X 서버와 동의어이므로 위 내용이 적용됩니다.
X Window 문서가 오래 전에 작성되었다는 점을 고려하면, 가상 모니터가 사용되지 않고(전혀 없다고 하더라도) 다중 모니터 설정이 복잡하고 종종 여러 X 화면이 관련되어 있을 때 이 내용이 도움이 될 수 있습니다. 때로는 다중 모니터일 수도 있습니다. X 서버. 따라서 X 문서에서 화면은 일반적으로 모니터입니다. 그러나 여러 모니터를 여러 화면으로 나누는 것이 귀찮다는 사실을 곧 알게 되었고, 그래픽 카드가 여러 모니터를 하나의 단위로 처리할 수 있게 되자 사용 패턴이 바뀌었고 X 화면이 여러 모니터를 덮는 경향이 있었습니다.
프레임 버퍼가 디스플레이, 화면 또는 모니터와 연결되어 있습니까?
"프레임버퍼"는 여러 정의가 있는 다소 모호한 용어입니다. 인용한 댓글의 맥락에서 이는 화면과 연결되어 있으며 다음을 통해 확인할 수 있습니다 Xvfb
. 프레임 버퍼에 메모리 매핑 파일을 사용하도록 지시하고 여러 화면을 정의하면 화면별 사용을 볼 수 있습니다. 프레임버퍼 파일.
답변2
1000번째 말씀하신 것처럼 디스플레이는예X 서버. 따라서 "X 서버가 모니터에서 실행됩니다"는 의미가 없습니다.
상사. - Xephyr
또는 와 같은 실제(가상) 하드웨어 기반 대상 Xvfb
. Xorg with dummy video driver
문서는 자주 업데이트되지 않지만 최신 시스템에서는 "모니터가 하드웨어 묶음이다"라고 말하는 것은 부적절합니다. "모니터는 실행 중인 X 서버 프로세스입니다"라고 말하는 것이 더 좋습니다.
X 서버는 X11 프로토콜을 사용하여 연결이 이루어질 수 있는 주소를 수신합니다. X11 프로토콜 데이터가 전송되는 방법은 순전히 플랫폼에 따라 다릅니다. TCP 소켓 쌍, posix 서버 측의 TCP 소켓 및 posix가 아닌 클라이언트 측의 매직 객체(기본적으로 연결된 두 개의 TCP 끝점)일 수 있습니다. 로컬로 연결된 한 쌍의 UDS(기본적으로 두 개의 연결된 IPC 끝점, 이 경우 클라이언트와 서버가 DRI와 같이 동일한 시스템에서 실행되므로 X 윈도우 시스템이 더욱 강력하고 효율적이 될 수 있습니다).
X 서버는 malloc()
수여러 영역을 실행할mmap()