
프로세스는 컴퓨터에서 실행되고 있는 프로그램을 의미하며 CPU 스케줄링의 대상이 되는 작업(task)이라는 용어와 거의 같은 의미로 쓰인다.프로그램 자체는 디스크에 저장된 실행 파일이지만 이 프로그램이 메모리에 로드되어서 실제로 실행되는 순간부터 프로세스라고 부른다.프

부팅은 컴퓨터가 꺼진 상태에서 전원을 켜면 운영체제가 메모리에 적재되어 실행을 준비하는 과정💡부팅은 컴퓨터 전원을 켜거나 재시작할 때 발생하는 과정이다. 이때 시스템 BIOS(Basic Input/Output System)가 먼저 하드웨어 장치들을 초기화하고, 주변

컨텍스트 스위칭은 운영체제가 멀티태스킹 환경에서 여러 프로세스나 스레드를 효율적으로 실행하기 위해 사용하는 중요한 매커니즘이다.CPU가 실행중인 프로세스(혹은 스레드)의 상태를 저장하고, \*다른 프로세스의 상태를 불러와 실행하는 과정으로 멀티태스킹 환경에서 CPU 자

메모리 계층은 2가지 주요 유형으로 구분된다.외부 메모리 / 보조 메모리 : 자기 디스크, 광 디스크, 자기 테이프로 구성. 프로세서가 I/O 모듈을 통해 접근할 수 있는 주변 저장 장치 내부 메모리 / 기본 메모리 : 주 메모리, 캐시 메모리 및 CPU 레지스터

캐시와 버퍼는 모두 데이터를 임시로 저장하는 메모리 공간이지만 사용하는 목적과 방식이 다르다. 오늘은 캐시와 버퍼에 대해서 공부해보고 왜 둘을 비교하는지도 알아보자!캐시는 자주 사용되는 데이터나 명령어를 임시로 저장하는 고속 메모리다. 주로 CPU 근처에 위치해 CPU

모든 프로세스는 운영체제로부터 자원을 할당받는다. 프로세스마다 필요하는 자원이 각자 다르지만 모든 프로세스가 공통으로 사용하는 자원이 있다면 그건 CPU !!운영체제가 어떻게 CPU를 프로세스에게 나눠주는지 ⇒ 스케줄링프로세스에게 CPU를 어떤식으로 할당해야 가장 효율

컴퓨터에서 프로그램이 실행되려면 메모리 공간을 할당 받아야 한다. 하지만 이 과정에서 메모리가 비효율적으로 사용되는 상태인 메모리 단편화라는 문제에 빠질 수 있다.쉽게 말해 사용하지 못한 빈 공간들이 메모리 여기저기에 흩어져 있는 것을 의미한다.메모리를 할당할 때 필요

가상 메모리는 컴퓨터가 처리할 데이터와 프로그램 크기가 점점 커지면서 물리 메모리(RAM)의 용량 한계를 극복하기 위해 만들어졌다. 과거의 컴퓨터는 모든 프로그램들이 반드시 RAM에 완전히 올라가야만 실행할 수 있었다. 하지만 물리 메모리의 공간 부족으로 실행할 수 없

세마포어는 여러 프로세스나 스레드가 공유된 자원의 데이터 또는 임계 영역등에 동시에 접근하지 않도록 막아준다.자원에 접근할 수 있는 프로세스의 수를 카운트하는 값(세마포어 값)을 가지고 있다.세마포어는 소유권 개념이 없어서 다른 프로세스/스레드가 해제할 수 있다. 여러

DeadLock(교착 상태)는 여러 프로세스가 서로의 자원을 기다리면서 무한정 멈춰 있는 상황을 뜻한다. 위의 다이어그램을 보면 프로세스1이 자원1을 점유하고 있고 자원2를 필요로한다.프로세스2는 자원2를 점유하고 있으며 자원1을 필요로 하고있다.→ 두 프로세스가 서

단일 프로세스 시스템은 한 번에 하나의 프로세스만 실행할 수 있는 구조이다. 이러한 방식은 CPU가 I/O 작업을 수행할 때 유휴 상태가 되므로 CPU가 일하지 않고 노는 시간을 많이 만들어 비효율적이다. 이를 해결하기 위해 여러 프로그램을 메모리에 올려놓고 동시에 실