운영체제 개념

eltory·2020년 9월 28일
1

운영체제

목록 보기
1/2

🖋 # 게시글의 내용 중 틀린 부분이나 지적해주실 부분을 댓글로 알려주세요! #
🖋 # 겸손히 배우며 성장하겠습니다! #

운영체제란?

운영체제 (Operating System)는 사용자에게 편리한 컴퓨터 인터페이스를 제공하고 컴퓨터 자원을 관리하는 등의 역할을 한다.

우리가 흔히 사용하는 Windows, Linux, MacOS, Android 등의 운영체제를 통해 다음과 같은 명령어들을 일일이 타이핑 안해도 된다. ( 물론 DOS 역시 운영체제이지만... )

출처 - 위키피디아

즉, 운영체제는 쉽게 이해하자면 컴퓨터 하드웨어를 사용하기 위해 소프트웨어적으로 사용자에게 기능을 제공해주는 소프트웨어다.


운영체제의 역할

그럼 운영체제가 하는 역할을 알아보자.
운영체제의 역할은 다음과 같이 크게 2가지로 나뉜다.

1. 인터페이스 제공

우리가 키보드로 타자를 치고, 마우스를 클릭하고, 화면에서 유튜브를 보고, 구글에서 검색을 하는 등 컴퓨터를 이용해서 하는 행위들(?)은 모두 운영체제가 제공하는 기능을 통해서 가능하다.

명령 줄을 통해서 컴퓨터를 사용하던 과거 애플에서 제작한 GUI( Graphical User Interface, GUI는 애플에서 제작한 것이 아님 )기반 매킨토시를 통해 사용자는 그래픽적 요소로 쉽게 컴퓨터를 사용할 수 있게 되었다.
사용자는 명령어를 더이상 타이핑하지 않고 마우스 더블 클릭만 하면 프로그램을 실행할 수 있게 되었다.

빌게이츠 역시 매킨토시처럼 GUI기반 Windows OS를 시장에 싼 가격에 내놓게 되었고 그로 인해 지구상에서 가장 부자가 될 수 있었다.

또한, 운영체제는 사용자에게 그래픽적 인터페이스만 제공하는 것이 아니다.
운영체제는 드라이버를 통해 사용자는 키보드, 마우스 등 하드웨어 자원의 제조사를 구분하지 않고 이를 이용할 수 있게 해주는 역할도 한다.

결국, 운영체제의 가장 큰 역할하나 하드웨어-소프트웨어-사용자 간의 인터페이스를 제공함으로써 컴퓨터를 손쉽게(?) 이용할 수 있게 해주는 것이다.

2. 컴퓨터 자원 관리

운영체제는 컴퓨터의 데이터, 메모리, 하드웨어 자원 등을 관리하고 보호하는 매니저 역할을 한다.

사용자는 운영체제를 통해서만 이용하고자 하는 하드웨어나 데이터에 접근이 가능하다.
생각해보자 사용자 마음대로 컴퓨터 운용에 중요한 파일이나 데이터를 지워버린다던지, 프로그램들이 지들 멋대로 자원을 사용한다던지...
아마 PC를 사자마자 고철로 팔아야 할 것이다.🗑


출처 - 위키피디아

이러한 하드웨어 혹은 소프트웨어의 접근을 안전하고 쉽게 이용하기 위해 운영체제는 자원을 관리한다.
컴퓨터의 두뇌인 CPU를 쉬지 않고 조금이라도 효율적으로 사용할 수 있게 한다든지, 메인 메모리의 한정된 공간보다 크게 사용할 수 있게 한다든지, 프로그램끼리 겹치지 않게 메모리의 주소를 관리 한다든지 운영체제는 컴퓨터의 제한된 자원을 조금이라도 효율적이고 안전하게 사용할 수 있도록 관리하는 역할을 제공한다.

사용자가 열심히 작성한 에세이를 프린트하기 위해 프린터를 이용한다 가정해보자.
사용자의 요청을 받은 응용프로그램은 직접적으로 프린터와 드라이버를 이용하는 것이 아니라 Kernel이라는 운영체제의 자원관리 프로그램에게 요청하고 처리하도록 한다.

😮: "나 프린트 할건데 🖨에게 프린트좀 해달라고 해줘"
🤖: "기다려봐, 🖨 야 프린트해줘"
🖨: "알겠어"

===== 프린트 중 =====

🤖: "😮 야 프린트 끝났다 📃"
😮: "고마워 커널아 다음에도 잘 부탁해"

뭐 이렇게 말이다.
이렇게 운영체제가 자원을 관리함으로써 사용자와 프로그램은 자원을 안정적으로 그리고 효율적으로 이용할 수 있는 것이다.

즉, 운영체제의 가장 큰 역할두번째 한정된 컴퓨터 자원을 보호하고 관리하는 역할을 제공하는 것이다.


결론

운영체제가 있기에 지금 이렇게 손쉽게 글을 쓰고 읽고, 유튜브를 보고, 음악을 듣고, 프로그래밍을 하고, 카카오톡으로 채팅할 수 있다. 🤣

profile
🎞 말보다는 행동과 기록으로 - 취업준비/백엔드/서버/분산

0개의 댓글