#os

21개 글

Completely Fair Scheduler
7분 읽기

스케줄러의 근본적인 과제는 한정된 CPU 시간을 여러 태스크에 배분하는 것이다.

Container
12분 읽기

컨테이너container란 호스트 OS의 커널을 공유하면서, 파일 시스템·네트워크·프로세스 ID 등을 격리하여 독립된 실행 환경을 제공하는 기술이다.

Context Switch
14분 읽기

컨텍스트context란 CPU가 특정 태스크의 실행을 재개하기 위해 필요한 모든 상태 정보의 총합이다.

Earliest Eligible Virtual Deadline First
8분 읽기

CFS의 태스크 선택 원칙은 "레드-블랙 트리의 가장 왼쪽에 위치한 노드(최소 vruntime)를 고른다"로 요약된다.

Hypervisor
17분 읽기

가상 머신을 만들고 관리하는 소프트웨어를 하이퍼바이저[^hypervisor]라 부른다.

Inter-Process Communication
13분 읽기

프로세스는 운영체제가 부여한 독립된 주소 공간 안에서 실행된다.

Monitor
9분 읽기

세마포어는 정수 변수와 두 개의 원자적 연산(P/V, 또는 wait/signal)만으로 상호 배제와 실행 순서 제어를 모두 구현할 수 있는 범용 동기화 프리미티브다.

Operating System & Computer Architecture
1분 읽기

+ 프로세스 + PCB + 컨텍스트 스위치 + 스레드 + 시스템 호출 + 스케줄러 + CFS + EEVDF + Inter-Process Communication + fork() + exec() + 프로세스 종료 + 모니터 + 세마포어 + 락 (예정) + 경쟁 조건 (예정) + 최적화 장벽 (예정) + TLB + 가상화 + 하이퍼바이저 + 가상 머신 + Container + OverlayFS + 운영체제 (예정) + 커널 (예정) + POSIX (예정) + UNIX (예정) + ELF (예정) + API vs ABI (예정) 추후 업데이트됩니다.

OverlayFS
9분 읽기

유니언 파일 시스템union filesystem이란 여러 디렉토리 트리를 하나의 디렉토리로 합쳐서 보여주는 파일 시스템이다.

Process Control Block
6분 읽기

오늘날 컴퓨터에서는 수많은 프로세스가 CPU를 번갈아 사용한다.

System Call
10분 읽기

현대 운영체제는 CPU의 이중 모드dual mode[^dual-mode]를 활용하여 커널과 사용자 프로그램을 분리한다.

Translation Lookaside Buffer
15분 읽기

오늘날 모든 프로세스는 가상 주소virtual address를 사용하며, MMU(Memory Management Unit)가 페이지 테이블을 참조하여 가상 주소를 물리 주소로 변환한다.

Virtual Machine
10분 읽기

가상머신Virtual Machine, VM이란 소프트웨어로 구현된 컴퓨터다.

Virtualization
13분 읽기

가상화Virtualization을 이해하기 위해서는 가상 메모리Virtual Memory, 그리고 가상 메모리와 대비되는 개념인 물리 메모리Physical Memory를 이해해야 한다.

exec()
33분 읽기

exec()이라는 이름을 가진 함수는 사실 존재하지 않는다.

fork()
10분 읽기

fork()를 호출하면 현재 프로세스에서 파생된 새로운 프로세스가 생긴다.

Process
8분 읽기

프로세스가 무엇인지를 깊이 이해하기 위해서는, 이 개념이 컴퓨터와 함께 어떻게 발전해왔는지를 살펴보는 것이 도움이 된다.

Scheduler
9분 읽기

프로세서보다 프로세스가 많은 상황에서는 어떤 프로세스가 CPU를 사용하고 어떤 프로세스가 기다릴지를 결정해야 한다.

Semaphore
11분 읽기

세마포어Semaphore는 음이 아닌 정수 변수 $S$와, 이 변수에 대해 수행할 수 있는 두 개의 원자적 연산 $P$와 $V$로 구성되는 동기화 프리미티브다(Dijkstra, 1965).

Thread
7분 읽기

스레드는 프로세스 내부의 독립적인 실행 흐름이다(Silberschatz, Galvin and Gagne, 2018).

프로세스 종료
10분 읽기

프로세스 종료는 자발적 종료와 비자발적 종료로 나뉜다.