여기는 저의 2004~2007년까지의 기록입니다. 이 블로그는 이제 Tistory로 옮겼습니다.
2008년부터의 기록은 http://blog.studioego.info 로 가시기 바랍니다.

StudioEgo's Thoughts, seasonⅡ


Thread?!
이번에 네트워크 공부하면서 용어가 헷갈리는 것이 있다.
바로 이놈이다 ↓
Thread


Thread만 보면 왜 실타래가 생각나는지 모르겠다. 개념은 안다만.. (헷갈리는것이 아니라 다른 것이 생각나서 그럽니다.)

Thread라 하면 난 바로 2학년 자료구조때 배웠던 Thread Binary Tree가 생각나는 것이다. ㅠㅠ 아님 phpBB 게시판에서 나오는 실타래나 Thread란 용어로 기억을 ㅠㅠ

Thread Binary Tree란 일반적으로 Tree에서는 단말 노드(leaf node)가 NULL을 가리키게 해서 순회하는데 비효율적이지만 Thread Binary Tree에선 단말 노드(leaf node)가 NULL을 가르키지않고 순회종류에 따라 가르키는 노드를 만들어서 순회에 효율성을 높인 것이라고 합니다.

변 모교수님의 Thread는 실타래, 실타래!~ 하면서 친절한 설명을 하셨던것도 생각나고 등등

네트워크 소켓프로그래밍 책 보다가 Thread 란 용어를 보니 자료구조 시간때에 변 모교수님의 자세한 설명이 생각만 나서 미치겠다.
Thread라는 것을 보면 왜 실타래가 생각나는 것이 뭘까?

네이버 영어사전에서 Thread는 이렇게 정의하고 있습니다.
1 [U.C] 실
a 바느질 실;꼰실;《영》 삼실;《미》 무명실;올실
a needle and thread 실꿴 바늘
b 선, 섬조(纖條), 가는 선
a thread of light 한 줄기의 광명
c【광물】 세맥(細脈);실처럼 가느다란 것 《털·거미줄·물줄기·빛살·가늘게 잇닿는 소리 등》
d 나사산, 나삿니
2a 연속, 계속;(이야기 등의) 줄거리, 맥락
b 특징, 요소
c [the thread, one’s thread] 인간의 수명
the thread of life 목숨
cut one’s mortal thread 목숨을 끊다
3 [pl.] 《미·속어》 의복, 옷
4【컴퓨터】 스레드 《인터넷의 토론 그룹의 멤버들이 쓴 메시지가 일련으로 링크된 것》



왜 UNIX에서 "가벼운 프로세스"를 Thread란 용어를 써서 당황시키는지 -_-+

이 쪽만 파면 Thread란 용어가 프로세스에서 돌아가는 것으로 자연스럽게 이해가 되겠지?

의외로 컴퓨터쪽에서도 용어는 같은데 개념이 다른 것들이 나와서 당황 *-_-*

Thread라 하면 고등학교때나 대학교 1학년때에는 인터넷의 토론 그룹의 멤버들이 쓴 메시지가 일련으로 링크된 것으로 알고 있었는데, 대학교 2학년때 자료구조 시간에 Thread라는 것은 Tree구조 나타낼때 나온 말로 알아듣고, 이번 겨울방학때에는 "가벼워진 프로세스"란 것으로 이해를 하고...ㅠㅠ

내가 아직도 부족한 것을 느끼게 된다.

이 글과 관련있는 글을 자동검색한 결과입니다 [?]

by Ego君 | 2007/01/26 20:44 | 컴퓨터 | 트랙백 | 덧글(5)
트랙백 주소 : http://sungdh86.egloos.com/tb/2960710
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 훌륭한시바 at 2007/01/27 00:44
문과 고딩에게 thread는 그냥 실타래였는데 ㅠ_ㅠ

그나저나 홍대분이셨군요. 그것도 컴공!
저 수시생 계절학기 T동에서 들었는데 (후덜덜;;)

저는 법대 신입생입니다. 반갑사와요~/


덤으로 링크도 업어갑니다
Commented by object at 2007/01/27 00:45
Thread를 light weighted process라는 개념으로 나온 것은 아주 오래된 개념이구요. 요즘 운영체제는 모두 native thread 기반이라 전통적인 개념과는 약간 다릅니다. 커널 자체에서 스레드를 지원해요. Thread를 cpu 스케쥴러가 CPU를 할당하는 최소의 단위라고 생각하세요. 그러니까 하나의 실행 흐름을 가지는 것이죠. 그럴려면 자신만의 스택과 레지스터 벡터가 필요하죠. 프로세스는 그냥 스레드들을 담는 그릇입니다. 프로세스가 돌아가려면 최소 하나의 스레드는 있어야하지요.
Commented by daybreaker at 2007/01/27 02:37
제가 작년 봄학기에 들었던 System Programming 수업에서 교수님이 말하시길, 프로그램이 순서대로 주욱 실행되는 과정을 실 한오라기가 주욱 풀어져 나오는 것과 비슷하다고 생각해서 그렇게 비유한 거라고 하더군요.

리눅스 커널 2.4 이전에서는 light-weighted proces읜 개념이었지만 커널 2.6부터 native thread로 바뀌었지요. 물론 user process 입장에서는 pthread 라이브러리를 쓰는 건 똑같습니다.
Commented by 리토 at 2007/01/27 02:53
뭔가 외국어가 바글바글 @_@;;;
전 그저 쓰레드(..)를 쓰레기~라고 하면서 공부했던 기억이나네요(쿨럭)
Commented by Ssopi at 2007/01/27 17:03
영어는 복잡해 ㄷㅅㄷ...

:         :

:

비공개 덧글

< 이전페이지 다음페이지 >