본문 바로가기

SYSTEMS&TOOLS/BASIC

프로세스 관리-1 : 프로세스와 스레드

# 본 게시글은 작성자 본인의 스터디 목적으로 작성된 글입니다.


# 본 게시글에는 일부 잘못된 정보가 포함되어있을 수 있습니다.


# 이 글을 열람하는 것은 위 사항에 동의하는 것으로 간주합니다.


# 잘못된 정보에 대한 태클 및 지적질 적극 환영합니다.



1. 프로세스

    - 실행중인 프로그램으로 능동적인 개체임

    - 세부사항 링크 참조 : 보안인닷컴 팀블로그 http://boanin.tistory.com/75

 


2. 프로세스와 스레드


   2.1 스레드

        - 한 프로세스를 구성하는 세부 실행 개체

        - 한 프로세스내에 존재하는 동료 스레드은 코드영여과 데이터영역을 공유하고, 스택영역은 별도로 갖는다


   2.2 단일스레드 프로세스

        - 프로세스에 하나의 스레드만 존재


                       <단일스레드 프로세스>


 

   2.3 멀티스레드 프로세스 

        - 프로세스에 여러 개의 스레드 존재 

                     <멀티스레드 프로세스>



3. 스레드 구현 방식


   3.1 사용자 수준 스레드(User-Level thread)

        - 프로세스 단위 스케줄링

   3.2 커널 수준 스레드(Kernel-Level thread)

        - 스레드 단위 스케줄링

   3.3 스레드 사용의 장점(커널수준 스레드에서만 가능)

        - 프로세스 완료시간 단축 : 동일 프로세스내에서 계산 작업중의 스레드들과 입출력 작업중의 스레드들을 병행처리함