하드웨어 발전 역사에서 하드웨어 제조사들은 각자 나름의 방식으로 스레드를 구현했다. 이 때문에 개발자들이 스레드가 적용된 애플리케이션을 이식성 있게 구현하기가 곤란했다. 따라서 표준화된 프로그래밍 인터페이스가 필요해졌다.
유닉스 시스템에서는 IEEE POSIX 표준1을 통해 이러한 인터페이스가 정의됐고, 윈도우 계열 운영체제에서는 비필수 라이브러리로 제공된다. 이 표준의 구현은 POSIX threads 또는 Pthreads라는 이름으로 불린다(C 라이브러리 구현의 이름이기도 하다). 대부분의 하드웨어 제조사는 Pthreads를 채택했으므로 여기서도 이를 주로 다루겠다.
표준에서는 프로그램을 실행하려면 운영체제가 프로세스를 생성하도록 돼 있다. 그리고 모든 프로세스는 최소 하나의 스레드를 갖도록 했다. 따라서 스레드가 없는 프로세스는 존재할 수 없다. 그리고 각 스레드는 인스트럭션을 독립적이고 안전하게 실행할 수 있도록 각기 독립적인 실행 컨텍스트를 유지한다.