[리눅스 마스터 2급] X-윈도우(X-window)

2023. 1. 14. 22:48·리눅스/리눅스 마스터 2급
728x90
반응형
SMALL
  • X-윈도우?

네트워크 프로토콜(x-프로토콜) 기반의 클라이언트/서버 시스템
리눅스 환경의 각종 어플리케이션과 유틸리티에 대해 그래픽 사용자 인터페이스(GUI)를 제공한다.
리눅스 = CUI(command User Interface)
플랫폼과 독립적으로 작동하는 그래픽 시스템이다.

  • 특징

네트워크 기반의 그래픽 환경을 제공한다.
이기종 시스템 사이에서도 사용 가능하다. (smaba)
스크롤바, 아이콘, 색상 등 그래픽 환경 자원들이 특정 형태로 정의되어 있지 않다.(표준화 되어 있지 않다.)
디스플레이 장치에 의존적이지 않으며 원하는 인터페이스를 만들 수 있다.

  • 종류
  • XProtocol
    서버와 클라이언트 사이에서 통신되는 Requist, Reply, Event, Error의 기본 메세지이다.
    서버와 클라이언트 사이에서 정보를 주고 받게 해주는 프로토콜
  • Xlib
    클라이언트에서 사용하는 라이브러리
    C나 LISP언어로 만들어졌다.
    윈도우 생성, 이벤트 처리, 창, 조회, 키보드 처리등의 라이브러리를 제공한다.
  • XCB
    클라이언트에서 사용하는 라이브러리
    Xlib에서 XCB로 대체되어 현재는 XCB를 사용한다.
    Xlib에서 지원하는 것을 모두 XCB에서 지원한다.
    Xlib에 비해 향상된 쓰레드 기능을 가지며, 확장성이 좋다.

  • Xtookit
    클라이언트에서 사용하는 라이브러리
    고급레벨의 GUI 이용가능(위젯, GUI구성하는 객체)
  • XFree86
    X윈도우 시스템의 구현체
    인텔 x86운영체제에서 사용하는 서버 프로그램
    무료로 사용가능
    다양한 환경 설정이 필요하다(xf86config에서 설정)

  • XF86Config
    XFree86의 환경설정을 담당(설정 파일)
    폰트, 키보드, 마우스, 모니터, 비디오카드, 색상 등을 설정
  • Xlib, XCB(저수준 라이브러리) - > GTK+, QT, FLTK, XFome 등의 라이브러리가 있다.
  • Xtoolkit(고수준 라이브러리) -> XView, Xaw, Motif, Xtlntrinsics 등의 라이브러리가 있다.

 

  • X-window 설정과 실행
  • /etc/inittab
    0 - halt(Do NOT set initdefault to this)
    1 - Single user mod
    2 - Multiuser, without NFS(The same as 3, if you do not have networking)
    3 - Full multiuser mode (CUI로 부팅)
    4 - unused
    5 - X11(x 윈도우로 부팅)
    6 - reboot(Do NOT set initdefault to this)

  • X-window 실행
    그래픽 환경이 아닌 터미널 윈도우로 로그인한 경우 몇 개의 프로그램을 실행해야 한다.
    startx -- [ 인자값]
    .Xauthority : x윈도우 실행시 관련된 키 값 저장

 

  • 윈도우 매니저와 데스크톱 환경
    데스크톱 매니저를 기반으로 윈도우 매니저, 디스플레이 매니저가 활성화 되어 사용된다


  • 윈도우 매니저
    X-windows상에서 창외 배치와 표현을 담당하는 시스템 프로그램
    창 열기/닫기, 창의 생성 위치, 창의 크기 조정, 창의 외향과 테두리를 변화
    라이브러리 : XLib, XCB
    리눅스에서 사용 가능한 윈도우 매니저들은 다양하다.
    대표적인 종류 : fvwm, twm, windowMaker,After Step

  • 데스크톱 환경/데스크톱 관리자(Desktop Enviroment/ Desktop Manager)
    GUI 사용자에게 제공하는 인터페이스 스타일
    윈도우 매니저, 파일 관리자, 도움말, 제어판 등 다양한 도구를 제공하는 패키지 형태 프로그램
    아이콘, 창, 도구,모음, 폴더 배경화면, 데스크톱 위젯도 제공
    드래그 앤 드롭과 프로세스 간의 통보 가능을 지원한다.
    대표적인 종류 : KDE(Kool Desktop Enviroment), GNOME(GNU Network Object Model Enviroment), LXDE, xfce
    데스크톱 환경에 따라 아이콘,창,도구모음,폴더 등이 다르게 지원

  • 디스플레이 매니저
    X0window 시스템 상에서 작동하는 프로그램
    1988 xdm디스플레이 매니저가 도입
    1989 xdmcp(X Display Manager Control Protocol)이 도입
    디스플레이 매니저 종류 : XDM, GDM, KDM, dtlogin 등이 있다.
    로컬 또는 리모트 컴퓨터의 X server의 접속과 세션 시작을 담당한다.
    사용자에게 그래픽 로그인 화면을 띄워주고 아이디와 패스워드를 입력받아 인증을 진행한다.
    XDM : 초창기 사용했으며 현재는 거의 사용x
    KDM : KDE 데스크톱 환경에서 사용하는 디스플레이 매니저이다. C++/QT기반
    GDM : GNOME 데스크톱 환경에서 사용하는 디스플레이 매니저, GNOME 그래픽 로그인 프로그램 담당
    gtk 라이브러리를 이용해서 구현되고 있다.
    gnu,gpl기반의 라이센스

  • X-window 응용 프로그램

  • office
    LiberOffice
    - Writer문서 작성, Impress 프레젠테이션, Clac엑셀, Draw 드로잉
    gedit
    - 텍스트 편집
    kwrite
    - KDE 기반 텍스트 편집
    nauilus
    - GNOME기반 파일 관리 프로그램
  • graphic
    GIMP
    - 이미지 편집 프로그램
    ImageMagik
    - 이미지 생성 및 편집
    eog
    - GNOME의 이미지 뷰어
    kolourpaint
    - Ubuntu의 이미지 편집
    gThumb
    - GNOME의 이미지 뷰어
    gwenview
    - KDE의 이미지 뷰어

  • multimedia
    Totem
    - GNOME 기반 사운드 및 비디오
    RYTHMBOX
    - 통합형 음악 관리 프로그램
    CHEESE
    - GNOME 기반 동영상 프로그램

  • etc
    Dolphin
    - KDE용 파일 관리자
    kSnapshot
    - 스크린샷 프로그램

 

