[운영체제] 다양한 시스템(분산처리 시스템, 다중처리 시스템, 클러스터 시스템, 실시간 시스템)

[운영체제] 다양한 시스템

다중 프로그래밍, 시분할 시스템에서 더 업그레이드 된 것들..

다중 처리 시스템(Multiprocessor System) 

CPU가 여러개인 시스템을 의미하며 각각의 CPU들이 아주 밀접하게 통신을 하는 구조를 가지고 있습니다. 당연히 성능이 하나의 CPU가 있을 때보다 더 좋으며 하나의 처리기가 고장이 나더라도 속도가 느려질 뿐 시스템은 정상적으로 작동합니다.

  • 대칭적 다중 처리 시스템  
    • 각 CPU가 하나의 운영체제 하에서 작동합니다. 또한 CPU끼리 데이터를 효율적으로 공유하는 구조로 운용이 됩니다.
    • 한쪽이 망가져도 운용이 느려질 뿐 작동은 됩니다.
  • 비대칭적 다중 처리 시스템
    • 각 처리기마다 특정한 작업이 정해져 있고 하나의 주요 CPU가 시스템을 제어하며 다른 CPU들은 미리 정의된 작업 혹은 명령을 수행합니다.


분산 처리 시스템(Distributed Processing System)

네트워크를 이용해 동시에 작업을 처리하는 시스템으로 각각 CPU들은 메모리를 공유하지 않습니다. 당연히 적절한 자원 공유로 계산 속도가 증가하고 신뢰성이 증가합니다.

  • 클라이언트 & 서버 시스템 
    • 클라이언트가 서버로 어떠한 작업 요청을 보내고 서버는 그 작업을 수행해서 다시 클라이언트에게 응답을 보내는 구조입니다.
    • ex) 웹 사이트와 접속자 사이의 관계를 이야기할 수 있습니다.
  • P2P 시스템(Peer to Peer System)
    • 각 컴퓨터가 서버이자 클라이언트가 되는 시스템으로서 대표적인 예시로 토렌트(Torrent) 서비스가 있습니다.
  • 장점
    • 연산속도, 신뢰성, 사용 가능도가 향상된다
    • 시스템의 점진적 확장이 용이하다
    • 단일 시스템에 비해 처리 능력과 저장용랴이 높고 신뢰성이 향상된다
  • 분산 처리 시스템은 노드(node) 또는 사이트(site)의 집합으로 정의 할 수 있다.

분산처리 시스템 이주 방법


  • 자료 이주(data migration)
    • 첫번 째 접근 방법은 파일 전체를 전송하는 것
    • 두번 째 접근 방법은 임의의 작업에 실제적으로 필요한 파일의 일부만 이동시키는 방법
  • 연산 이주(computation migration)
    • 서로 다른 노드에 있는 여러 대규모 파일을 통계처리하려고 접근하는 경우
    • 결과만을 초기 연산이 시작된 원래의 노드에 되돌려 주는 것이 효율적
  • 프로세스 이주(process migration)
    • 프로세스가 실행될 때 항상 그 프로세스가 실행이 시작된 노드에서만 실행되는 것은 아니다.
    • 프로세스의 전체 또는 그 일부가 어느 다른 노드에서 실행되는 것이 유리한 경우도 있다.



클러스터 시스템(Clusterd System)

물리적으로 많은 CPU를 한 곳에 모아서 특정한 작업을 수행하는 시스템
LAN으로 서로 연결된 각각의 CPU는 다른 CPU와 상호작용을하면서 고속 처리 시비스를 지원하게 됩니다.
ex) 기상청 슈퍼 컴퓨터, 구글에서 큰 작업을 위한 처리

  • 대칭적 클러스터 시스템
    • 각각의 CPU가 호스트가 되어 서로를 관리하는 구조로 둘 이상의 작업을 수행할 수 있습니다.
  • 비대칭적 클러스터 시스템
    • 호스트 CPU가 다른 CPU를 관리하면서 특정한 CPU가 작동을 중지하면 호스트 CPU가 작업을 돕는 구조입니다.


실시간 시스템(Real-Time System)

실시간 시스템은 CPU의 동작이나 작업이 즉시적인 처리를 요할 때 채택되는 시스템
주로 의학 영상 시스템이나 무기 시스템에 실제로도 굉장히 많이 사용되고 있습니다
ex) 한국의 의사가 외국의 로봇에게 명령(신체부위를 봉합 등)을 내릴 때


  • 연성 실시간 시스템(Soft Real-Time System)
    • 더욱 우선순위를 가지고 빠르게 계산이 되긴해야 하지만 절대적으로 시간만을 중요시하지는 않는 시스템으로 일반 컴퓨터에도 많이 녹아 있는 구조
    • ex) 음악 등을 들을 때는 웬만하면 컴퓨터가 렉이 걸려도 끊이지 않습니다.
  • 경성 실시간 시스템(Hard Real-Time System)
    • 빠른 시간이 절대적으로 요구되는 시스템으로 단기 메모만 써서 시간 엄수를 최우선적으로 끌어 올립니다. 
    • ex) 정밀하고 신속한 위치 판별을 요구하는 미사일 발사 시스템


[운영체제] 컴퓨터의 작동 과정

출처

댓글

이 블로그의 인기 게시물

[Python] # -*- coding: utf-8 -*-를 쓰는 이유

[소프트웨어공학] NS(Nassi-Schneiderman) 차트

[컴퓨터네트워크] Telnet이란?