프로그램, 프로세스, 스레드 프로그램 - 사용자가 원하는 일을 처리할 수 있도록 프로그래밍 언어를 사용하여 올바른 수행절차를 표현해 놓은 명령어들의 집합 프로세스 : - 간단하게 말하면 '실행 중인 프로그램' - 프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 됨 - 프로세스는 데이터와 메모리등의 자원과 쓰레드로 구성 스레드: - 쓰레드란 프로세스의 자원을 이용해서 실제로 작업을 수행하는 것을 말한다. 프로그래밍/study 2019.09.11
[OS]프로세스와 스레드 프로세스란? 실행중인 프로그램에 대한 인스턴스 리소스와 스레드로 구성 하나 이상의 스레드를 포함 하나의 CPU에서 동시에 여러 프로세스가 처리되는것 처럼 보이는 것을 멀티태스킹 스레드란? 어플리케이션의 실행에 있어서 가장 기본적인 단위 애플리케이션은 최소 하나의 스레드로 구성 각 스레드마다 별도의 스택 존재 다른 스레드와 독립적으로 돌아감 자원을 공유한다! 차이 프로세스는 독립된 메모리 공간을 갖는다. 다른 프로세스의 메모리에 접근하려면 IPC를 통해 프로세스간 통신을 해야한다. 스레드는 메모리를 공유한다. 이 때문에 동기화, 데드락 등의 문제가 발생 할 수 있다. 프로그래밍/study 2019.09.11