운영체제 - 운영체제란 무엇일까?
요약
- 운영체제는 무엇인가요?
유저와 컴퓨터를 중개하는 프로그램으로 사용자는 운영체제로 컴퓨터를 편리하게, 효율적으로 사용할 수 있습니다. 유저와 하드웨어를 중개하기 위해 커널이라는 핵심 요소를 제공하고 있습니다. 그 외 사용자 편의를 위해 시스템 프로그램, 응용 프로그램, 미들웨어를 같이 제공합니다.
서론
운영체제가 어떤 종류가 있는지 대부분 사람들이 잘 알고 있지만 운영체제가 어떤 일을 하고 있는지는 바로 떠오르지 않을 수 있다.
하지만 컴퓨터를 샀는데 운영체제가 포함되지 않은 빈 컴퓨터가 왔다고 생각해보자! 이 때 우리는 이 컴퓨터로 모니터에 글자 한 글자라도 띄울 수 있을까? 운영체제의 도움이 없다면 우리는 모니터의 정확한 좌표에 글을 띄우는 방법도 알아야하고 이 글자를 담을 메모리 관리도 알아야 할 것이다. 하지만 운영체제 덕분에 이러한 방법을 알 필요 없이 모니터에 여러 텍스트와 이미지를 띄울 수 있다.
운영체제?
위의 예시는 엄밀히 말하면 운영체제의 구성 요소 중 커널에 대한 예시라 볼 수 있다. 다른 구성 요소도 간단히 살펴볼 예정이지만 여기서 핵심은 하드웨어와 사용자를 중개하여 사용자가 편리하게 컴퓨터를 사용할 수 있게 하는 시스템을 운영체제로 보면 된다.
컴퓨터 시스템 구조
컴퓨터 시스템은 4가지 구성 요소로 나눌 수 있다.
- 하드웨어
- OS
- 응용 프로그램(워드 프로세서, 컴파일러, 웹 브라우저, 게임 등)
- 사용자(사람, 기계 또는 다른 컴퓨터)
우리가 사용하는 응용 프로그램들은 하드웨어의 조작이 필요할 때 하드웨어의 조작을 직접 하는 대신 OS가 중간 다리 역할을 하는 것이다. OS가 하드웨어의 조작 결과를 반환하면 응용 프로그램은 이 결과에 따라 어떤 동작을 할지 결정할 수 있다. 이러한 계층화된 구조는 여러 시스템에서 적용된 것과 동일하게 정보 은닉 등의 장점을 가진다.
운영체제 구성
운영체제는 Kernel이라는 핵심 요소를 가지고 있고 그 외 System Program, Application Program, Middleware 등을 포함한다.
- Kernel : 위 예시와 같이 하드웨어 수준의 작업을 수행한다.
- System Program : 시스템 서비스를 제공한다.(파일 관리, 텍스트 에디터 등)
- Application Program : 시스템 서비스와 관련없는 운영체제 내장 응용 프로그램(계산기, 윈도우 기본 제공 게임 등)
- Middleware : 어플리케이션 개발자에게 추가적인 서비스를 제공하는 소프트웨어 프레임워크(데이터베이스 등)
결론
운영체제는 컴퓨터 시스템 구성 요소 중 하나인 하드웨어와 응용 프로그램, 사용자 사이를 이어주는 징검다리라고 볼 수 있다. 특히 운영체제의 주요 구성 요소인 커널은 사용자 대신 하드웨어 수준의 작업을 진행하여 사용자는 이러한 작업을 알지 않아도 컴퓨터를 사용할 수 있다. 그 외 사용자가 편리하고 효율적으로 컴퓨터를 사용할 수 있게 System Program, Application Program, Middleware 등을 제공한다. 다음 챕터부터 운영체제가 어떻게 동작하여 사용자가 편리하고 효율적으로 컴퓨터를 사용할 수 있는지 본격적으로 알아볼 것이다.
Reference
2022 1학기 운영체제 수업 자료
Operating System Concepts, 8th Edition. Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. Wiley