운영체제 면접 질문 모음

참고 링크

Backend-Interview-Question

[기술 면접 준비 - 1일차] 운영체제

youtube - [10분 테코톡] 🎲 와일더의 Mutex vs Semaphore

책 - 실습과 그림으로 배우는 리눅스 구조



📌 Computer System

❓ 컴퓨터 시스템의 동작에 따른 하드웨어 구조에 대해 설명해주세요.

컴퓨터 시스템의 동작방식과 하드웨어 구조

❓ 프로그램의 종류에 대해 설명해주세요.

프로그램 종류




📌 사용자 모드, 커널 모드

❓ 시스템 콜은 무엇이고 종류는 무엇이 있을까요?

CPU 모드 변경

CPU 모드 변경




📌 Process & Thread

❓ Core란 무엇인가요?

❓ Process란 무엇이며 어떤 메모리 구조로 되어있나요?

❓ 프로세스는 운영체제에 어떻게 저장되나요?

❓ 프로세스 동기화란 무엇이며 관련된 문제 상황에는 무엇이 있을까요?

❓ 임계 구역 문제를 해결하기 위한 조건은 무엇인가요?

❓ 임계 구역 문제를 해결하기 위한 기법에는 무엇이 있나요?


❓ Thread란 무엇인지 설명해주세요.

❓ 스택을 스레드마다 독립적으로 할당하는 이유는 무엇일까요?

❓ PC Register를 스레드마다 독립적으로 할당하는 이유

❓ Multi-Thread Programming은 무엇인가요?

❓ Thread-Safe는 무엇을 의미하나요?


❓ Process와 Thread의 차이를 설명해주세요.

❓ Multi-Process와 Multi-Thread의 차이를 설명해주세요,

❓ Multi-Process, Multi-Thread는 언제 사용할까요?

❓ Context Switching 컨텍스트 스위칭에 대해 설명해주세요.

IMG_85CCBC5F8C66-1


📌 스케줄러 (Scheduler)

❓ 프로세스 스케줄러란?



📌 교착상태(Deadlock), 기아상태(Starvation)

❓ 교착상태(Deadlock)란?

IMG_6CC308928F87-1

❓ 기아상태(Starvation)란?



📌 Semaphore, Mutex, SpinLock

❓ Semaphore(세마포어)란?

❓ Mutex(뮤텍스; Mutual + Exclusion)란?

❓ SpinLock(스핀락)이란?



📌 Sync, Async

❓ 동기(Sync)와 비동기(Async)의 차이(블로킹, 넌블로킹) / 장단점에 대해 설명해보세요.



📌 Memory

❓ Swapping 이란 무엇인가요?

❓ Swapping을 하면서 발생하는 문제점에 대해 설명해주세요.

❓ 외부 단편화를 해소하기 위한 방법은 무엇이 있을까요?

❓ Segmentation 세그멘테이션이란 무엇입니까?




📌 Virtual Memory 가상 메모리

❓ 가상메모리에 대해 설명해주세요.

❓ 가상 메모리가 탄생하게 된 배경에 대해 설명해주세요.

❓ 요구 페이징 (Demand Paging)이란 무엇인가요?

❓ 페이지 교체 알고리즘이란 무엇인가요?

❓ 페이지 교체 알고리즘의 순서에 대해 설명해주세요.

❓ 페이지 교체 알고리즘 종류에 대해 설명해주세요.




📌 Caching(Cache) 캐시

❓ 캐시 메모리란 무엇인가요?

❓ 캐시 메모리에서 가장 신경써야 하는 문제는 무엇인가요?

❓ 적중률(hit rate)을 극대화 시키기 위한 방법은 무엇인가요?

❓ 캐시의 지역성에 대해 설명해주세요.