Contents
운영체제 기초 활용
운영체제 (Operation System)
개념
하드웨어와 소프트웨어 자원 관리 및 컴퓨터 프로그램을 위한 공통 서비스 제공하는 소프트웨어를 의미. 사용자 편의성을 위한 인터페이스인 동시에 다양한 자원을 관리하는 자원 관리자.
- 시스템을 제어하며 컴퓨터와 사용자 간 상호 교신을 담당
- 자원 관리 및 사용자와 컴퓨터 간 인터페이스
- 제한된 컴퓨터 시스템 자원을 보다 효율적으로 관리하고 운영
운영체제 기능
주요 기능 | 설명 | 주요 기술요소 |
프로세스 관리 | 프로세스들에 대한 적절한 CPU 자원 배정을 통한 관리 | - 스케줄링 - 프로세스 생성 및 제고 - 교착상태 방지 |
보조기억장치 관리 | 주기억장치 공간적 제약으로 보조기억장치 이용해 주기억장치 내용 저장 및 관리 | - 디스크 스케줄링 - 저장소 할당 - 유휴 공간관리 |
파일 관리 | 디렉터리 구성, 다수 사용자에게 접근 제어 기능을 제공 | - 파일과 디렉토리 생성, 제거 - 보조기억장치 파일 매핑 |
장치 관리 | 하드웨어 장치 운영 위한 인터페이스 제공 | - 드라이버 인터페이스 - 임시저장 시스템(버퍼) |
메모리 관리 | 기억공간에 어떤 프로세스 저장할지 결정 | - 기억공간 할당과 회수 |
시스템 보호 | 운영 체제에 있는 프로세스를 다른 사용자 프로그램으로부터 보호 | - 세마포어 |
네트워킹 | 네트워크 연결 경로, 접속 정책, 충돌, 보안 기능 제공 | - 토큰 링 방식 |
명령어 해석 | 프로그램 실행 위항 명령어 해석 기능 제공 | - 컴파일러 - 커널 |
※ 세마포어 : 둘 이상 프로세스 사이에서 공유 자원을 한 프로세스가 사용하고 있는 동안에 다른 포르세스를 대기시키고 사용이 끝나면 해제시키는 매커니즘
운영체제 역할
영역 | 역할 | 설명 |
사용자 | 프로그램 수행 | 프로그램을 메모리에 적재하여 실행 |
입출력 연산 | 입출력장치별 특화된 제어 기능 수행 | |
파일시스템 조작 | 파일 생성, 삭제 및 읽기, 쓰기 수행 | |
통신 | 프로세스 간 정보 교환 지원 | |
오류 탐지 | 다양한 HW, SW에서 발생하는 오류 탐지 및 복구 지원 | |
시스템 | 자원 할당 | 다수 사용자나 작업이 동시에 실행될 때, 이들 각각에 대한 자원 제공 |
Accounting | 사용되는 정보 자원 횟수 및 양 측정, 사용 통계 제공 | |
보호 | 소유자 이외에는 정보 사용 통제 수행 |
운영체제 종류
OS | 저작자 | 시초(이전) | 주요 용도 |
Windows | Microsoft | OS/2, MS-DOS | 중소 규모 서버, 개인용 PC, Tablet PC, Embedded System |
Unix | IBM(AIX), HP(HP-UX), SUN(Solaris) |
UNIX System V, SunOS |
대용량 처리, 안정성 요구되는 서버, Server, NAS, Workstation - SUN Microsystems는 Oracle로 인수 합병됨 |
Linux | Linus Torvalds | Linux Kernel | 중/대규모 서버, Unix와 호환 Kernel |
iOS | Apple | OS X NeXTSTEP, BSD |
스마트폰, 태블릿 PC, Music 플레이어 등 |
Android | Linux | 스마트폰, 태블릿 PC |
운영체제 유형
유형 | 개념 | 개념도 |
다중 프로그래밍 시스템 |
CPU 효율 극대화위해 다수 프로그램이 마치 동시에 실행되는 것처럼 처리하는 방식. 메모리 관리 필요 | |
시분할 시스템 (Time Sharing System) |
프로세서 스케줄링과 다중 프로그래밍 사용해 각 사용자에게 컴퓨터를 시간을 나누어 분할 사용 | |
분산처리 시스템 |
시스템마다 운영체제와 메모리 가지고 독립적으로 운영되며 필요할 ㅅ때 통신하는 시스템 | |
다중처리 시스템 |
마이크로 프로세서 여러개를 연결해 다중 프로세서 생성 |
|
일괄처리 시스템 |
일정량 데이터를 모아 한꺼번에 일괄 처리하는 방식 | |
실시간처리 시스템 (RealTime Processing System) |
데이터에 대한 처리요구 발생 시 즉시 처리 응답 | 시간 제한을 두고 수행하는 온라인 업무 적용 |
분산 컴퓨팅 (Distributed Computing System)
- 인터넷에 연결된 여러 컴퓨터 처리 능력 이용하여 거대한 계산 문제 해결하는 분산 처리 모델
- 특정 자원 물리적 위치를 몰라도 그 자원 사용 가능
- 자원은 각 노드에 분산되거나 중복되어 있음
- 데이터, 컴퓨팅 자원 (CPU, 메모리 등) 공유
분산 컴퓨팅 투명성
유형 | 설명 | 지원 기법 |
Access | 데이터 표현 방식, 자원 접근 방법을 사용자에게 숨김 | 동기화 방식 |
Location | 하드웨어와 소프트웨어 자원이 어떤 컴퓨터에 있는지 알 필요 없이 이용 가능 | 미들웨어 레지스트리 |
Relocation | 사용자가 사용 중에도 자원 이동 가능하고 이 사실을 사용자에게 숨김 | |
Concurrency | 객체 정보를 상호 공유, 여러 개 프로세스가 병행 수행 가능 | 동시성 제어(P2C) |
Replication | 동일 자원이 다수 컴퓨터에 존재하더라도 사용자에게는 하나의 자원으로 보임 (ex. 어떤 파일을 다수 컴퓨터에 중복하여 배치 > 신뢰성 향상) |
|
Failure | 장애 시 전체 시스템 지속적으로 가동 보장 | HA, FT |
Migration | 자원 저장소 논리적 관리로 물리적 위치 변경 자유로움 (ex. 파일이 다른 컴퓨터로 이동되어도 사용자는 프로그램을 변경하지 않고 이용) |
미들웨어 레지스트리 |
Performance | 시스템 성능 향상 및 재구성 유연함 | 가상화 |
Scaling | 분산 시스템 내에 있는 구성 요소 추가하거나 제거하는 등 변화에 대해서도 사용자는 이를 의식하지 않고 시스템 이용 가능 | 표준 인터페이스 |
이기종 투명성 | 분산 시스템이 서로 다른 종류의 하드웨어와 소프트웨어로 구성되더라도 사용자는 이들의 상이함을 인식하지 않고 이용 가능 (ex. 다른 CPU 가진 컴퓨터로 구성되어 있더라도 프로그램은 어떤 컴퓨터에서나 실행) |
분산 컴퓨팅 유형
구분 기준 | 유형 |
부하 분산 | - 작업 많은 컴퓨터에서 작업이 적은 컴퓨터로 작업 이동 - 시스템 전체 처리 효율 향상 |
처리 분산 | - 특정 장소에서 집중적으로 처리 수행하지 않음 - 데이터 발생 장소나 서비스 요구 장소에서 처리 - 통신 비용 감소와 서비스 향상 기능 |
기능 분산 | - 개별 기능 갖는 전용 컴퓨터 준비하여 시스템 전체에서 공유 |
위험 분산 | - 노드 일부가 고장이 나더라도 다른 노드에 의해 처리 가능 - 시스템 신뢰성 향상 |
관리 분산 | - 시스템 운용과 관리를 각 조직에서 개별적으로 수행 - 조직 내 실정에 맞는 이용과 서비스 제공 |
확장 분산 | - 대형 컴퓨팅 센터는 기능 변경이나 확장 어려움 - 기능 추가와 진보된 기술 수용, 확장 용이 |
분산 처리와 병렬 처리의 비교
구분 | 병렬 처리 | 분산 처리 |
구성도 | ||
정의 | 프로세서를 늘려 다수 작업 동시 처리 | 컴퓨터를 네트워크로 상호 연결하여 전체적인 일의 일부 분산 처리 |
구성 | 다수 프로세서와 하나의 메모리로 구성 | 다수 프로세서와 메모리로 구성 |
특징 | - 병렬처리는 프로세서 자체를 멀티코어로 병렬화하거나, 여러 개 프로세스 이용하여 다수 작업을 고속으로 처리 가능. 연산 장치를 병렬로 구성한 구조로는 벡터 계산이나 행렬 계산에 주로 사용되는 Array 프로세서나 벡터 프로세서, 여러 개 명령어 동시 수행하는 파이프라인 기법 등이 있음 - 병렬처리 구조인 플린(Flynn)은 컴퓨터 명령어와 데이터 흐름 개수에 따라 단일 명령어-단일 데이터 흐름(SISD), 단일 명령어-다중 데이터 흐름(SIMD), 다중 명령어-다중 데이터 흐름(MIMD)으로 분류 |
분산처리 시스템 분류
구분 기준 | 분산 시스템 유형 |
프로세서 모델 | 클라이언트/서버 모델, 프로세서 풀 모델, 하이브리드 모델 |
네트워크 구조(위상 - Topology) | Fully Connected, Partially Connected, Hierarchy, Star, Ring, Multi Access Bus |
분산 범위 | 광역 네트워크 분산구조(WAN), 근거리 네트워크 분산구조(LAN) |
01 프로세서 모델 - 클라이언트/서버 모델
구분 | 설명 |
구성도 | |
개념 | 비대칭적(Asymmertrical) 분산 시스템 구조 |
특징 | - 대부분 분산 시스템은 LAN 기반으로 한 이 모델로 구성 - 다중사용자 시스템으로 사용자들 간 CPU 공유 - 각 사용자는 프로그램 수행시키기 위해 강력한 서버 가지며, 서버는 공유된 다양한 시스템 기능과 자원 접근 제공 |
02 프로세서 모델 - 프로세서 풀 모델
구분 | 설명 |
구성도 | |
개념 | 하나 이상 프로세서 풀이 통합된 워크스테이션-서버 모델로 구성 |
특징 | - 각 풀 프로세서는 워크스테이션과 서버가 독립적으로 네트워크와 연결 - 풀에 있는 프로세서들은 단일 회로 보드로 구성 - 사용자 워크스테이션이나 터미널은 시스템 자원 접근하는 수단 제공 - 사용자 작업은 부분 혹은 전체적으로 풀 프로세서 상에서 수행 - 사용자가 메인 태스크 초기화하면, 풀 프로세서가 각 태스크에 할당되고 병렬로 수행 |
장점 | - 융통성 : 시스템 서비스는 더 이상의 컴퓨터 설치하지 않고도 확장 가능 - 호환성 : 기존 응용들은 간단한 수정으로 사용 가능 - 다양한 프로세서들이 프로세서 풀을 사용 |
03 프로세서 모델 - 혼합모델
구분 | 설명 |
구성도 | |
개념 | 앞의 두 모델(클라이언트/서버 모델 + 프로세서 풀 모델) 혼합 |
특징 | - 사용자 요구와 자원 처리가 매칭 - 병렬 수행 : 여러 개 풀 프로세서가 과부하 걸린 처리 위해 할당 - 사용자는 워크스테이션이나 터미널 통해 시스템에 접근 |
04 위상에 따른 분산 컴퓨팅 구조 분류
- 기본 비용 : 노드 연결 비용
- 통신 비용 : 메시지 전달하는데 걸리는 시간 및 비용
- 신뢰성 : 하나 고장 발생 시, 나머지 노드들이 계속 통신 가능 여부
구분 | 토폴로지 | 설명 |
완전 연결 구조 (Fully Connected) |
- 각 노드가 시스템 내 모든 다른 노드와 직접 연결 - 기본 비용 : 노드 숫자 제곱에 비례 |
|
부분 연결 구조 (Partially Connected) |
- 모든 노드 쌍에 대해 직접 연결이 존재하지는 않음 - 비용은 완전 연결 네트워크보다 저렴 - 통신 속도 저하 - 완전 연결 네트워크보다 신뢰성 저하 |
|
계층 구조 (Hierarchy) |
- 각 노드가 트리 형태로 구성 - 형제 중 하나가 다른 형제에게 메시지 전달하려면 부모 노드로 올라가서 다시 형제 노드로 내려감 |
|
성형 구조 (Star) |
- 중심 노드는 타 노드와 연결, 타 노드는 상호 간 연결되지 않는 방식 - 기본 비용 : 노드 수에 비례, 일반적으로 통신 비용 낮음 - 중심 노드에서 병목 현상 발생 |
|
환형 구조 (Ring) |
- 단방향, 양방향 통신 방법 존재 - 단방향 : 한 방향으로만 정보 전달 - 양방향 : 양쪽 이웃 노드에 정보 전달 - 기본 비용 : 노드 수에 비례 - 단일 연결, 이중 연결 방식 존재 |
|
다중 접근 버스 구조 (Multi-Access Bus) |
- 공유되는 하나의 버스가 존재 - 기본 비용 : 노드 수에 비례, 버스 회선이 고장 나면 네트워크가 분할됨 - 직선 버스, 환영 버스 유형 존재 |
05 분산 범위 - 광역 네트워크 분산구조
구분 | 설명 |
구성도 | |
개념 | 넓은 지역에 각 노드들이 물리적으로 분산되어 있는 구조 |
특징 | - 대표적인 통신 회선 : 전화선, 마이크로웨이브, 통신 위성 채널 - 통신 회선들은 특정 통신 프로세서들에 의해 조정 - 프로세서는 여러 노드 간 정보 전송 뿐 아니라 노드들이 통신하는데 필요한 인터페이스 정의 |
장점 | 다수 유휴 컴퓨팅 지원 사용 가능 |
단점 | 통신 회선 전송 속도는 대체로 느리고 신뢰성 또한 낮음 |
활용 | 원격지 간 화상 회의 및 원격 강의 시스템 구현 |
06 분산 범위 - 근거리 네트워크 분산구조
구분 | 설명 |
구성도 | |
개념 | 한정된 지역에 각 노드들이 물리적으로 분산된 구조 |
특징 | 통신 링크는 일반적인 컴퓨터 네트워크보다 속도 빠르고 오류 발생률 낮음 |
장점 | 컴퓨터 네트워크보다 속도 빠르고 오류 발생률 낮음 |
단점 | 보다 빠른 속도와 신뢰성 얻을 수 있고 양질 케이블 필요 |
활용 | 한 빌딩 또는 인접된 빌딩과 같은 비교적 가까운 지역에 적용 |
320x100
'정보처리기사 > 필기' 카테고리의 다른 글
[정보처리기사] Part04-03-1. 운영체제 기초 활용 (3) (12) | 2023.01.26 |
---|---|
[정보처리기사] Part04-03-1. 운영체제 기초 활용 (2) (14) | 2023.01.25 |
[정보처리기사] Part01-01-1. 현행 시스템 분석 (2) (12) | 2023.01.21 |
[정보처리기사] Part01-01-1. 현행 시스템 분석 (1) (5) | 2023.01.21 |
[정보처리기사] Part02-05-03. 인터페이스 구현 검증 (4) | 2023.01.21 |
댓글