운영체제

[운영체제] 복습

parangofsky 2026. 2. 16. 22:27

안녕하세요? 오늘은 운영체제 파트에 대한 복습을 진행하려 합니다. 

올렸던 포스트를 확인해보니 문득, 운영체제에 대한 개념과 원리를 빼먹은게 보이더군요. 참 어렵습니다. 하나씩 원리를 이해하면서 정리하면 쉽겠건만, 중요 개념을 먼저 정리하려다 보니 이런 일이 생기네요. 그럴 때마다 이렇게 복습 포스트를 넣으려 합니다.

 

 

운영체제란?

 

운영체제란 프로그램 실행에 있어서 필요한 요소입니다.

실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 일종의 프로그램입니다.

 

운영체제 메모리에는 커널 영역과 사용자 영역이 있습니다. 운영체제는 커널 영역에 들어가게 됩니다.

 


역할

운영체제의 역할은 다음과 같습니다.

  • 메모리 관리
  • cpu관리
  • 입출력장치 관리
  • 자원 접근 및 할당
  • 파일 시스템 관리

 

운영체제는 쉽게 말하자면 하드웨어와 프로그램의 다리 역할과 같습니다. 중간에서 조율하는 역할을 합니다. 비유하자면, 정부 시스템이라고 생각해도 됩니다. 운영체제가 있기 때문에 어떤 문제가 발생했을 때 해결할 수 있는 창구 역할도 합니다.

 

컨텍스트 스위칭

다음은 컨텍스트 스위칭의 개념에 대해 정리해 보겠습니다.

 

컨텍스트란?

프로세스 실행순서가 넘어간다고 가정했을 때 중간정보 백업을 진행하게 되는데, 중간 정보를 컨텍스트라 합니다.

 

프로세스 a, b가 있고 a에서 b로 넘어갈 때, 이러한 문맥을 복구하여 진행하게 되는데 복구하는 과정을 컨텍스트 스위칭이라 합니다.

 

 

프로세스 코드 실습

import os

print("Hello, World!")
print("my pid is", os.getpid())

 

프로세스를 실행하면 pid가 부여됩니다. 이를 확인해보는 코드입니다.

 

 

이렇게 실행결과를 알 수 있습니다.

'운영체제' 카테고리의 다른 글

[운영체제] 스택  (0) 2026.02.09
[운영체제] 프로세스와 스레드  (0) 2026.02.06