운영체제
#운영체제의 기능
운영체제는 하드웨어의 자원 요소들을 관리한다. 자원은 다음과 같다. 메모리, 프로세스(실행중인 프로그램), 주변장치(입출력), 파일(데이터) 관리
-메모리 관리:메인 메모리이며, 메모리에 어느 프로세스를 할당할 것인가, 누가 사용하고 얼마나 할당할 것인가를 정하고 관리한다.
-프로세스 관리: 실행 전 자원 할당. 실행 중인 프로그램도 가능.
-입출력장치 관리: 운영체제는 장치 드라이버를 사용해서 입출력장치와 상호작용한다. 여기서 장치 드라이버란, 입출력 장치 같은 특정 하드웨어에 상주하고 있는 프로그램이다.
-파일 관리: 파일에 대한 저장, 삭제, 생성, 검색 기능을 일컫는다.
운영체제는 시스템을 관리하기도 한다. 사용자의 권한으로 데이터를 암호화하거나 사이트 접속 시 다른 사용자의 프로그램으로부터 자신을 보호한다.
#운영체제 발전 과정에서 나온 기술
1940년대에는 기계어를 직접 사용하여 단순 직렬로 처리하였다. 1950년대부터 일괄 처리 시스템과 버퍼링, 스풀링의 방법이 등장하였다.
-일괄 처리 시스템: 사용자가 요청한 작업을 곧바로 처리하지 않고 오퍼레이터에 모아 비슷한 작업끼리 그룹화시킨 다음 일괄로 처리하는 방법이다. 컴퓨터의 유휴를 피할 수 있으며, 상시 수동으로 개입 및 감독할 수 있다. 많은 사용자와 컴퓨터 자원을 공유할 수도 있다.
그러나, 종종 입출력장치의 속도가 프로세서보다 느려서 유휴가 발생하고, 작업에 우선순위를 부여하는 기준이 없다.
-버퍼링: 프로세서와 입출력 장치 간에 버퍼를 두어 유휴시간을 최소화하는 방법.
-스풀링: 버퍼 대신 속도가 더 빠른 디스크를 사용함으로써 여러 입출력 장치의 값과 계산결과를 처리할 수 있다.
가상화
2000년대 이후로 나온 기술. 물리적 자원을 추상화하여 논리적 자원 형태로 바꾸는 기술이다. 적용 대상에 따라 서버 가상화, 데스크톱 가상화, 스토리지 가상화, 네트워크 가상화, 소프트웨어 가상화로 구분하는데, 이 중 운영체제와 관련된 가상화 핵심은 서버 가상화이다.
서버 가상화는 물리적인 서버 하나에서 가상화 기술을 적용해 가상서버를 여러 개 구성하는 방법이다.
-호스트기반 가상화: 호스트 운영체제를 하드웨어에 탑재하여 가상머신 구동.
-베어메탈 기반 가상화: 호스트 운영체제 설치 전 가상화 솔루션을 탑재해 가상의 하드웨어 구현.
클라우드 컴퓨팅
서버 가상화 기술을 이용한 서비스 제공.
- 데이터 센터에서 원하는 만큼 컴퓨터 자원을 무한대로 사용함.
- 원하는 만큼 자원을 늘리거나 줄임.
- 사용한 만큼만 이용료 지불
운영체제 유형
- 다중 프로그래밍 시스템: 메모리에 있는 둘 이상의 작업이 작업을 변환하면서 처리.
-효율적인 프로세서 사용률
-많은 작업을 준비상태로 두려면 일정형태로 메모리를 관리해야 함.
-시분할 시스템(time sharing system): 다중 프로그래밍을 논리적으로 확장, 프로세서가 다중 작업을 교대로 수행. 다수의 사용자가 교대로 컴퓨터 자원을 공유함.
-짧은 간격으로 여러 사용자에게 프로세서를 할당함
-다중 프로그래밍 시스템과의 특징으로는 메인 메모리에 여러 프로그램 적재 시 어떤 프로그램을 먼저 실행할 것인지에 대한 스케줄링 개념이 필요함.
-다중 프로그래밍 시스템의 목표는 프로세서 사용 최대화이지만 시분할 시스템은 응답시간 최소화임.
-다중처리 시스템(multiprocessing system): 단일 컴퓨터 내에서 둘 이상의 프로세서 사용, 동시에 여러 프로세스 지원.
-프로세서 하나가 고장나면 다른 프로세서로 사용을 계속함.
'기록 > 운영체제' 카테고리의 다른 글
운영체제(5) - 교착 상태와 기아 상태 (0) | 2022.10.09 |
---|---|
운영체제(4)-병행프로세스와 상호배제 (2) | 2022.10.04 |
운영체제(3) (0) | 2022.09.15 |
운영체제(1) (0) | 2022.09.06 |
컴퓨터 시스템의 간략한 소개 (0) | 2022.08.30 |