2021/10/05 2

02. 운영체제 - 멀티 프로세스와 멀티 쓰레드

공부목적으로 다른 블로그의 글을 그대로 따라치면서 작성되었습니다. 저작권 문제 시, 비공개 처리하겠습니다 멀티 프로세스 대신 멀티 스레드를 사용하는 이유 프로그램을 여러 개 키는 것(멀티 프로세스) 보다 하나의 프로그램 안에서 여러 작업(멀티 스레드)을 해결하는 것이다 1. 자원의 효율성 증대 - 멀티 프로세스로 실행되는 작업을 멀티 스레드로 실행할 경우, 프로세스를 생성하여 자원을 할당하는 시스템 콜이 줄어들어 자원을 효율적으로 관리 할 수 있다 시스템 콜 운영체제에서 프로그램이 구동되는데 있어 파일을 읽어 오거나, 파일을 쓰거나, 혹은 화면에 메시지를 출력하는 등 (Data, Stack, Heap 등 포함) 많으 부분이 커널 모드를 사용한다. 시스템 콜은 이러한 커널 영역의 기능을 사용자 모드가 사용..

01. 운영체제 - 프로세스와 스레드의 차이 (Process vs Thread)

공부목적으로 다른 블로그의 글을 그대로 따라치면서 작성되었습니다. 저작권 문제 시, 비공개 처리하겠습니다 프로그램 (Program) - 프로그램(Program) 이란 - 사전적 의미 : 어떤 작업을 위해 실행할 수 있는 파일 - 프로세스(Process) 란 - 사전적 의미: 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 - 메모리에 올라와 실행되고 있는 프로그램의 인스턴스 (독립적인 개체) - 운영체제로부터 시스템 자원을 할당받는 작업의 단위 - 즉, 동적이 개념으로는 실행된 프로그램을 의미한다 - 특징 - 프로세스는 각각 독립된 영역(Code, Data, Stack, Heap 의 구조)를 할당받는다 - 기본적으로 프로세스 당 최소 1개의 스레드(메인 스레드)를 가지고 있다 - 각 프로세스는 별도의..