본문 바로가기
정보처리기사/프로그래밍 언어 활용

분산 운영체제

by jhwannabe 2023. 8. 5.

다중 처리기

다중 처리기(Multi-processor)의 개념

  • 하나의 시스템에 2개 이상의 프로세서를 가지고 동시에 여러 개의 작업을 처리하는 장치
  • 프로세서 중 하나가 고장 나도 다른 프로세서들에 의해 고장난 프로세서의 작업을 대신 수행하는 장애 극복이 가능
  • 프로세서 간의 통신은 공유 기억 장치를 통하여 입출력 채널, 주변 장치들을 공유함
  • 대칭적 다중 처리 방식과 비대칭적 다중 처리 방식이 있음
  • 성능 개선 목표 : 유연성, 신뢰성, 수행 속도

다중 처리기의 상호 연결 방법

시분할 공유 버스
(Time Sharing Shared Bus)
- 프로세서, 기억 장치, 입출력 장치 간에 하나의 버스 통신로만을 제공하는 구조
- 어느 한 시점에 단지 하나의 전송만이 가능함
- 버스에 이상이 생기면 전체 시스템에 장애가 발생함
크로스바 교환 행렬
(Crossbar Switch Matrix)
- 공유 버스 시스템에서 버스의 수를 기억 장치의 수만큼 증가시킨 구조
- 두 개의 서로 다른 저장 장치를 동시에 참조할 수 있음
- 하드웨어가 복잡해지는 단점이 있음
하이퍼 큐브
(Hyper Cube)
- 10개 이상의 프로세서를 병렬로 동작시키는 구조
- 하나의 프로세서에 연결되는 다른 프로세서의 수(연결점)가 n개일 경우 총 \(2^n\)개의 프로세서가 필요함
다중 포트 메모리
(Multiport Memory)
하나의 프로세서에 하나의 버스가 할당되어 버스를 이용하려는 프로세서 간 경쟁이 적은 구조

다중 처리기 운영체제의 구조

대칭적(Symmetric) 처리기 - 모든 프로세서가 하나의 운영체제를 공유해서 수행함
- 가장 복잡하지만 가장 강력한 구조
- 여러 개의 프로세서가 동시에 수행될 수 있음
주/종(Master/Slave) 처리기 - 하나의 주 프로세서와 나머지 종 프로세서로 구성
- 비대칭 구조를 가짐
- 주 프로세서만이 운영체제를 수행함
- 주 프로세서는 입출력과 연산을 수행함
- 종 프로세서는 입출력 발생 시 주 프로세서에게 서비스를 요청함
분리 수행(Separate-Execution) 처리기 - 주/종 처리기의 비대칭성을 보완하여 각 프로세서가 별도의 운영체제를 가짐
- 프로세서별 자신만의 파일 및 입출력 장치를 제어함
- 프로세서별 인터럽트는 독립적으로 수행됨
- 한 프로세서의 장애는 전 시스템에 영향을 미치지 않음

다중 처리기의 구조

약결합 시스템
(Loosely-Coupled System)
- 둘 이상의 시스템을 통신 링크를 이용하여 연결한 시스템
- 각 시스템마다 별도의 운영체제를 가짐
- 각 프로세서마다 독립된 메모리를 가짐
- 프로세스 간의 통신은 메시지 전달이나 원격 프로시저 호출을 통하여 이루어짐
강결합 시스템
(Tightly-Coupled System)
- 하나의 운영체제가 모든 처리기와 시스템 하드웨어를 제어함
- 프로세서 간 통신은 공유 메모리를 통하여 이루어짐
- 메모리에 대한 프로세서 간의 경쟁 최소화가 고려되어야 함

 

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

분산 처리 시스템의 개념

  • 여러 대의 컴퓨터들에 의해 작업한 결과를 통신망을 이용하여 상호 교환할 수 있도록 연결되어 있는 시스템으로 시스템의 점진적 확장이 용이함
  • 단일 시스템에 비해 처리용량, 연산 속도, 신뢰성, 사용 가능도가 향상됨
  • 중앙 집중형 시스템에 비해 시스템 설계가 복잡하고 소프트웨어 개발이 어려움

투명성(Transparency)

  • 분산 처리 운영체제에서 구체적인 시스템 환경을 사용자가 알 수 없도록 하며, 또한 사용자들로 하여금 이에 대한 정보가 없어도 원하는 작업을 수행할 수 있도록 지원하는 개념
  • 투명성의 종류
    • 위치(Location) 투명성 : 하드웨어와 소프트웨어의 물리적 위치를 사용자가 알 필요가 없음
    • 이주(Migration) 투명성 : 사용자나 응용 프로그램의 동작에 영향을 받지 않고 자원들을 한 곳에서 다른 곳으로 이동할 수 있음
    • 복제(Replication) 투명성 : 사용자에게 통지할 필요 없이 시스템 안에 파일들과 자원들의 부가적인 복사를 자유로이 할 수 있음
    • 병행(Concurrency) 투명성 : 다중 사용자들이 자원들을 자동으로 공유할 수 있음

분산 운영체제 구조

성형 구조
(Star)
- 모든 사이트는 하나의 호스트에 직접 연결된 구조
- 중앙 컴퓨터 장애 시 모든 사이트 간 통신이 불가능함
- 통신 시 최대 두 개의 링크만 필요하고 통신 비용이 저렴함
링형 구조
(Ring)
- 각 사이트는 정확히 다른 두 사이트와 물리적으로 연결된 구조
- 정보 전달 방향은 단방향 또는 양방향일 수 있음
- 기본 비용은 사이트의 수에 비례함
- 메시지가 링을 순환할 경우 통신비용은 증가함
다중 접근 버스 구조
(Multi Access Bus)
- 모든 사이트는 공유 버스에 연결된 구조
- 기본 비용은 사이트 수에 비례함
- 사이트의 고장은 다른 사이트 간의 통신에 영향을 주지 않지만, 링크의 고장은 전체 시스템에 영향을 줌
- 사이트의 추가와 삭제가 용이함
계층 연결
(Hierarchy Connection)
- 각 사이트들이 트리(Tree) 형태로 연결된 구조
- 상위 사이트 장애 시 하위 사이트들은 통신이 불가능함
완전 연결 구조
(Fully Connection)
- 모든 사이트는 다른 모든 사이트와 직접 연결된 구조
- 사이트 간의 연결을 여러 회선이 존재하므로 신뢰성이 높음
- 사이트 간의 메시지 전달이 매우 빠름
- 하나의 링크가 고장 나더라도 통신이 단절되지 않음
- 사이트 설치 시 소요되는 기본 비용은 많이 듦

 

728x90
반응형

'정보처리기사 > 프로그래밍 언어 활용' 카테고리의 다른 글

OSI 7계층과 오류 제어 방식  (0) 2023.08.05
UNIX  (0) 2023.08.05
정보 관리  (0) 2023.08.05
디스크 스케줄링  (0) 2023.08.05
기억 장치 관리  (0) 2023.08.05