개발일지

2024.03.14 TIL

과일바구니♡ 2024. 3. 14. 21:07

1. 기술면접질문

1)프로세스와 쓰레드에 대해서 설명하고 그 차이에 대해서 설명해주세요.

프로세스는 실행 중인 프로그램을 나타내는 독립적인 실행 단위이며, 메모리 공간을 독립적으로 할당받고 자원을 관리합니다. 쓰레드는 하나의 프로세스 내에서 실행되는 작은 실행 단위로, 메모리를 공유하고 자원을 공유하여 동시에 실행될 수 있습니다. 프로세스는 독립성과 안정성을 제공하지만 자원 비용이 크고 통신이 복잡하며, 쓰레드는 경량화된 실행 단위로 자원 공유와 통신이 간단하고 빠르지만 안정성과 보안에 제약이 있을 수 있습니다.

 

2)멀티프로세스와 멀티쓰레드의 특징에 대해 설명해주세요.

멀티프로세스: 여러 개의 독립적인 프로세스를 동시에 실행하여 안정성과 보안을 제공하며, 프로세스 간의 통신은 IPC를 통해 이루어지고, 병렬 처리로 성능을 향상시킬 수 있습니다.

멀티쓰레드: 하나의 프로세스 내에서 여러 개의 쓰레드를 동시에 실행하여 자원 공유와 통신이 간단하고 빠르며, 프로세스 간 전환보다 빠르고 경량화된 실행이 가능합니다. 하지만 쓰레드 간의 동시 접근에 주의해야 하며, 하나의 쓰레드에 문제가 발생하면 전체 프로세스가 영향을 받을 수 있습니다.

 

 

'개발일지' 카테고리의 다른 글

2024.03.18 TIL  (1) 2024.03.18
2024.03.15TIL  (0) 2024.03.15
2024.03.13TIL  (0) 2024.03.13
2024.03.12 TIL  (0) 2024.03.12
2024.03.11 TIL  (0) 2024.03.11