ssausand-sunny / cs-study

면접.. 붙으려면 CS 공부 해야겠지?
0 stars 0 forks source link

컨텍스트 스위칭에 대해서 설명해주세요. #37

Open kjy0349 opened 4 months ago

kjy0349 commented 4 months ago

문제

예상 꼬리 질문 - 컨텍스트 스위칭은 어떻게 동작하나요? - 컨텍스트 스위칭이 일어남으로써 얻을 수 있는 장점을 설명해주세요.

들어가야 할 키워드 정리

Hunnibs commented 4 months ago
질문 답변

컨텍스트 스위칭이란 cpu에서 작업 중이던 프로세스를 종료시키고 다른 프로세스로 전환하는 과정을 의미합니다. 이는 멀티쓰레딩 기법을 활용할 경우 쓰레드 교체 사이에서도 일어날 수 있습니다.

꼬리 질문

* 컨텍스트 스위칭은 어떻게 동작하나요? 컨텍스트 스위칭은 cpu에 할당된 프로세스를 종료시키면서 상태 정보를 pcb에 저장한 이후 다음 프로세스를 불러와 cpu에 할당합니다. * 컨텍스트 스위칭이 일어남으로써 얻을 수 있는 장점을 말해주세요. 총 3가지의 장점이 있습니다. 첫 째로, 멀티태스킹 환경처럼 보이게 만들어 사용자에게 쾌적한 작업환경을 제공할 수 있습니더. 둘 째로, 자원을 효율적으로 사용이 가능합니다. 마지막으로, 우선순위가 높은 프로세스를 먼저 작업해서 응답시간을 향상시킬 수 있습니다.

kgh2120 commented 4 months ago
예상 답변 CPU의 활용성을 높이기 위해 시분할 시스템에서 프로세스를 짧은 시간동안 실행시키고, 다른 프로세스로 전환하는 과정에서 CPU를 점유하던 프로세스의 정보를 PCB에 저장하고, 다음 실행할 프로세스의 정보를 PCB로부터 불러오는 것을 말합니다.
예상 꼬리 질문 답변 - 컨텍스트 스위칭이 일어남으로써 얻을 수 있는 장점을 설명해주세요. 컨텍스트 스위칭을 통해 CPU의 활용성을 높일 수 있습니다. 프로세스가 IO 작업을 진행하여 블록 상태가 된다면, CPU는 유휴상태가 됩니다. 하지만 컨텍스트 스위칭이 있다면 이 상황에서 다른 프로세스를 실행시킬 수 있습니다. 그 다음으로 사용자에게 여러 프로세스를 동시에 실행하는 것 처럼 보여줄 수 있습니다.
Leeminw commented 4 months ago
예상 답변

컨텍스트 스위칭이란 cpu스케줄링에 의해 점유하고있는 프로세스 변경되며 발생하는 과정으로, 기존 프로세스의 진행사항을 pcb에 저장하고, 다음 실행할 프로세스의 정보를 pcb로부터 불러오는 과정을 말합니다.

예상 꼬리 질문 답변

- 컨텍스트 스위칭은 어떻게 동작하나요? - 컨텍스트 스위칭이 일어남으로써 얻을 수 있는 장점을 설명해주세요. 컨텍스트 스위칭을 통해 cpu의 사용률을 높힐 수 있습니다. cpu의 자원을 여러 프로세스에게 순차적으로 할당하여 마치 동시에 작업이 이루어 지는 것처럼 느낄 수 있습니다. 다만 컨텍스트 스위칭의 경우 많은 오버헤드를 가지기 때문에 쓰레로 구현하는 것 이 효율적일 수 도 있습니다.

kjy0349 commented 4 months ago
예상 답변

컨텍스트 스위칭이란, CPU를 점유하는 프로세스를 변경하는 작업을 말합니다. 현재 프로세스의 정보를 PCB에 저장하고, 이후 실행 될 프로세스의 정보를 해당 프로세스의 PCB로부터 불러와 점유하는 과정을 말합니다.

예상 꼬리 질문 답변

컨텍스트 스위칭은 어떻게 동작하나요?
A - 현재 점유 중인 프로세스, B - 새롭게 점유할 프로세스 + B에서 인터럽트가 발생합니다. + A의 실행 정보를 PCB에 저장합니다. + A를 대기 상태로 변경하고 B를 실행 상태로 전환합니다. + B의 PCB 정보를 기반으로 실행합니다. + B의 동작을 수행합니다. 컨텍스트 스위칭이 일어남으로써 얻을 수 있는 장점을 설명해주세요. - CPU가 하나의 코어만 가지고 있다고 하더라도, 여러개의 프로그램을 실행하는 것과 같은 멀티태스킹 경험을 제공할 수 있습니다. 또한, 여러개의 프로세스가 코어를 점유하므로 한 프로세스가 독점하여 CPU를 사용하는 것을 줄일 수 있습니다.