▶클릭◀ 병원 약국에서 지출한 병원비 약값 최대 80% 보장받기
분산 운영체제
분산 시스템이란 공유 메모리나 공유 클록을 가지고 있지 않은 처리기들의 집합을 말한다. 그 대신 각 지리기들은 자신의 지역 메모리를 가지고 있으며, 고속버스나 전화선과 같은 여러 형태의 통신선을 통해 치리기들끼리 통신을 행한다. 분산 시스템 내의 각처리기들은 초소형 처리기로부터 워크스테이션, 소형 컴퓨터, 그리고 대형 범용 김퓨터시스템에 이르기까지 그 크기나 기능이 다양하다.
시스템 내의 처리기들은 통신 네트워크를 통해 서로 연결되어 있으며, 연결 형태는여러 가지 방법으로 구성될 수 있다. 네트워크는 완전히, 또는 부분적으로 연결될 수 있으며, 그 형태로는 트리형, 성형, 링형, 또는 다중 접근 버스형 등이 있다. 통신 네트워크 설계 시에는 라우팅, 연결 전략, 그리고 경쟁 및 보안 등이 고려되어야 한다.분산 시스템은 사용자에게 시스템이 제공하는 자원에 대한 접근을 제공한다. 공유 자원에 대한 접근은 데이터 이주, 계산 이주 또는 프로세스 이주에 의해 제공될 수 있다.
네트워크 계층화 모델에 의해 정의되는 프로토콜 스택은 목적지에 정확하게 도달할 수있는 정보를 추가하는 등 메시지를 보완한다. DNS와 같은 지명 시스템은 호스트 이름을네트워크 주소로 바꾸는 데 사용되어지며, ARP와 같은 프로토콜은 네트워크 번호를 이더넷 주소와 같은 네트워크 장치 주소로 바꾸는 데 사용된다. 만일 시스템이 서로 분리되어있다면, 패킷을 출발지 네트워크에서 목적지 네트워크로 보내기 위해 라우터가 필요하다.분산 시스템은 여러 타입의 하드웨어 고장으로 피해를 입을 수 있다. 분산 시스템이결함 허용성을 가지려면 하드웨어 고장을 탐지하고 시스템을 재구성할 수 있어야 한다.고장이 고쳐지면 시스템은 다시 재구성되어야 한다.
분산 파일시스템
분산 파일 시스템(DPS)은 클라이언트들과 서버, 그리고 메모리가 분산 시스템의 이리사이트에 흩어져 있는 분산 환경을 위한 파일 서비스 시스템이다. 따라서 서비스는 네트워크를 통해서 실행되어야 하고, 하나의 데이터 저장소 대신에 여러 독립적인 지장장치들이 존재한다.
이상적으로, 분산 파일 시스템은 클라이언트들에게 전통적인 중앙 집중식 파일 시스템으로 보여야 한다. 분산 파일 시스템의 서버와 저장장치의 다중성과 분산화는 투명해야 한다. 즉, 분산 파일 시스템의 클라이언트 인터페이스는 로컬 파일과 원격 파일을 구별해서는 안 된다. 파일을 찾고 데이터 전송을 처리하는 일은 DFS에 좌우된다. 투명한DFS 설비는 사용자가 어디서 로그인하든지 똑같은 환경을 제공함으로써 클라이언트의이동성을 증진시킨다.
DFS의 지명 기법들을 위한 여러 방식이 있다. 가장 간단한 방법은 파일을 호스트 이름과 로컬 이름의 조합으로 이름 짓는 방법으로, 이 이름은 시스템 전체에서 유일한 이름으로 보장된다. NFS에서 많이 사용되는 다른 방식으로는 원격 디렉터리들을 로컬 디렉터리에 붙임으로써 일관된 디렉터리 트리처럼 보이게 하는 방법이 있다.
원격 파일에 대한 접근 요청은 보통 두 개의 상호보완적인 방법으로 처리된다. 원격서비스의 경우 파일 접근 요청은 서버에게 전달된다. 서버 기계는 그 요청을 처리하고,결과를 클라이언트에게 반환한다. 캐싱 방법의 경우 요청된 데이터가 캐시에 없다면, 그데이터의 복사본을 서버로부터 클라이언트의 캐시로 가져온다. 이후의 접근 요청은 캐시된 복사본을 대상으로 실행된다. 캐시에 가장 최근에 사용된 디스크 블록들을 유지함으로써 같은 정보에 대한 반복되는 접근 요청을 부가적인 네트워크 전송없이 지역적으로 처리할 수 있다. 캐시의 크기를 일정 수준 이하로 유지하기 위해 캐시 교체 정책이 사용된다.캐시된 복사본을 마스터 파일과 일치시키는 문제를 캐시 일관성 문제라고 한다.
서버측 정보에 대한 두 가지 접근 방식이 있다. 서버가 각 클라이언트들에 의해 접근되는 파일에 대한 정보를 유지하는 방법과 상태 정보없이 단순히 클라이언트가 요청한블록을 제공하는 방법이다. 이것들을 상태형(stateful) 서비스와 무상태형(stateless) 서비스라고 한다.
여러 기계에 파일을 중복시킴으로써 가용성을 증진시킬 수 있다. 이러한 중복은 또한성능도 상당히 높일 수 있는데, 그것은 가까운 복사본으로 접근 요청을 처리함으로써 서비스 시간을 줄일 수 있기 때문이다.
AFS는 기능이 풍부한 DFS이다. AFS는 소스가 공개되어 있으며 Transarc DFS의 전신이다. AFS는 위치 독립성과 위치 투명성을 제공한다. 또한 중요한 일관성 의미(semantics)를 시행한다. 캐싱과 중복을 사용하여 성능을 향상시킨다.
분산 동기화
분산 시스템은 메모리나 클록을 공유하지 않기 때문에 두 사건의 순서를 정확히 결정하기는 불가능하다. 분산 시스템에서 사건 전후 발생 관계는 사건의 부분적 순서만 규정한 것이다. 타임스탬프는 분산 시스템에서 사건 순서화를 제공한다.
분산 환경에서 상호 배제는 여러 가지 방법으로 구현될 수 있다. 집중형 접근방법인 경우 시스템에 있는 프로세스들 중 하나가 임계 영역에 대한 진입을 조경하기 위해 선정된다. 완전 분산형인 경우 의사 결정은 전체 시스템에 분산된다. 링 구조에 적합한 분산 알고리즘은 토큰 패싱 접근이다.
원자성을 보증하기 위해 트랜잭션 T를 실행한 모든 사이트는 실행의 최종 결과에 동의해야 한다. T는 모든 사이트에서 확약(commit)되거나 아니면 모든 사이트에서 취소된다. 이러한 속성을 보증하기 위하여 T의 트랜잭션 조정자는 확약 프로토콜을 실행한다. 가장 잘 알려진 확약 프로토콜은 2PC이다.
집중형 시스템에서 사용할 수 있는 여러 가지 동시성 제어 기법들은 분산 환경에서 사용할 수 있도록 변경될 수 있다. 락킹 프로토콜의 경우 락 관리자가 구현되는 방법만 변경하면 된다. 타임스탬프와 검증(validation) 기법의 경우 단지 필요한 변경은 유일한 전역 타임스탬프를 생성하기 위한 기법의 개발에 있다. 그러한 기법은 보다 큰 타임스템프를 가진 메시지가 도착할 때마다 사이트 식별자를 가진 로컬 타임스탬프를 덧붙이거나 혹은 로컬 클록들을 증가시킬 수 있다.
분산 환경에서 교착상태를 다루기 위한 주방법은 교착상태 탐지이다. 가장 큰 문제점은 어떻게 대기 그래프를 유지할 것인지를 결정하는 것이다. 대기 그래프를 구성하기 의한 여러 방법들은 집중형 접근 방법과 완전 분산형 접근방법으로 구분된다. 어떤 분산 알고리즘들은 조정자의 사용을 요구한다. 조정자가 위치하고 있는 해당 사이트의 고장으로 작동하지 못하면 시스템은 다른 사이트에 있는 조정자의 새로운 복사본을 재실행함으로써 계속 실행될 수 있다. 이는 백업 조정자가 있어서 조정자가 고장날 경우 책임을 물려받게 하면 된다. 또 다른 접근 방법은 조정자가 고장이면 새로운 조정자를 선정하는 것이다. 새로운 조정자의 복사본이 재 시작될 지를 결정하는 알고리즘을 선출 알고리즘이라 한다. 두 개의 알고리즘 bully 알고리즘과 링(ring) 알고리즘이 새로운 조정자를 선정하기 위해 사용될 수 있다.
'컴퓨터 구조' 카테고리의 다른 글
컴퓨터 구조의 보호 및 보안 (0) | 2022.05.03 |
---|---|
입출력 시스템에 대해서.. (0) | 2022.04.17 |
2차 저장장치 구조에 대해서.. (0) | 2022.04.17 |
파일 시스템 구현에 대해서.. (0) | 2022.04.17 |
파일 시스템에 관해서.. (0) | 2022.04.17 |