본문 바로가기
IT 및 프로그래밍

운영체제 개념과 발전 목적

by 데이터 석사 2024. 10. 17.

컴퓨터 시스템은 대략적으로 사용자, 소프트웨어, 하드웨어로 구성된다. 운영체제는 여기서 사용자가 하드웨어에 가까이 갈 수 있는 유일한 방법이다. 운영체제는 하드웨어를 효과적으로 이용할 수 있도록 다양한 기능을 제공하는 소프트웨어이며, 사용자가 응용 프로그램을 수행할 수 있는 기초적인 기반 환경을 제공하여 컴퓨터를 간편하게 사용할 수 있도록 도와준다.

운영체제 개념과 발전 목적

운영체제의 개념

사용자

어떤 작업을 싷행하려고 컴퓨터를 이용하는 사람이나 장치, 다른 컴퓨터를 뜻한다.

소프트 웨어

시스템 소프트웨어, 유틸리티, 응용프로그램 등으로 구성되어있다. 컴퓨터가 기능을 실행하는데 필요한 모든 프로그램을 뜻한다.

 

시스템 소프트웨어: 컴퓨터 자원을 관리하고 응용 프로그램의 수행을 보조하여 컴퓨터를 조종하는 프로그램이다. 운영체제를 비롯하여 장치 드라이버 등으로 구성된다.

 

유틸리티: 응용 프로그램보다 작지만 컴퓨터의 여러 처리 과정을 지원하여 시스템을 유지하고 성능을 더 좋게 바꿔주는 프로그램으로, 운영체제를 돕는 역할을 한다. 필요에 따라 사용자나 운영체제가 메모리 상주 프로그램으로 설치하기도 한다.

 

응용 프로그램: 특정 일을 실행하려는 목적. 웹 브라우저, 워드 프로세서, 게임, 이미지 편집 프로그램, 은행 시스템 및 비행기 예약 시스템 등이 여기에 해당하며, 어떤 문제를 해결하려고 이용자나 전문가가 만든 프로그램이다.

하드웨어

기본 연산 자원을 주는 프로세서, 메모리, 주변장치 등으로 구성된다.

 

컴퓨터 시스템은 여러 사용자가 이용할 수 있으며, 다양한 응용 프로그램이 있을 수 있다. 다양한 응용 프로그램이 하드웨어 곧 컴퓨터 자원을 효과적으로 사용할 수 있도록 관리하고 제어하는 하는 역할을 운영체제가 하는 것이다.

 

컴퓨터 자원을 관리하는 부분에서 운영체제가 맡은 역할은 다음과 같다.

조정자

컴퓨터 시스템은 하드웨어와 소프트웨어, 이 둘 사이를 오가는 데이터로 운영된다. 직접 다른 프로그램이 실행하는 특정 일을 하는 것이 아니라 이 일을 할 수 있는 환경만 줄 수 있는 조정자인 셈이다. 예시를 들면, 워드 프로세서 역할을 직접 하는 것이 아닌 워드 프로세서가 제 기능을 할 수 있도록 보조해 준다. 운영체제는 이 운영 요소를 적당히 바르게 이용될 수 있도록 조정하면서 사용자와 응용 프로그램 간에 통신할 수 있게 한다.

자원할당자 혹은 관리자

운영 체제는 각 응용 프로그램에 필요한 자원을 나눠주는 자원 할당자이다. 운영체제는 컴퓨터 시스템을 공정하고 효과적으로 운영하려고 자원을 나눠주는 방법을 결정하는 관리자 역할을 하며, 컴퓨터 자원을 올바른 순서로 나눠주어 원하는 업무를 제대로 실행할 수 있도록 도와준다. 여러 응용 프로그램이 동일한 컴퓨터 자원을 요청하면 충돌이 일어날 수 있다.

응용 프로그램과 입출력 장치 제어자

