호비시의 끄적끄적

운영체제 본문

취준

운영체제

호비시 2022. 4. 9. 04:23

운영체제란?

운영체제(OS, Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 운영체제는 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용프로그램이 유용한 작업을 할 수 있도록 환경을 제공한다.

 

컴퓨터 구조

컴퓨터는 기본적으로 CPU, Memory, Disk와 I/O 로 이루어져 있습니다.

CPU는 속도가 가장 빠르지만, 용량이 가작 작습니다.

Disk는 속도가 가장 느리지만, 용량이 가장 큽니다.

Memory는 이 둘 사이에 데이터를 주고 받는 역할을 합니다.

개발자가 만든 프로그램을 실행한다고 예를 들어봅시다. 사람들이 이해하기 쉬운 C, C++, JAVA로 이루어진 언어를 컴파일 해서 실행파일을 만들고 실행파일은 컴퓨터가 이해하기 쉬운 코드와 리소스로 이루어져 있습니다. 이 실행파일을 실행 할 때 코드중 일부가 Memory에 올라갑니다. 그리고 Memory는 Disk에서 받은 Binary 코드를 CPU에 보냅니다.

 

Binary 코드가 Memory에 올라가는 순간, 즉 프로그램이 실행되면 이 프로그램은 프로세스가 됩니다.

프로세스 = 현재 실행중인 프로그램입니다.

작업관리자를 켜보면 쉽게 확인 할 수 있습니다.

아주 많은 숫자의 프로세스들이 있습니다. 이 말은 즉 컴퓨터에서는 많은 프로그램이 "동시에" 실행되고 있습니다.

하지만 사실 우리 눈에는 동시에 실행되는것 처럼 보이는 것입니다. 프로세스를 실제로 작동시키는 프로세서 즉 CPU가 엄청나게 빠른 속도로 이들을 실행하고 있습니다.

 

싱글코어, 듀얼코어, 멀티코어 라는 말을 들어봤을텐데요 프로세서 1개당 코어 1개를 뜻합니다.

프로세서가 많으면 많을 수록, 코어가 많으면 많을 수록 더 빠르고 더 많은 프로세스들을 처리 할 수 있습니다.

속도가 빠른 CPU가 일을 다 처리하면 좋겠지만, 용량이 매우 작기 때문에 이를 보좌하기 위해 Memory가 존재합니다. 하지만 Memory 역시 Disk에 비해 용량이 매우 작고 가격이 비쌉니다. 그래서 프로그램의 모든 데이터를 Memory에 올릴 수 없기 때문에 일부분만 올라가고 또 일부분은 내려가곤 합니다. 어떤 프로세스의 어떤 데이터를 적재시킬지가 관리 대상이 되는데요 이를 메모리 관리, 메모리 교체 알고리즘이라 합니다.

 

정리해보겠습니다.

이렇게 CPU, Memory, Disk, I/O 까지가 컴퓨터의 대략적인 구조입니다. Cpu가 어떻게 프로세스들의 스케쥴을 관리하는지, 또는 Memory와 Disk사이를 어떻게 관리하는지를 결정하는 것이 운영체제입니다.

운영체제의 기능

  • 프로세서, 기억장치, 입출력 장치, 파일 및 정보 등의 자원을 관리
  • 자원을 효율적으로 관리하기 위해 자원의 스케줄링 기능 제공
  • 사용자와 시스템 간의 편리한 인터페이스를 제공
  • 시스템의 각종 하드웨어와 네트워크를 관리 및 제어
  • 데이터를 관리하고 데이터 및 자원의 공유 기능 제공
  • 시스템의 오류를 검사 및 복구
  • 자원 보호 기능 제공
  • 입출력 보조 기능 제공

 

출처 : https://www.youtube.com/watch?v=J06SirxZG7M 

'취준' 카테고리의 다른 글

REST API란?  (0) 2022.06.19
브라우저에서 서버까지  (0) 2022.06.18
RDB vs NOSQL  (0) 2022.04.02
추상클래스와 인터페이스  (0) 2022.03.26
DNS의 원리  (0) 2022.03.21
Comments