728x90
반응형
SMALL

'리눅스 > 리눅스 마스터 2급' 카테고리의 다른 글

리눅스 마스터2급 - 명령어 정리(1) man,passwd,useradd 등  (2) 2023.02.16
리눅스 well-known port  (0) 2023.01.15
[리눅스 마스터 2급] 프로세스(Process)  (0) 2023.01.14
[리눅스 마스터 2급] 쿼터(Quota)  (0) 2023.01.14
'리눅스/리눅스 마스터 2급' 카테고리의 다른 글
  • 리눅스 마스터2급 - 명령어 정리(1) man,passwd,useradd 등
  • 리눅스 well-known port
  • [리눅스 마스터 2급] 프로세스(Process)
  • [리눅스 마스터 2급] 쿼터(Quota)
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (325)
      • 면접 준비 (22)
        • OS (6)
        • Spring Security (0)
        • Java (3)
        • DB (11)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      자바
      redis 채팅
      Springframework
      스프링프레임워크
      java
      자바 알고리즘
      리눅스
      JavaScript
      spring redis
      자바 면접
      HTML
      jsp기초
      자바기초
      자바 반복문
      jsp request
      자바스크립트
      Spring
      redis
      레디스
      JS
      리눅스마스터2급
      자바 면접질문
      Til
      Spring Data Redis
      프로그래머스
      springsecurity
      JSP
      백준
      리눅스마스터2급정리
      CSS
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    [리눅스 마스터 2급] X-윈도우(X-window)
    상단으로

    티스토리툴바