운영체제는 다양한 입출력장치와 응용 프로그램을 제어하는 역할을 한다. 입출력장치를 작동시키고 통제하는 핵심 역할을 하며, 컴퓨터 시스템을 부적절하게 이용하거나 오류가 일어나는 것을 막기 위해 하드웨어 이용을 조정하고 응용 프로그램의 실행을 조종하여 제어한다.

 

이처럼 운영체제는 다양한 기능을 주어 여러 역할을 실행하기에 그 정의도 여러가지이다. 일반적으로 " 사용자와 하드웨어 사이의 중간 매개체로 응용 프로그램의 실행을 조정하여, 자원을 할당 및 관리하며, 입출력 제어 및 데이터 관리와 같은 서버를 제공하는 소프트웨어로 설명된다.

 

- 메일 보내는 것, 파일 시스템 검사, 서버 작업, 등 높은 레벨의 서비스를 처리하는 응용 프로그램을 제어한다.

- 프로세서, 메모리, 입출력장치, 통신장치, 등 컴퓨터 자원을 효율적으로 사용하려고 조율 및 관리한다.

-하드웨어 및 사용자, 응용 프로그램, 시스템 프로그램 사이에서 인터페이스를 제공한다.

-다양한 사용자에게서 컴퓨터 시스템을 지키려고 입출력을 조율하며 데이터를 관리한다.

 

운영체제는 커널, 장치 드라이버, 사용자 인터페이스, 시스템 유틸리티 등 4개의 메인 부분으로 구분한다. 운영체제를 메모리에 적재할 때 가장 우선으로 적재하고 운영체제가 종료될 때까지 메모리에 있는다. 커널은 시스템 호출, 인터럽트 및 예외에 응답하는 운영체제의 핵심 구성 요소이며, 커널은 왠만한 작은 크기로 구현하는 것이 좋을 것이다. 

운영체제의 발전 목적

운영체제의 목적을 알면 운영체제의 설계 목적과 기능, 운영체제의 배움의 이유를 이해할 수 있을 것이다. 편리성과 효율성 목표는 서로 상반될 수 있는데. 과거에는 편의성보다는 효율성을 중요시하여 일반적으로 운영체제 이론은 컴퓨터 자원의 최적 사용에 더욱 관심을 기울였으며 그래서 운영체제는 위와 같은 세 가지 목적을 크게 발전해 왔다.

 

편리성 - 사용자에게 편리한 환경 제공

운영체제는 사용자가 프로그램을 효과적으로 수행할 수 있는 환경을 줘야 한다. 사용자가 프로그램을 간편하게 개발할 수 있는 환경뿐만 아니라 응용 프로그램에 대한 사용자 인터페이스, 곧 사용자와 컴퓨터 시스템이 정보 및  지시를 상호 간 교환이 가능한 인터페이스를 제공해야 한다.

효율성 - 시스템 성능 향상

효율성은 사용자가 많은 대형 컴퓨터 시스템에서 특히 중요하다. 대형 컴퓨터 시스템은 일반적으로 고가의 가격으로 비싸기 때문에 효율적으로 이용해야 하는데, 운영체제는 각 프로그램을 유기적으로 합하여 시스템의 모든 성능을 업그레이드시켜 왔다. 일반적으로 시스템의 성능은  처리량, 지연 및 응답시간, 신뢰도, 사용 가능도 등 이같은 기준으로  평가한다.

 

마무리

컴퓨터 시스템은 사용자, 소프트웨어, 하드웨어로 구성되며, 운영체제는 사용자가 하드웨어를 효과적으로 이용할 수 있도록 도와주는 소프트웨어다.

운영체제는 시스템 소프트웨어, 유틸리티, 응용 프로그램 등으로 구성된 소프트웨어로, 컴퓨터 자원을 관리하고 응용 프로그램의 수행을 보조하여 컴퓨터를 제어하는 프로그램이다.

사용자는 어떤 작업을 수행하려고 컴퓨터를 이용하는 사람이나 장치, 다른 컴퓨터를 의미한다.