실행 단위, 메모리, 자원, 실행 흐름, 코드 덩어리, 메모리 공유Process와 Thread는 프로그램이 실행되는 단위의 일종입니다. Process는 메모리 상에서 실행 중인 프로그램으로, 운영체제로부터 자원을 할당받은 작업의 단위입니다. Thread는 이 Proce
시스템 자원, 독립된 메모리 영역, code, data, stack, heap, 메모리 공유, 강제 종료 시나리오Process가 메모리에 올라가면, 운영체제로부터 시스템 자원을 할당 받습니다. 이때, 시스템 자원으로 각 Process마다 독립된 메모리 영역을 할당해주는
커널, 하드웨어, 사용자 프로그램, 인터페이스, 컴퓨터 자원, system call, dual mode, 하드웨어 자원, 입출력 명령커널은 운영체제의 핵심 부분으로, 하드웨어와 사용자 프로그램 사이에서 인터페이스를 제공하는 역할을 하며, 컴퓨터 자원을 관리하는 역할을
실행 순서, 자원 배분, PID, process 상태, 레지스터 값, CPU 스케줄링 정보, 메모리 관리 정보, 입출력장치, 사용한 파일운영체제는 빠르게 번갈아 수행되는 Process의 실행 순서를 관리하고, CPU를 비롯한 자원을 배분합니다. 이를 위해서 Proces
interrupt, context, PCB, multi processing, overheadContext Switching은 CPU가 interrupt 요청에 의해 다음 우선 순위의 process가 실행되어야 할 때, 기존의 process 상태인 context를 해당
process, PCB, new, ready, dispatch, running, timer interrupt, blocked,I/O, terminated운영체제는 process의 상태를 PCB를 통해 인식하고 관리합니다. 대표적으로 생성 상태(new), 준비 상태(re
process 생성 시스템, 부모/자식, 계층적, 구조화, PPID, 컴퓨터 부팅, 최초의 processprocess는 실행 중에 process 생성 시스템을 호출해서 새로운 process를 생성할 수 있습니다. 이때 process 생성 순서와 부모/자식 관계들이 계층
새로운 메모리, 새로운 Processfork() 시스템 호출은 새로운 process를 위한 메모리를 할당한다는 것입니다. fork()를 호출한 process를 새로운 공간으로 전부 복사 하는 것입니다. exec()를 호출한 process는 새로운 process에 의해
메모리 공간 공유, context switching 속도 비교, cache 메모리, 동기화, data, heap, 공유 자원 접근, 작업 처리 순서, 병목 현상Multi Thread는 한 process 내에서 여러개의 thread로 process를 실행하는 것을 의미합
공유 메모리, pipe, socket, message queue, memory map기본적으로 각 process는 서로 독립적인 메모리 공간을 할당받기 때문에, 서로 데이터를 공유할 수 없습니다. 하지만 중간에 각 process들이 모두 공유할 수 있는 메모리를 둔다면
보조기억장치, 메모리, CPU 할당, I/O queue, device, 입출력 장치Job Queue는 보조기억장치에 있는 process가 메모리로 적재되어 실행되기 위해 메모리 할당을 기다리는 queue입니다. Ready Queue는 현재 메모리에 적재되어 있지만, C
long term, medium term, short term scheduler (장기, 중기, 단기 스케줄러)에 대해 설명하세요 Keyword 작업 스케줄러, 준비 queue, 생성 상태, swapping, CPU 스케줄러, ready 상태, running 상태
CPU 이용률, 효율적, CPU 할당, 선점형, 비선점형, 스케줄링 알고리즘CPU 스케줄링은 CPU 이용률을 최대화하고 효율적으로 CPU를 사용하기 위해서, 운영체제가 각 process를 CPU에 언제 어떻게 할당시킬지 결정하는 방식입니다. 크게 선점형, 비선점형 스케
선입 선처리, 비선점형, 호위 효과, 최단 작업 우선가장 단순한 스케줄링 알고리즘은 선입 선처리 스케줄링인, FCFS 스케줄링(First Come First Served Scheduling)입니다. 단순히 ready queue에 삽입된 순서대로 process들을 처리하
time slice, 실행 시간 추정, 평균 응답 시간라운드 로빈 스케줄링(RR, Round Robin Scheduling)은 선입 선처리 스케줄링(FCFS)에 time slice라는 개념이 더해진 스케줄링 방식입니다. time slice는 process가 CPU를 사
ready queue 여러개, queue 별로 다른 알고리즘, 기아 현상, 에이징다단계 큐 스케줄링(MLQ, MultiLevel Queue Scheduling)은 우선순위별로 ready queue를 여러 개 사용하는 스케줄링 방식입니다. 가장 높은 우선 순위를 가진 q
동기/비동기(sync/async), 블록킹/논블록킹(blocking/nonblocking) I/O 에 대해 설명하세요 Keyword 실행 순서, waiting, 응답 여부, 제어권 Script 먼저 동기/비동기는 실행 순서와 관련된 개념입니다. 동기 방식은 특정 함
수행 시기, 실행 순서, 상호 배제, race condition간단하게 이야기하면, 프로세스 동기화는 프로세스 간의 수행 시기를 맞추는 것을 의미합니다. 즉, 실행 순서를 제어하여 올바른 순서대로 실행하도록 하고, 상호 배제(mutual exclusion)를 통해 동시
critical section, 상호 배제, lock, acquire, release, S, wait, signal, 인터페이스, 실행 순서 제어먼저 Mutex Lock은 동시에 접근해서는 안 되는 자원에 동시에 접근하지 않도록 만드는 도구로, 상호 배제를 위한 동기화
점유, 무한히 대기, 상호 배제, 점유와 대기, 비선점, 원형 대기Deadlock은 쉽게 말해서, 둘 이상의 프로세스가 서로가 점유하고 있는 자원을 기다리면서 무한히 대기하는 상황을 말합니다. Deadlock은 상호 배제(mutual exclusion), 점유와 대기(
교착 상태 해결 방법(Deadlock Solution)에 대해 설명하세요 Keyword Script Additional Reference [Book - 혼자 공부하는 컴퓨터 구조+운영체제](https://ebook-product.kyobobook.co.kr/d
메모리, 보조기억장치, 메모리 공간 크기, 스왑 영역, 스왑 아웃, 스왑 인swapping은 메모리에서 사용되지 않는 일부 프로세스를 보조기억장치로 내보내고, 실행할 프로세스를 메모리에 적재하는 메모리 관리 기법입니다. swapping을 통해, 프로세스들이 요구하는 메
메모리 단편화 (Memory Fragmentation)에 대해 설명하세요 Keyword Internal Fragmentation, External Fragmentation, paging, segmentation Script Fragmentation은 크게 Inter
물리 주소 공간, frame, 논리 주소 공간, page, 가상 메모리, swapping, 물리 메모리보다 더 큰 프로세스paging은 메모리의 물리 주소 공간을 frame 단위로 자르고, 프로세스의 논리 주소 공간을 page 단위로 자른 뒤에, 각 page를 fram
논리적 내용, segment, 외부 단편화Segmentation은 프로세스를 논리적 내용을 기반으로 나눠 메모리에 할당하는 기법입니다. 그래서 Segmentation은 프로세스를 segment의 집합으로 표현합니다. 대표적으로 프로세스를 code, data, stack
page table, 캐시 메모리, frame, locality of reference, TLB Hit, TLB MissTLB는 page table의 캐시 메모리입니다. 매번 page table과 그에 해당하는 frame에 접근하는 것은 비효율적일 수 있습니다. 그래서
페이지 테이블, 페이지 테이블 엔트리 (Page Table, Page Table Entry)에 대해 설명하세요 Keyword Script Page Table을 통해서 page number를 frame number로 맵핑해주며, 논리 주소를 실제 물리주소로 변환할 수
물리 메모리 용량의 한계, 디스크, 여러 프로세스 메모리 공유, 페이지 테이블, 페이지 교체 알고리즘가상 메모리는 물리 메모리 용량의 한계를 극복하기 위해 만들어진 기술입니다. 프로그램이 필요로 하는 모든 메모리를 물리 메모리에 올리지 않아도, 디스크의 가상 메모리를
요구 페이징 (Demand Paging)에 대해 설명하세요 Keyword Script Additional Reference Book - 혼자 공부하는 컴퓨터 구조+운영체제
page out, FIFO, 최적, LRU, LFU, MFU 페이지 교체 알고리즘은, 필요한 페이지를 물리 메모리에 적재해야할때, 만약 물리 메모리가 가득 차 있는 상태라면, 특정 페이지를 page out 해야하는데, 어떤 페이지를 page out할지 결정하는 알고리즘
캐시, 예측, 적중률, 시간 지역성, 공간 지역성캐시는 자주 사용되는 데이터를 저장해두어, CPU가 빠르게 사용할 수 있도록 하는 메모리입니다. 이 캐시를 효율적으로 사용하기 위해서는 CPU가 어떤 데이터를 앞으로 요구할지 예측할 수 있어야 합니다. 그래야, 캐시 메모
캐싱 라인 (Caching line)에 대해 설명하세요 Keyword Script Additional Reference Book - 혼자 공부하는 컴퓨터 구조+운영체제