기술적 차이는 지정하십시오. 프로세스와 스레드?
[1]: http://en.wikipedia.org/wiki/Erlang_% 28programming_language% 29
모두 비종속 시퀀스에만 스레드는 프로세스 및 실행. 일반적인 차이점은 스래드입니다 (동일한 프로세스) 공유 메모리 공간이 있으며, 별도의 실행하십시오 실행하십시오 프로세스활용 메모리 공간.
얼랭 용어를 사용하여 " process"; 공유 메모리 않기 때문에 기업을 무라티프로그레밍 모델이다. 그들을 호출하십시오 " threads"; 아니하였으매 공유 메모리를 가지고 있다는 것을 의미한다.
프로세스 * 각 프로세스를 통해 프로그램을 실행하는 데 필요한 자원을. 가상 주소 공간,) 는 프로세스 실행 가능한 코드를 오픈 핸들을 보안 시스템 객체여야 컨텍스트로, 프로세스 식별자, 환경 변수, 클래스, 우선 독특한 작업 세트 및 하나 이상의 최소값과 최대 규모의 스레드할 실행. 각 프로세스 시작됨인 종종 있지만 추가 스래드입니다 만들 수 있는 단일 스레드 (thread 에서 해당 스래드입니다 주 () 이라고 한다.
스레드할 * 스레드는 프로세스 내의 엔티티입니다 스케줄링된 실행할 수 있는. 모든 프로세스의 가상 주소 공간 및 시스템 자원을 공유할 수 있다. 또한 각 스레드할 유지보수합니다 idfsysobject. 핸들러도 예약, 우선 순위, thread local storage, 고유한 스레드 식별자에서 일련의 구조가 될 때까지 컨텍스트로 스케줄링된 스레드할 저장하는 데 사용됩니다. # 39 의 스레드 컨텍스트로 dm_ownerdm_owner thread& 시스템 설정 레지스터, 주소 및 사용자 환경 블록, 스레드는 커널 스택 (stack) 의 공간을 thread& # 39 의 과정이다. 명의 도용 클라이언트를 사용할 수 있는 자체 보안 컨텍스트로 스래드입니다 가질 수도 있습니다.
이 MSDN 에서 찾을 수 있습니다. [ 프로세스와 스레드 정보] [1]
>. Microsoft Windows 는 선점형 멀티태스킹, 여러 곳에서 동시 실행 결과를 만들 수 있는 여러 스래드입니다 프로세스활용. 멀티프로세서 시스템에서 동시에 실행할 수 있는 컴퓨터, 컴퓨터 등 많은 스래드입니다 프로세서에서 있습니다.
[1]: 85%29.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/ms681917%28v = vs.
내가 대출받은 위의 정보 의 [ 기술 Quest! 블로그 ] (http://web.archive.org/web/20100807021758/http ://kquest.co.cc/2010/03/program-process-task-thread).
첫째, let& # 39 의 이론적 봐 주었다. 개념적으로 프로세스 관리는 어떻게 이해해야 하는 프로세스와 스레드 및 what& # 39 의 차이점에 대한 이해를 돕기 위해 그들 사이에 공유됨.
우리는 다음 섹션에 고전적 2.2.2 스레드할 모델 [현대 운영 체제 3e] [1] 에 의해 테넌봄:
>. 두 개의 독립적인 개념을 프로세스 모델을 기반으로 하고 있다. 리소스에는 >. 그룹짓기 및 실행. # 17.3cm, 전체 use& 구별하는 경우가 있습니다. >. 여기서 스래드입니다 외숙모요
그는 계속.
>. 한 가지 방식으로 처리할 수 있는 방안을 검토하고 있다는 >. 그룹 관련 자료 동업이요. 프로세스 주소 공간을 보유하고 있습니다. >. 프로그램을 포함하는 텍스트, 데이터 뿐만 아니라 다른 리소스와의. 이러한 >. 리소스에는 파일 열기, 알람, 자식 프로세스를 포함될 수 있고, 보류 >. 핸들러도 신호 정보 등을 차지했다. 이를 두고 >. 그들은 함께 형태로 프로세스를 보다 쉽게 관리할 수. >. 일반적으로 스레드는 프로세스 실행, 다른 개념을 갖고 있다. >. 그냥 스레드할 단축됐다. 엇회전식 스레드 프로그램을 제공하고 있다. >. # 17.3cm, 다음 실행할 수 있는 추적합니까 instruc& 드립니다. 있는 경우도 있다. >. 현재 작업 com/go/4e6b330a_kr 갖고 있다. 또한 스택을 포함하는 >. 실행 기록, 한 개의 프레임이 있는 것이 아니라 각 proce& # 두레 불렀으매 17.3cm. >. 아직 귀국했다. 비록 일부 프로세스 스레드할 autoexec. 합니다. >. 해당 프로세스 및 치료를 할 수 있고 서로 다른 개념을 스레드할 >. # 17.3cm, sepa& 라트리. 프로세스를 사용하는 리소스를 함께 그룹화하려면. 스래드입니다 >. cpu 에 스케줄링된 엔티티에는 실행할 수 있다.
그는 다음 table: 자세히 제공합니다.
Per process items | Per thread items
------------------------------|-----------------
Address space | Program counter
Global variables | Registers
Open files | Stack
Child processes | State
Pending alarms |
Signals and signal handlers |
Accounting information |
이제 let& # 39 의 소프트웨어 측면을 살펴봐야 합니다. 기본적으로 3 가지 방법으로 구현될 수 있는 소프트웨어 측면에서 스래드입니다.
구현하는 데 필요한 모든 CPU 는 스래드입니다 저장 기능 및 유지 할 수 있는 경우가 많아 여러 스택, 사용자 공간에서 수행할 수 있는 상태. # 39 는 사용자 공간 스래드입니다 수 없는 만큼, 초고속 스레드할 스위칭이란 너회가 don& 트랩하는 꽂으십시오 커널 능력 또한 예약하십시오 스래드입니다 the way you like. 가장 큰 단점이 차단 할 수 있다 (I / O 전체 프로세스 및 모든 it& 되는 블록이어야 # 39 의 스레드하고) 의 가장 큰 이유 중 하나인 우리가 사용하는 스래드입니다 1 위를 차지했다. 차단 프로그램 디자인을 상당히 단순화됩니다 스래드입니다 I / O 에서 사용하는 경우가 많다.
커널 스레드를 사용하여 I / O 의 유리할 수 있다는 차단 외에도 모든 OS 에 문제가 있지만 각 스레드할 스위치였습니다 单捞磐啊 것가운데 스케줄링하는 트랩핑 꽂으십시오 커널 원하는거요 잠재적으로 느려. 그러나 이 때문에 I / O you& # 39, re 스위칭이란 스래드입니다 차단되었음을 isn& # 39, t really 이후 I / O 작업을 포착되었습니다 너회가 꽂으십시오 커널 이미 문제가 있을 겁니다.
다른 외곽진입 결합하여 다양한 커널 스레드를 스레드하고 각 두 여러 개 있다.
그래서 다시 당신의 용어, 프로세스 및 질문을 받고 있는 것을 볼 수 있습니다) 라는 용어를 사용할 수 있는 실행 스레드할 는 서로 다른 두 개념 및 선택에 따라 달라집니다 you& # 39, re 이야기하고 있습니다. 이와 관련해, 가벼운 무게, 내가 직접 # 39 이라는 " process" don&, t, t really 불지옥이 시점으로든지 볼 만큼 doesn& # 39 라는 용어는 what& # 39 의 execution" 스레드할 뿐만 아니라, 상황을 잘 ";).
[1]: http://www.amazon.com/modern-operating-systems-andrew-tanenbaum/dp/? 키드 = 0136006639, 1382427689, s = books& sr_1_1 /ref = = = = modern% &, sr, ie utf8& 1-1& 20operating% 20systems 여러키워드 [2]: http://en.wikipedia.org/wiki/Multithreading% 28computer_architecture% 29
더 설명할 concurrent programming with respect to
독립된 하나의 프로세스에서 실행 환경. 일반적으로, 자원, 전체 프로세스를 가지고 다양한 기본 pbs. 런타임 특히, 각 프로세스 자체 메모리 공간이 있다.
모든 프로세스는 프로세스 내의 타임코드가 스래드입니다 1 개 이상 가지고 있습니다. # 39 의 스래드입니다 process& 메모리이고 등 자원을 공유할 파일 열기. 하지만 이 사용할 수 있는 효율적인 의사소통 문제가 많다.
항상 사람이 평균적으로 염두에 두고
공개을 컴퓨터에 Microsoft Word, 웹 브라우저. 우리들은 이 두 프로세스뿐 .
Microsoft word 에서 일부 및 it gets 구했잖아 자동으로 입력한 것. 이제 편집 및 저장 됩니다 - 편집 및 저장 한 사실을 알고 있는 경우는 평행광 스레드할 on the other 어떨까.
>. 하나 이상의 프로세스를 애플리케이션과는 이루어져 있다. 가장 간단한 약관보다 프로세스,) 는 실행 중인 프로그램. 하나 이상의 스래드입니다 관점에서 실행하십시오 과정이다. 마음이 있는 운영 체제의 기본 단위가 프로세서 시간을 할당합니다. 현재 실행 중인 프로세스의 코드를 실행할 수 있는 부품을 포함한 스레드 일부가 다른 사람이 어떨까. 실행 되어야 하는 응용 프로그램에서 수동으로 스케줄링된 파이버 정의한다. 관점에서 스래드입니다 저들이요 스케줄링합니다 실행하십시오 있는 섬유
훔친 [here] [1].
[1]: 이아스파스 http://msdn.microsoft.com/en-us/library/ms684841 (VS.85)
예: < br>; 말하도다 열지 브라우저 (mizilla, 구글 크롬, IE). 이 시점에서 새로운 프로세스를 시작할 것이라고 autoexec.
예: < br>; 브라우저에서 여러 탭 열기. < br>;
모두 비종속 시퀀스에만 스레드는 프로세스 및 실행. 일반적인 차이점은 스래드입니다 (동일한 프로세스) 공유 메모리 공간이 있으며, 별도의 실행하십시오 실행하십시오 프로세스활용 메모리 공간.
프로세스
실행 시 프로그램이다. 이 회사는 현재 활동은 이리에, 텍스트 부분을 프로그램 코드를 프로그램 카운터 값을 나타내는 &. 컨텐츠 프로세서 레지스터. 또한 임시 스택할 dm_ownerdm_owner 프로세스를 포함하는 데이터 (예를 들어, 함수 매개변수입니다 복귀하십시오 ruettgers 및 지역 변수를), data 절을 전역 변수를 포함하는. 프로세스는 프로세스 도중 동적으로 할당된 메모리가 실행 시간이 있어야 힙, 이는 즉.
스레드할
마음이 기본 단위를 CPU 활용도. 정보기술 (it) 은 스레드 id, 프로그램 카운터, 레지스터 집합, 그리고 스택할. it 와 공유됨 스래드입니다 동일한 프로세스를 속하는 다른 데이터 파일 열기 및 기타 운영 체제, 해당 코드를 섹선에서 섹션이고 같은 리소스에는 특징이다.
원자 단위계 (OS) 는 모두 스레드와 프로세스 자원 할당 (즉, there is a 동시성 모델 설명하는 어떻게 소유 및 모델 CPU 시간 분할됩니다 그 사이에 다른 OS 자료). 차이가 있습니다.
이 단어는, 얼랭 제꿈의 " process" 그들위에 맞자나 그렉이야 휴길 대한, 그리고 here # 39 에 대한 논의가 there& 왜 얼랭 할 수 있는 프로세스를 가벼운.
이 질문에 답해야 하는 jave 관련된 세계.
그러나 한 스레드는 프로세스 (process) 는 실행 프로그램의 실행 조합으 단일 프로세스 내의. 여러 스래드입니다 프로세스 포함할 수 있습니다. 마음이 라고도 경량 프로세스 .
예를 들면 다음과 같습니다.
사례 1: 자바 가상 머신 (jvm) 에서는 단일 프로세스 및 스래드입니다 속해 있는 것과 공유할 수 있는 과정이다. 그래서 여러 스래드입니다 같은 개체에 액세스할 수 있습니다. 힙 및 공유할 스래드입니다 나름의 스택할 공간. 그것은 여분이라일러라 스레드할 호출 변수는 스레드 안전 및 해당 지역 계속 1 의 메서드입니다 다른 커넥터로부터 스래드입니다. 그러나 스레드 안전 및 위해 반드시 동기화되어야 스레드할 힙 아니다.
예 2: 그림을 그릴 수 없는 프로그램을 통해 판독값 keystrokes. 키보드 입력 및 프로그램을 제공할 수 있어야 합니다 모든 신경을 쓰고 두 개 이상의 이벤트가 한 번에 처리할 수 없는 문제가 발생할 수밖에 없다. 이 문제는 두 개 이상의 단면에는 가장 적합한 솔루션을 공동 실행 프로그램의 동시에건간에. 스래드입니다 수 있게 됩니다. 이 그림은 그리던건데 프로세스와 프로세스 (thread) 는 판독값 키조합 서브노드.
http://lkml.iu.edu/hypermail/linux/kernel/9608/0191.html >. 리누스 토르발스 ([email protected]) >. >. 화, 6일 8월 1996년 12 47hz 31 +0300 (eet dst) >. >. 메시지 정렬됩니다. [날짜] [스레드할] [주제라서요] [저자] >. >. 다음 메시지: 베른트 P. 질러: ", Re: Oops 에서 get_hash_table". >. >. 이전 메시지: 리누스 토르발스: ", Re: I/O reques ordering". >. >. 월요일, 5일 8월 1996년, 피터 p. 이저로 대해 다음과 같이 썼다. >. >. >. >. >. 계속 总监和首席信息官完全了解 스래드입니다 선택해제합니다 필요하다. 너무 많은 사람들이 >. >. 프로세스와 스레드 줄 것으로 보인다. 다음과 같은 토론 >. >. 현재 상태를 백업이었습니다 linux용 반영하지 않은 것이 아니라, >. >. 높은 수준에서 논의가 임상의들의 시도합니다. >. >. 안돼! >. >. &Quot threads", 생각하는 이유가 없습니다. 및 " processes"; 있다. >. 별도의 엔티티로서. 하지만 난 어떻게 it& that& # 39 의 # 39 의 전통적으로 수행되 >. # 39 의 랑하니 it& 개인적으로 큰 실수라고 생각하고 이쪽요. 유일한 >. 역사적 수하물 이쪽요 생각할 이유가 있다. >. >. 정말 모두 스레드와 프로세스 게 하나 있다. a 의 컨텍스트로 ". >. execution". 그냥 다른 경우가 인위적으로 구분할 수 없을 것이다. >. 자기 제한. >. >. 이로써, 코, a 의 " 컨텍스트로 execution" 불렀으매 이제 막 지켜보고 있다. >. 모든 스테이드 iqn 코. Cpu 와 같은 것들을 포함하고 있는 상태 >. 상태 (레지스터 등) 의 경우 MMU 스테이드 (페이지 매핑이라는), 사용 권한 스테이드 >. (uid, gid), 통신 및 다양한 " states". (파일 열기, 신호 >. 핸들러도 등). 전통적으로 차이는 thread" "; 그리고 >. " process"; 그동안 페인트하는 스래드입니다 cpucomment 스테이드 (+ 가능성이 있다. >. 반면, 다른 모든 국민으로부터 컨텍스트로 다른 최소한의 상태) >. 과정이다. 그러나 s just that& # 39. >. 총 길이 클린업합니다 코 상태를 one 나누고 있는 게 없다고 말하고, 옳은 길로 it& # 39 와 s do it. 교도관님도요 제한 >. 그냥 일반 멍청했죠 해당 종류의 이미지가 >. >. 이에 대해 생각하는 방식을 (및 운행에서어떠한 셨으며 I want to work) 는 리눅스 >. no such thing as a " process" is 없다는;; 또는 thread" ";). There is >. 전체 중 유일하게 COE (일명 " task"; linux 에서). # 39 의 다른 COE& >. 그 중 한 부분을 컨텍스트로 subset 서로 공유할 수 있습니다. >. 공유 기능이 있는 기존 " thread" /" process";;; 하지만 이러한 설정 >. 받아야 할 것으로 봐야 서브세트만 (it& # 39 의 중요한 서브셋에 하지만 >. 하지만 그 중요도입니다 완료되니라 아닌 에서 설계 기준: 우리는 오브리우스 리 >. 리눅스 기반으로 하는 표준 준수 스래드입니다 실행하십시오 프로그래밍합니다 >. 너무). >. >. 한 마디로. 디자인 / 프로세스 사고에서 스레드할 주변에 마십시오. 이 >. 커널 설계됩니다 코 주변, 그리고 사고 방식을 합니다. >. pthreads library 부족하십니까 익스포트합니다 pthreads 인터페이스입니다 사용자 수 있습니다. >. # 39 의 COE& 사용하고자 하는 이쪽요 보고 있다. >. >. 단적인 예로 뭐한테 있다고 생각할 때 코 tpc. 수 있게 됐다 >. 반대로 스레드할 / 프로세스: >. >. - 당신은 할 수 있는 외부 " cd"; 프로그램, 생각하신거야) 는 전통적으로 불가능한 (UNIX) 및 / 또는 process/thread (어리석은 생각을 보여주고 있지만 >. 가질 수 있는 것은 이런 종류의 " modules"; # 39 aren& 국한된 것이 아니다. >. 기존의 UNIX / 스래드입니다 설치). Do a: >. >. 클론 (CLONE_VM CLONE_FS); >. >. 아기: 에스테베 (external-cd" ";). >. >. / 이 " " 에스테베 ();; 그래서 우리는 연관해제 VM 는 단 하나의 이유는 >. clone_vm 사용하여 만들 수 있었지만 (the act of 클론한 빠른 / >. >. - &Quot " 브포크 (), 할 수 있습니다. 자연스럽게 (it) 를 지원하는 커널 지원을 받았지만 자에 최소한의 부응합니다 CUA 사고 방식을 완벽하게): >. >. 클론 (CLONE_VM); >. >. 아기: 결국 계속 실행하십시오 에스테베 () >. >. 엄마: 에스테베 기다립니다. >. >. - deamons", 외부 ", 입출력 (i / o 작업을 수행할 수 있습니다. >. >. 클론 (CLONE_FILES); >. >. 아기: 오픈 파일 설명자 상술합니다 >. >. 엄마: # 39 의 하위 열리고 vv fd& 사용합니다. >. >. 위의 모든 작동합니까 aren& # 39 는 thread/process 제약됨 수 있기 때문에, t >. 사고 방식을. 예를 들어 CGI 생각할 수 있는 웹 서버 >. 스크립트는 수행되 tpc. 스레드를 execution" ";). # 39 는 can& 함께 할 수 있습니다. >. 항상 기존의 스래드입니다 공유할 수 있기 때문에 기존의 스래드입니다 >. 전체 주소 공간, 그래서 모든 것을 할 수 있습니다 링크 판매업체에서 you& # 39; d >. 하고 싶었는지 웹 서버 자체가 (a " thread"; # 39 는 다른 실행하십시오 can&. >. 실행가능파일). >. >. 이러한 점을 고려, 컨텍스트로 execution" " 있다. 대신 너회의 문제 >. 외부 프로그램 (= 분리하십시오 택한 작업을 실행할 수 있습니다. >. 주소 공간 모 서피스에서) 등 싶을 때, 또는 그들이 수행할 >. 예를 들어 있는 모든 파일의 공유 except 상위입니다 >. 설명자 (sub-" 있도록 threads"; 많은 않고 파일을 열 수 있습니다. >. 상위입니다 걱정해야 하는 그들. 그 때 자동으로 닫으십시오 >. 이 sub-" thread"; 종료하므로, 정보기술 (it), s, t # 39 doesn& fd& 사용하게 # 39 의 상위). >. >. 예를 들어, inetd", " 스레드한 생각해 보십시오. 운영까지도 낮음입니다 오버헤드에 >. 수 있는 방법, 그리고 fork+exec linux용 " " 사용하는 대신, 포크하지 (); >. 여기서 각 스레드를 작성하여 멀티스레디드 inetd 만들어지고 있습니다 >. 그냥 CLONE_VM (주소 공간을 공유할 수 있지만, 파일 공유 설명자 don& # 39, t >. 등). 아이의 경우 외부 서비스 (, rlogind 모함이야 에스테베 수 있습니다 다음 >. 예를 들어) 또는 어쩌면 내부 inetd 서비스 중 하나가 되었다 >. (에코), 타임공데이) 의 경우는 그냥 # 39 건 및 종료하므로 it& 않습니다. >. >. # 39, t, 함께 할 수 있습니다, /" thread" " can& process";). >. >. 라이너스
실행 중인 프로세스를 실행 신청서, 인스턴스에서는 마음이 길을 프로세스 내의. 또한 여러 개의 스레드를 처리할 수 있습니다. 주목할 것은 아무 것도 할 수 있는 프로세스를 스레드할 할 수 있지만, 스레드는 프로세스 구성될 수 있으며, 이후 여러 스래드입니다 밺 가벼운 "프로세스를 간주할 수 있습니다. 이에 따라 각 프로세스는 스레드할 에센셀 차이 및 작품에 사용된 하나는 해결할 수 있습니다. 스래드입니다 사용되는 반면, 작은 이동작업 프로세스를 사용하는 응용 프로그램을 실행할 수 있는 작업 - 자세한 "헤비급" 기본적으로.
또 다른 차이점은 스레드할 및 프로세스 내의 다른 프로세스를 공유하지는 동일한 프로세스 주소 공간의 에로남이네 스래드입니다 같은 읽기 / 쓰기를 할 수 없는 반면, 이 스래드입니다, 또한 같은 데이터 구조 및 변수 간의 통신을 용이해지므로 스래드입니다. 프로세스 간 통신 (ipc 또는 프로세스 간 통신 - 소트트웨어용 매우 어려운 노동 집약적이라는 단점을 가지고 있습니다.
>. 요약하면 차이점을 스레드와 프로세스:
스레드는 프로세스 보다 쉽게 만들 수 있기 때문에
이후 스래드입니다 다중스레딩 두고 신중하게 프로그래밍 데이터 공유를 하는 스트루커스 이벤트여야만 1 씩 수정되었음 스레드할 한 번에. # 39 스래드입니다 don& 달리, 프로세스, t 는 동일합니다 주소 공간.
가벼운 사용하기 때문에 이들보 스래드입니다 간주된다. 보다 덜 리소스에는 프로세스활용.
프로세스뿐 서로 독립적으로 지원됩니다. 스래드입니다 있기 때문에, 동일한 주소 공간을 도왔으매 二쇱쓽 상호 공유할 수 있다.
이거 정말 다른 방법을 알려주는 # 2 위.
여러 스래드입니다 프로세스 구성될 수 있습니다.
한 가지 관점에서 면접관이 그냥 기본적으로 3 가지 주요 프로세스 같은 것을 듣고 싶다, 목동들과 명백하네 스래드입니다 여러 개 있을 수 있습니다.
이들 모두 관점에서 운영 체제를. 다른 언어를 사용하는 등 다양한 개념을 구현할 수 있지만 이들은 그냥 사용하는 방법, 작업 및 드릴링됩니다 표시등으로 웨이 스래드입니다 스래드입니다 (섬유) 의 windows 에서). 하드웨어 및 소프트웨어 스래드입니다 없습니다. 및 하드웨어 및 소프트웨어 인터럽트 가지 예외 또는 사용자 모드 및 커널 스래드입니다 .
다음은 관련 기사 중 하나에서 내가 코드 프로젝트. 필요한 모든 것 같아요 확실하게요 설명합니다.
>. 마음이 메커니즘을 통해 다른 별도의 워크로드에 분할 >. 엑서큐션 스트림까지. 마음이 아닌 경량화 과정이다. 이 >. 이를 통해 보다 덜 수 있는 프로세스이지만, 전체 빨아준 유연도를 것을 의미합니다. >. 운영 체제의 초기화되어야 빠른 더 적기 때문에 >. 설정. 두 개 이상의 스래드입니다 구성되며, 모든 프로그램을 때 >. 공유하지는 스래드입니다 하나의 메모리 공간. 개별 프로세스 주소 공간 주어져 있다. >. 모든 공유하지는 스래드입니다 단일 힙. 하지만 각 스레드할 자체 스택할 주어질 수 있다.
프로세스 메모리에 프로그램을 실행하면 됩니다. 프로세스 마다 주소 공간을 갖는 등 다양한 세그먼트만 마무리라뇨 메모리에 저장하는 코드를 저장하는 전역 변수, 실베스 .text 세그레먼트 컴파일됨 비초기화 정적임 또는 상술합니다. 각 프로세스 자체 프로그램 카운터와 스택 사용자 스파시 있을 것이라고 말했다. 각 프로세스 자체 커널 내부 커널, 틀림없이 스택 (스택 분리되어 있는 보안 문제에 대한 사용자 공간) 과 이름이 '구조' 는 일반적으로 task_struct 추상화 같은 프로세스 제어 블록, 저장 등의 프로세스를 관한 모든 정보를 그 우선 순위를, 시/도, (그리고 다른 특징을 청크를). 여러 스래드입니다 프로세스 실행 할 수 있다.
그들은 가고 스래드입니다 내부에 프로세스와 부모 프로세스가 다른 리소스와의 함께 공유할 수 있는 주소 공간 (스레드 작성 등 자원, 공유, 파일 시스템 중 전달될 신호를 보류 데이터를 공유할 수 있다 (변수 및 지침) 따라서 스래드입니다 업그레이드됨 가볍고 빠른 컨텍스트로 스위칭이란. 커널, 각 스레드는 커널 내부 구조를 정의하는 '함께' task_struct 는 자체 스택할 어떨까. 커널 스레드를 볼 수 있으며 다른 엔티티에는 스케줄 때문에 같은 프로세스를 있는 것 "이라고 말했다. 동일한 프로세스 id 로 불렀으매 스래드입니다 공통적으로 스레드할 그룹 id, id 가 고유해야 또 ('타이드') 로 불리는 프로세스 id (pid) '').
프로세스를 *: 프로그램 실행 프로세스에 따라 알려져 있다
스레드할 *: 이는 다른 프로그램의 일부가 함께 실행됨을 스레드할 는 기능을 기반으로 总监和首席信息官完全了解 ", 1 개는 other" 아니하였덕라이처럼 하나님온 부품이라면 스레드할 프로세스.