멀티스레드2 OS | 멀티 프로세스 대신 멀티 스레드를 사용하는 이유 쉽게 설명하면, 프로그램을 여러 개 키는 것보다 하나의 프로그램 안에서 여러 작업을 해결하는 것이다. 자원의 효율성 증대 멀티 프로세스로 실행되는 작업을 멀티 스레드로 실행할 경우, 프로세스를 생성하여 자원을 할당하는 시스템 콜이 줄어들어 자원을 효율적으로 관리할 수 있다. 프로세스 간의 Context Switching 시 단순히 CPU 레지스터 교체 뿐만 아니라 RAM과 CPU 사이의 캐시 메모리에 대한 데이터까지 초기화되므로 오버헤드가 크기 때문 스레드는 프로세스 내의 메모리를 공유하기 때문에 독립적인 프로세스와 달리 스레드 간 데이터를 주고 받는 것이 간단해지고 시스템 자원 소모가 줄어들게 된다. 처리 비용 감소 및 응답 시간 단축 또한 프로세스 간의 통신(IPC)보다 스레드 간의 통신의 비용이 적.. 2023. 7. 3. 운영체제 공룡책 : Ch4. Threads & Concurrency | 스레드와 병행성 📌 들어가며 현대 운영체제는 한 프로세스가 다중 스레드를 포함하는 특성을 제공한다. 다중 CPU를 제공하는 다중 코어 시스템에서 스레드 사용을 통한 병렬 처리의 기회를 식별하는 것이 중요해지는 시점에서, 이번 단원을 통해 다중 스레드 컴퓨터 시스템과 관련된 내용을 알아보고, 개발자로서 병렬 처리 기회를 식별하고 언어 제공 기능 및 API 프레임워크가 스레드 생성 및 관리 세부 정보를 관리할 수 있도록 하는데 초점을 맞추고자 한다. 📚 4.1 개요 스레드 Thread란 CPU 연산의 가장 작은 단위이다. 스레드는 Thread ID, program counter (PC), register set, stack으로 구성된다. 같은 프로세스 안에 있는 스레드들은 code 섹션, data 섹션, 그리고 files와.. 2023. 3. 15. 이전 1 다음