FANDOM


OS.png

개요

OS (Operating System) 는 운영 체제 (運營體制) 라고도 하며, 하드웨어와 가장 직접적으로 연관되어 있는 시스템 소프트웨어입니다. 시스템 하드웨어를 관리하면서 응용 소프트웨어를 실행하기 위한 추상화 플랫폼을 제공하며, 가상화를 통해 하이퍼바이저 위에서 작동하기도 합니다.

일반적인 개인용 컴퓨터에서 많이 사용되고 있는 Microsoft Windows도 OS이며, 유닉스 계열의 GNU/리눅스OS X 등도 OS의 일종입니다. 이처럼 다양한 OS가 존재하고 있는데, 이들 OS는 각각 어떤 부분에 초점을 맞추어서 설계했느냐의 차이가 있습니다. 예컨대 대형 컴퓨터에 쓰는 OS는 그 컴퓨터의 모든 자원을 효율적으로 활용하는 것에 초점을 맞추어서 설계하며, 개인용 컴퓨터 OS는 복잡한 게임이나 비즈니스를 위한 프로그램 등을 지원하는 데에 중점을 두고, 휴대용 컴퓨터 OS는 인터페이스에 초점을 맞추어서 프로그램을 쉽게 수행할 수 있도록 하고 있습니다. 크게 요약해보자면 주로 이제 사용자가 쓰기에 편리하도록 만드는 것에 중점을 두는 것과 효율성에만 중점을 두는 OS로 나뉘게 되는데 이들을 조합하여 설계된 것들도 존재합니다.

OS는 무슨 일을 할까?

OS가 하는 일이 무엇인지 알아보기 위해 우선 컴퓨터 시스템의 구조를 살펴봅시다. 컴퓨터 시스템은 보통 4가지 구성 요소인 하드웨어, OS, 응용 프로그램, 사용자로 이루어져 있습니다. 하드웨어는 CPURAM, 입/출력 장치인 모니터키보드, 마우스 등으로 이루어져 있지요. 말 그대로 하드웨어라는 것은 물리적인 실체로서의 컴퓨터입니다. 사용자는 컴퓨터를 이용해서 어떤 작업을 하려고 하는 사람입니다. 지금 이 문서를 읽고 있는 여러분도 여러분의 컴퓨터에게 이 웹 페이지를 모니터에 출력하라는 요청을 하고 있는 사용자일 것입니다. 응용 프로그램은 사용자의 요청에 따라 하드웨어의 자원을 어떻게 사용할지를 결정하며, OS는 다양한 사용자를 위해 다양한 응용 프로그램들 사이의 하드웨어 사용을 제어하고 조정하는 기능을 합니다.

컴퓨터 시스템을 하드웨어, 소프트웨어, 데이터라는 세 가지 구성 요소로 보기도 하는데, OS는 여기에서 소프트웨어에 속하면서 소프트웨어와 하드웨어 사이를 연결해주는 역할을 합니다. OS는 컴퓨터 시스템이 작동을 할 때 하드웨어적인 자원을 적절하게 쓸 수 있는 방법을 제공하며, 그 자체로는 유용한 기능을 직접 수행하지 않지만 유용한 기능을 수행하는 응용 프로그램을 사용할 수 있도록 만들어줍니다.

좀 더 상세한 설명을 위해서 아래의 두 문단에서는 각각 컴퓨터를 쓰는 여러분 (사용자) 의 입장에서 본 설명과 여러분의 컴퓨터 (시스템) 의 입장에서 본 설명을 해보겠습니다.

사용자의 관점에서 보았을 때

컴퓨터 시스템에 대한 사용자의 관점은 인터페이스에 따라 달라집니다. 개인용 PC의 경우에는 한 사용자가 자원을 독점하여 사용하도록 설계해도 문제가 없으며 사용자가 수행하는 작업을 최대한 잘 지원해주는 것이 주 목표가 될 것입니다. 이러한 경우에 OS는 사용을 편리하도록 설계하는 것이 좋으며 하드웨어와 소프트웨어 자원들의 공유에는 크게 신경을 쓰지 않아도 됩니다.

다음으로 대형 컴퓨터 (메인프레임) 에 연결된 터미널이 표시되는 모니터 앞에 앉아 있는 경우를 생각해봅시다. 이 경우엔 거대한 시스템에 여러 단말기가 달려 있고 여러분은 그 중 하나를 이용하여 컴퓨터를 사용하는 것입니다. 당연히 다른 사용자들 역시 다른 터미널을 이용해 동일한 시스템에 접근하여 사용합니다. 이런 경우에는 OS가 자원 이용을 극대화하도록 설계하여 CPU의 가동 시간이나 메모리의 사용, 입/출력 등이 최대한 효율적으로 사용될 수 있도록 하며 각각의 사용자들은 자신에게 할당된 몫만을 쓸 수 있습니다.

다른 경우로, 워크스테이션이나 서버의 네트워크에 연결된 워크스테이션 앞에 앉아 있는 경우를 생각해봅시다. 사용자들은 자기 마음대로 할 수 있는 전용 자원을 가지지만 한편으로 네트워킹, 서버 파일, 계산, 프린트 서버를 공유합니다. 따라서 이 경우의 OS는 개인의 사용 편의성과 자원 이용의 효율성 사이에서 적절한 조화를 이루도록 만들어야 합니다.

컴퓨터의 관점에서 보았을 때

컴퓨터의 관점에서 보았을 때 (사실 생물이 아니다보니 컴퓨터가 어떤 생각을 할 지는 모르겠지만요.) OS는 하드웨어와 가장 밀접한 관련이 있는 프로그램입니다. 컴퓨터 시스템은 어떤 문제를 해결하기 위해 필요한 여러 가지 자원들 (CPU 시간, 메모리 공간, 파일 저장 공간, 입/출력 장치 등) 을 가지고 있습니다. OS는 이들 자원을 관리하며 어떤 작업을 위해 특정 프로그램이 자원을 요구하면 자원을 할당해주는 역할을 맡고 있습니다. 그런데 여러 프로그램들이 서로 자원을 막 요청하다보면 서로 겹치는 요청도 있을 것이기에 OS는 가장 효율적이고 공정하게 운영할 수 있도록 그 상반된 요청 중 가장 적절한 것에 할당을 해줄 수 있어야 합니다.

OS의 구조

이 문서 내에서 OS의 다양한 구조에 대한 설명을 하게 되면 문서가 너무 길어질 것 같아서 별도의 문서로 나누어놓았습니다. OS의 구조에 대해 알고 싶으신 분은 OS의 구조 문서를 참조하세요.

종류

유닉스 기반

그 외

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on FANDOM

Random Wiki