이 질문에 대한 동기 는 단일 스레드 프로세서가있는 Intel Galileo gen2 보드 를 탐색하는 데 있습니다.
멀티 태스킹 시스템은 시스템에 설치된 프로세서 또는 코어의 수와 처리하는 "스레드"의 수에 관계없이 여러 프로세스와 스레드를 처리합니다. 멀티 태스킹은 시간 분할을 사용하여 작동합니다. 커널과 실행중인 모든 프로세스 또는 스레드는 각각 실행에 시간을 소비하고 시스템은 다음 실행 가능한 스레드로 전환합니다. 스위치는 매우 자주 발생하므로 그렇지 않은 경우에도 모든 것이 병렬로 실행되고 있다는 인상을줍니다.
이 모든 작업은 API 등의 변경없이 발생합니다. 멀티 코어 시스템은 어쨌든 물리적으로 지원하는 것보다 더 많은 스레드를 실행할 수 있어야합니다. 단일 코어 사례는 그 인스턴스에 불과합니다.
CPU를 단일 스레드로 설명하는 것은 다중 스레드 (또는 프로세스 또는 작업)를 실행하는 CPU의 능력이 아니라 동시 멀티 스레딩 (SMT 또는 Intel 세계의 하이퍼 스레딩)을 의미합니다. CPU에 SMT 기능을 추가하는 것은 스레드 실행에 도움이되는 지침을 추가하는 것이 아니라 일부 상황에서 하드웨어를 더 잘 사용할 수 있도록합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다