[정보통신용어] 스레드-멀티스레딩

thread/multithreading – 스레드/멀티스레딩

유즈넷의 뉴스그룹이나 그와 비슷한 토론의 장에서, 스레드란 초기에 올려진 메시지에 대해 올라간 일련의 응답들을 의미한다.

스레드는 수없이 많은 뉴스그룹내의 각각의 토론들을, 추후에 관련 있는 것끼리 찾아서 이해하거나 또는 그 토론에 참여하는데 도움을 준다.

스레드는 보통 최초의 메시지 위에 관련되는 메시지들을 올려놓는 형식의 그림으로 표시된다.

컴퓨터 프로그래밍에서, 스레드는 다수의 사용자들을 동시에 처리할 수 있는 프로그램이 각각의 사용과 관련하여 가지고 있는 정보들 말한다.

프로그램의 관점에서 보면, 스레드는 한 명의 개별 사용자 또는 특정한 서비스 요청을 서비스하는데 필요한 정보이다.

만약 다수의 사용자들이 그 프로그램을 쓰고 있거나, 또는 다른 프로그램들로부터 동시에 요청이 발생했을 때, 각각의 사용자나 프로그램들을 위해 스레드가 만들어지고, 또 유지된다.

스레드는 프로그램에게 현재 어떤 사용자가 서비스를 받고있는지를 파악하게 함으로써, 다른 사용자들을 위하여 재진입 해야할 것인지의 선택을 할 수 있도록 한다 (단방향 스레드 정보는 특별한 데이터 저장소 내에 그것을 저장하고, 데이터 저장소의 주소를 레지스터에 집어넣음으로써 유지된다.

운영체계는 항상 프로그램이 중단되었을 때 레지스터의 내용을 저장하며, 그리고 다시 제어권이 주어졌을 때 그 내용을 복구한다). 멀티스레딩과 멀티태스킹은 비슷해서 자주 혼동된다.

오늘날의 컴퓨터들은 한번에 단 한 개의 프로그램 명령어만을 수행할 수 있다.

그러나, 그들이 매우 빠르게 동작하기 때문에, 동시에 많은 프로그램들을 실행하고, 많은 사용자들을 서비스하는 것처럼 보이는 것 뿐이다.

윈도우95와 같은 운영체계는 각 프로그램에게 실행될 때 “순서”를 주는데, 다른 프로그램들은 자신들에게 순서가 돌아올 때까지 기다리게된다.

이 프로그램들 각각은 운영체계에 의해 일정량의 자원들이 관계되고 진행상황을 계속 알게되는 하나의 작업, 즉 태스크로 간주된다.

[Movie Script]Big

Big
SCENE 1

JOSH
You are standing in the cavern of the evil wizard. All around you are
the carcasses of slain ice dwarfs...Melt the wizard. What do you want
to melt him with? What do you think I want to melt him with...(Josh,
don't forget to take out the garbage) Just a second! Throw
the...(Josh, did you hear what your mother said?) One minute! (Josh
Baskin!) Your hesitancy has cost you dearly. The wizard, sensing your
apprehension, unleashes a fatal blow from the ice scepter. With luck,
you will thaw in several million years. Great.

MOM
C'mon Josh, it's starting to get awfully late!

JOSH
Okay. Okay. Okay.

SCENE 2

JOSH
Take the garbage out. Every day, take the garbage out...Rick Rodin is
on the mound for the Yankees! He looks into the catcher's mitt, shakes
off the first signal, takes the turn, wipes the sweat off his brow,
leans back and fires...

BILLY

More...