프로세스
-
[운영체제/OS] 스레드(Thread), 그리고 프로세스와의 차이ComputerScience/운영체제 2020. 6. 4. 10:02
쓰레드(Thread)란 무엇인가 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다. 출처 : wikipedia.org 예전 글에서 알아 본 실행중인 프로그램을 뜻하는 프로세스에서의 내부에서 실행되는 흐름의 단위입니다. 하나의 프로세스에는 최소 하나 이상의 스레드가 존재합니다. 다수의 프로세스가 순차적으로 실행되는 멀티프로그래밍은 각자의 프로세스가 독립적이기 때문에 자신만의 Code, Data, Heap, Stack를 갖고 있습니다. 하지만 스레드는 하나의 프로세스 에서 ..
-
[운영체제/OS] 프로세스/문맥교환/스케줄링ComputerScience/운영체제 2020. 6. 3. 10:21
프로세스(Process)와 쓰레드(Thread)의 차이를 알아보자. 프로세스 (Process) Process : 프로세스라는 것은 하나의 작동하고 있는 프로그램, 프로세스의 상태로는 CPU의 수행상태, 프로세스 주소공간, 프로세스 관련 커널 자료구조가 있다. CPU의 수행상태 : CPU의 수행 상태를 나타내는 하드웨어 문맥으로 PC(Program Counter : 다음에 실행 될 Code의 위치)와 각종 레지스터가 존재한다. 프로세스 주소 공간 : 프로세스는 Code, Stack, Data값을 각각 갖고 있다. 커널상의 Context : 프로그램이 수행돼 프로세스가 되면 OS는 이를 관리하기 위한 자료구조를 유지한다. PCB(Process Control Block) : 프로세스 정보를 저장해놓은 블록을 ..