운영체제를 알아야 하는 이유

Sundae·2023년 8월 19일
0

운영체제

목록 보기
1/15
post-thumbnail

운영체제


오늘날 흔히 사용하는 데스크톱이나 노트북, 스마트폰에는 모두 운영체제가 설치되어 있다.

운영체제는 컴퓨터 부품들을 관리하고 여러 프로그램들이 올바르게 실행 되도록 돕는다.

운영체제란?


모든 프로그램들은 하드웨어를 필요로한다.

여러 연산작업이 필요한 프로그램은 CPU를 필요로하고 데이터를 저장하는 작업이 필요한 프로그램은 하드 디스크를 필요로한다.

이때 프로그램 실행에 필요한 요소들을 시스템 자원, 줄여서 자원이라고 한다.

실행할 프로그램에 필요한 자원을 할당하고, 실행되도록 도와주는 프로그램이 바로 운영체제(operating system)이다.

운영체제는 여느 프로그램과 같이 메모리에 적재되어 있어야 하는데, 운영체제는 중요하고 특별한 프로그램이기 때문에 컴퓨터가 부팅 될 때 커널 영역(kernel space)이라는 공간에 따로 적재된다.

커널 영역을 제외한 나머지 공간을 사용자 영역(user space)라고 한다.

즉, 운영체제는 사용자 영역에 적재된 프로그램들에게 자원을 할당하고 올바르게 실행되도록 돕는다. 또한, 운영체제는 실행할 프로그램을 메모리에 적재하고, 더 이상 실행하지 않는 프로그램을 메모리에서 삭제하며 지속적으로 메모리를 관리한다.

한 가지 더 중요한 점은, 어느 한 프로그램이 CPU를 계속 사용한다면 다른 프로그램들은 올바르게 실행될 수 없다. 그래서 운영체제는 최대한 공정하게 여러 프로그램에 CPU 자원을 할당한다.

개발자가 운영체제를 알아야 하는 이유?


운영체제가 없다면 간단한 프로그램이라도 하드웨어를 조작하는 코드를 모두 직접 작성해야하는 불편함이 있지만, 오늘날에는 운영체제가 알아서 하드웨어를 조작해준다.

그렇다면 개발자는 왜 운영체제를 알아야 할까?

그 이유는 아래와 같다.

운영체제는 프로그램이 하드웨어 상에서 어떻게 작동하는지 자세히 알고 있다.

이 뜻은, 개발자는 하드웨어가 아닌 운영체제를 통해 소통할 수 있다. 현재 하드웨어가 어떠한지, 우리의 코드가 어떻게 실행되었는지, 무슨 문제가 있는지 등을 말이다.

이를 통해 우리는 문제해결의 실마리를 찾을 수 있고, 하드웨어와 프로그램을 더 깊이 이해할 수 있다.

profile
성장 기록 / 글에 오류가 있다면 댓글 부탁드립니다.

0개의 댓글