본문 바로가기

728x90
반응형

Programming

(10)
[OS] 멀티 프로세스(multi process)와 멀티 스레드(multi thread) 1. 멀티 프로세스(multi process) 멀티 프로세스란 2개 이상의 프로세스가 동시에 실행되는 것을 말한다. 동시에 라는 말은 동시성과 병렬성 두 가지를 의미한다. 동시성은 CPU core가 1개일 때, 여러 process를 짧은 시간동안 번갈아 가면서 연산을 하게 되는 시분할 시스템으로 실행되는 것이다. 병렬성은 CPU core가 여러개일 때, 각각의 core가 각각의 process를 연산함으로써 process가 동시에 실행되는 것이다. 동시성(Concurrency) VS 병렬성(Parallelism) 동시성 병렬성 Single core Multi core 동시에 실행되는 것 같아 보인다 실제로 동시에 여러 작업이 처리된다. 밑의 내용은 Single core의 동시성에 초점을 맞춘다. 멀티 프로..
[OS] 프로그램(Program) / 프로세스(Process) / 스레드(Thread) 프로그램(Program) : 어떤 작업을 위해 실행할 수 있는 파일 (설치된 프로그램) - 저장장치에 저장되어있는 정적인 상태 프로세스(Process) : 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 (실행된 프로그램) - 프로그램 실행을 위해 메모리에 올라온 동적인 상태 프로그램과 프로세스는 실행 파일의 실행 전(=프로그램) / 실행 중(=프로세스)의 차이로 구분할 수 있다. 스레드(Thread) : 프로세스 내에서 실행되는 여러 흐름의 실행 단위 하나의 프로세스는 여러 개의 스레드(=멀티스레드)를 가질 수 있다. - 기본적으로 하나의 프로세스가 생성되면 하나의 스레드(= 메인스레드)가 생성된다 👇👇👇 멀티프로세스와 멀티스레드 👇👇👇 [OS] 멀티 프로세스(multi process)와 멀티 스레..

728x90
반응형