운영체제#15

LeeMir, 31 May 2021

5강 - Input/Output(이어서)


RS-232 Terminal Hardware
  • 중대형? 중계형? 컴퓨터 한 대에 여러 대의 터미널(only text)이 연결되어 있었음
  • 컴퓨터와 터미널은 RS-232라는 serial communication line로 연결됨
    • 이는 현재 PC에서 사용하는 COM1과 COM2 port임
  • 컴퓨터에서는 각 터미널에 보여주는 화면(글자) 각각을 모두 메모리에서 유지하고 있어야 함
    • 대부분 빈공간이 많고 글자가 적을 확률이 높으니까 Central buffer pool 방식을 사용
      • 버퍼에 글자의 위치와 빈공간이 아닌 글자를 저장하는 방식
      • 용량을 많이 줄일 수 있음
Keyboard Software
  • ASCII 코드에는 Ctrl 문자가 존재
    • 터미널 사용을 위해 존재
  • 예전 Windows의 MS-DOS와 같은 경우 newline character가 두 종류였음(Carriage return, Linefeed)
    • CTRL-M / CTRL-J
  • 터미널의 커서를 움직이는 동작은 ESC를 이용
Display Hardware
  • PC가 보급되면서 그래픽 카드가 생김
    • Video RAM과 Video Controller가 존재
    • Video Controller는 Video RAM의 내용을 화면(모니터)에 출력하는 역할
    • 소프트웨어들은 Video RAM의 내용을 갱신함
  • 텍스트를 출력할 때에는 2 bytes씩 사용
    • 속성을 명시하는 1 byte 존재
Input Software
  • 키보드의 각 키에는 스캔 코드가 존재
    • 운영체제의 keyboard driver는 이 스캔 코드를 읽은 후, 이를 ASCII 코드로 변환해서 화면에 출력
  • 한글 코드를 추가하기 위해 사람들이 많이 노력함
    • 키맵과 코드 페이지 등을 만듦
The X Window System
  • 터미널이 X server, 컴퓨터가 X client (X protocol)
    • 컴퓨터가 터미널한테 화면 업데이트 등 출력을 요청하기 때문
  • 모든 요청을 message의 전달로 처리
Bitmaps
  • 그림을 그릴 때에는 Bitmap(pixel) 사용
  • pixel 단위의 경우 확대시 깨짐
    • Trye Type Fonts 존재
    • Vector 형태
Thin Clients
  • 매우 간단하고 작은 단위의 Client
  • 모든 작업은 통신 형태로 Server 역할인 중대형 컴퓨터가 수행해 Client로 보내줌
Power Management
  • 예전에는 브라운관 모니터 때문에 Display가 압도적으로 power를 많이 씀
  • 처음 CPU는 전력 소모 상관 없이 성능 향상을 목표로 발전했는데, 전력 소모량도 신경쓰고 있음
  • 전력 소모를 절약하는 방법
    • (Display) 아무것도 안떠도 되는 화면은 led backlight를 아예 끄는 방법
    • (CPU) 속도를 2배로 빠르게 하려면 트랜지스터 특성상 전압을 2배 이상을 걸어야함
      • 속도를 반으로 줄이면 필요 전압은 4분의 1로 줄어듦, 따라서 이 때 전력 소비량을 반으로 줄일 수 있음