728x90
반응형
book.naver.com/bookdb/book_detail.nhn?bid=16317946
*해당 글은 학습을 목적으로 위의 도서 내용 중 일부 내용만을 요약하여 작성한 포스팅입니다.
상세한 내용 및 전체 내용 확인을 원하신다면 도서 구매를 추천드립니다.
X 윈도우
- 플랫폼 독립적으로 작동하는 GUI 환경을 구현하기 위해 서버 클라이언트 구조를 기반으로 X 프로토콜을 통해 디스플레이 장치에 윈도우를 그려주고 마우스 및 키보드 등 입력장치를 통한 사용자와의 상효작용을 가능하게 하는 플랫폼
- 터미널이 아닌 GUI를 통해 사용자가 원격 접속이 가능하다.
X 윈도우 특징
- X 프로토콜이라 불리는 네트워크 프로토콜 사용
- 서버 클라이언트 모델이라 네트워크로 연결될 수만 있다면 사용이 가능하다.
- X 서버는 X 클라이언트의 요청에 대해 처리 후 응답하거나 이벤트를 직접 X 클라이언트에 보낼 수 있다.
- X 클라이언트는 원격지에 있는 X 서버의 프로그램을 실행할 수 있다.
- X 윈도우는 사용자 인터페이스에 독립적이다.
- 서버 클라이언트 모델을 사용하기에 어떤 시스템이든 쉽게 이식이 가능하다.
X 윈도우 구조
1) X 서버
- 여러 입출력 장치 디바이스와 직접 통신하고 관리한다.
- 디스플레이 장치를 제어하여 X 클라이언트에 디스플레이 서비스를 제공한다.
- X 서버는 로컬 X 클라이언트와 통신을 위해 /tmp/.X11_unix/X0 이라는 유닉스 도메인 소켓을 사용
- TCP 6000번 포트를 사용하며, 로컬 및 원격지의 다수의 X 클라이언트와 연결이 가능하다.
2) X 클라이언트
- Xlib을 사용하여 작성된 일종의 응용 프로그램
- 디스플레이 관련 서비스를 X 서버에 요청한다.
- X 서버에서 발생한 이벤트를 받아 처리한다.
3) X 프로토콜
- X서버와 클라이언트가 정보를 주고받는 메시지 형식
- Request, Reply, Event, Error로 구성된다.
- 메시지 처리를 위해 request queue와 event queue를 운용한다.
- X 프로토콜을 통해 X 서버와 클라이언트는 높은 이식성과 원격지에서의 접속이 가능하게 되었다.
4) Xlib / XCB
- C 언어로 작성된 X 윈도우 시스템 프로토콜 클라이언트 라이브러리
- 저수준 인터페이스이기에 상위 라이브러리은 Xtoolkit을 사용한다.
- 개발자에게 X 클라이언트를 개발할 수 있는 API 제공
- X.org (2001) 부터는 Xlib 대신 XCB를 사용한다.
5) XToolkit (Xt)
- X 윈도우에서 GUI 프로그램 개발을 위해 C/C++로 개발된 API 프레임워크
- Xlib이 제공하지 않는 버튼, 메뉴 같은 그래픽 요소와 연관된 기능을 제공
- FLTK, GTK+, Qt와 같은 툴킷은 Xlib/XCB 기반으로 구현
XFree86과 X.org
1) XFree86 (1992 ~ 2004)
- GPL 라이선스와 호환되지 않아 X.org를 더 사용.
2) X.org (2004 ~)
- XFree86이 회사 주도로 프로젝트가 진행된 반면 X.org는 커뮤니티 주도로 프로젝트 진행
- freedesktop.org에서 개발
X 윈도우 계층
1) X 서버
- X 서버
- 디스플레이 매니저 : 로그인 인터페이스를 제공해 사용자 인증 수행
2) X 세션 : X 서버에 X 클라이언트가 연결되며 형성. X 서버에서 발생한 이벤트를 클라이언트에 전달한다.
3) X 클라이언트
- 어플리케이션
- 데스크톱 환경 & 위젯 툴킷 : 계정 관리, 디바이스 관리, 네트워크 관리 등 데스크톱 구성을 위한 패키지
- 윈도우 매니저 : X 윈도우상에서 윈도우 관련 다양한 요소를 관리하는 프로그램으로, Dock, 태스크 바, 프로그램 런처, 바탕화면 등 유용한 유틸리티 제공
X 윈도우 데스크톱 환경
KED | GNOME | |
라이브러리 | Qt | GTK |
디스플레이 매니저 | KDM | GDM |
파일 관리자 | Konqueror | nautilus |
윈도우 매니저 | KWM | Metacity (GNOME2) / mutter (GNOME3) |
명령어
1) startx
- 로그인 후 X 윈도우 구동 명령어
- 오류 발생시 Xconfiguratior을 실행하여 설정
2) xhost
- X 서버에 접근할 수 있는 클라이언트 지정 혹은 해제
- 호스트 기반 인증
- xhost [+|-] [address|hostname]
3) display
- X 클라이언트 프로그램이 윈도우를 표시할 서버의 주소를 설정
- : 0.0 은 기본값으로 첫 번째 모니터를 뜻한다.
4) xauth
- .Xauthority 파일에 쿠키 내용을 추가, 삭제, 출력하는 유틸리티
- xhost가 호스트 기반 인증 방식이라면, 이건 MMC 기반 인증 방식 (사용자 기반)
X 윈도우 소프트웨어
- Evince : 문서 뷰어
- Libre Office : 오피스 프로그램으로 MS 오피스 호환
- Cheese Photo Booth : 웹 캠
- Rythmbox : 오디오 플레이어
- Shotwell : 사진 관리 프로그램
1. X-윈도우 모드로 부팅 시, 실행되는 데몬 설정이 저장된 디렉터리 위치는?
1) /etc/inittab
2) /etc/sysconfig
3) /etc/X11
4) /etc/rc.d/rc5.d
4
2. 다음 중 X 윈도우의 기본 구성 요소가 아닌 것은?
1) 서버와 클라이언트
2) Xlib
3) Zlib
4) X 프로토콜
3
3. 원격지에서 X 클라이언트를 이용하기 위한 설정을 사용자 기반의 키 인증을 진행할때 사용하는 명령어와 관련 파일은?
1) xhost, .authorized_keys
2) xhost, .Xauthority
3) xauth, .authorized_keys
4) xauth, .Xauthority
4
4. x윈도우를 실행시키는 스크립트로 시스템 환경을 초기화시키고 시작하는 데 필요한 여러 프로그램을 호출하고 최종적으로 xinint을 호출하는 명령어는?
startx
728x90
반응형
'자격증 > 리눅스 마스터 1급' 카테고리의 다른 글
리눅스마스터_1급_1과목_프로세스 (0) | 2021.02.08 |
---|---|
리눅스마스터_1급_1과목_Shell (0) | 2021.02.07 |
리눅스마스터_1급_1과목_리눅스의 구조 (0) | 2021.02.07 |
리눅스마스터_1급_1과목_리눅스와 하드웨어 (0) | 2021.02.07 |
리눅스마스터_1급_1과목_리눅스의 기초 (0) | 2021.02.07 |