728x90
반응형

프로세스 3

IPC(Inter-Process Communication)

프로세스 간 통신(Inter-Process Communication, IPC)이란 프로세스들 사이에 서로 데이터를 주고받는 행위 또는 그에 대한 방법이나 경로를 뜻한다. IPC 종류 1. 파이프(Pipe) 파이프는 단방향 통신을 지원하는 IPC 방법으로, 한 프로세스에서 생성한 데이터를 다른 프로세스로 전송하는 데 사용됩니다. 파이프는 읽기와 쓰기로 구성되며, 프로세스는 파일 디스크립터를 사용하여 파이프와 상호 작용합니다. 2. 메시지 큐(Message Queue) 메시지 큐는 비동기식 IPC 방법으로, 큐를 통해 메시지를 전송하는 방식입니다. 메시지 큐는 이름을 가진 큐에 메시지를 추가하거나 제거할 수 있으며, 메시지를 읽는 동안 큐의 메시지는 계속 존재합니다. 3. 공유 메모리(Shared Memor..

CS 2023.04.08

프로세스 주소 공간

1️⃣ Code Segment 프로그램의 코드가 저장되어있다. 2️⃣ Data Segment 전역 변수(global variables)같은 데이터가 저장되어 있다. 3️⃣ Stack Segment 함수(function)나 지역 변수(local variables)가 저장되어 있다. 여기서 질문 📌 Q. 왜 Code 부분을 따로 두었나? A. Program의 Code는 Program이 만들어지고(컴파일되고) 나서는 바뀔 일이 전혀 없습니다. 따라서 읽기만 가능한 Read Only 부분입니다. 그렇기 때문에 같은 프로그램을 실행시켜 몇 개의 Prcess가 실행되더라도 같은 프로그램이라면 Code 부분은 다 똑같은 내용을 가지고 있습니다. Q. 왜 Stack 부분과 Data 부분을 나누었나? A. 전역 변수(g..

CS 2023.04.06

프로세스(process)와 스레드(thread)

프로세스(process)란? "운영체제로부터 시스템 자원을 할당받는 작업의 단위" 프로세스 간 통신(IPC, Inter-Process Communication)이 필요한 경우 운영체제가 제공하는 메커니즘을 사용하여 통신합니다. 각 프로세스는 다른 프로세스의 데이터나 상태에 직접적으로 접근할 수 없으며, 운영체제를 통해서만 접근할 수 있습니다. 스레드(thread)란? "프로세스 안에서 실행되는 여러 흐름 단위" 프로세스의 자원을 공유하면서 실행되므로, 각 스레드는 독립적인 실행 흐름을 가지지만, 해당 프로세스 내에서는 공유되는 메모리 영역을 통해 서로 통신할 수 있습니다. 이러한 특징 때문에, 스레드는 프로세스보다 가볍고 빠르게 생성되며, 자원의 효율적인 사용이 가능합니다. 그러나, 각 스레드는 서로의 ..

CS 2023.04.06
728x90
반응형