42Seoul/pipex

프로세스 통신(IPC)

재윤 2023. 9. 13. 01:15
반응형

프로세스

→ 프로세스란 프로그램이 실행되는 상태. 프로그램이 실행된다는 것은 RAM에 프로그램 코드가 적재돼 동작한다는 것임.

  • 프로세스는 운영체제로부터 시스템 자원을 할당 받는 단위. 스레드는 프로그램 실행 단위
  • 프로세스는 운영체제로부터 메모리, 주소공간 등을 할당 받고 스레드는 할당 받은 자원들을 스레드끼리 공유하며 실행된다.

프로세스, 코어

  1. CPU → Central Processing Unit 중앙처리장치
    • 간단하게 컴퓨터의 뇌로써 사고를 담당. 기억, 연산, 제어를 담당
  2. Prcoessor → 컴퓨터 운영을 위해 기본적인 명령어에 반응하고 처리하는 논리회로
    • 디바이스가 해야할 일을 총 지휘하는 프로세서를 CPU라고 함(보통 프로세서와 CPU를 같은 의미로 사용). 이외의 프로세스는 제어장치, 연산장치가 있음.
  3. Core → CPU의 각종 연산을 하는 핵심요소, CPU 내부에는 Core외에 캐시메모리, 컨트롤러 등이 있다.
    • Core는 CPU의 부품(multi-core cpu, multi-core processor 같은 의미로 사용)
    • CPU에서 코어(core)는 연산 작업을 수행하는 핵심적인 부분이며, CPU의 성능을 판단하는 기준 중 하나가 바로 '코어의 수'입니다. CPU에 코어가 많아지면 연산을 여러 개의 코어가 처리하기 때문에 훨씬 빠른 일 처리가 가능해집니다. 
      •  
  • 하나의 컴퓨터는 한 개 이상의 CPU를 포함하고 보통 Processor라고 함.
    • 여러 개의 Processor(==CPU)로 구성된 컴퓨터는 multi-processor system
  • 하나의 Processor(CPU)는 한 개 이상의 Core로 구성

[OS] CPU, Processor, Core, Process, Thread 그리고 관계 정리4

 

[OS] CPU, Processor, Core, Process, Thread 그리고 관계 정리

1. HW 1) CPU : Central Processing Unit, 중앙처리장치 간단하게 컴퓨터의 뇌로써 '사고'를 담당 기억, 연산, 제어를 담당 cf) MPU, MCU - MPU : Micro Processing Unit CPU의 한 종류로써, 전자부품과 반도체칩을 하나의

dmzld.tistory.com

프로세스, 스레드

  1. Process
  • 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것.
  • 프로그램에 사용되는 데이터와 메모리 등의 자원 그리고 스레드를 구성

   2. Thread

  • 프로세스내에서 실제로 작업을 수행하는 주체

       코어, 쓰레드 → 하이퍼스레딩 가능

[CPU] 코어는 뭐고 쓰레드는 뭐지? CPU 선택 장애가 올때..

 

[CPU] 코어는 뭐고 쓰레드는 뭐지? CPU 선택 장애가 올때..

[BY 멀티맨] 2코어 4쓰레드.. 4코어 8쓰레드.. 코어?쓰레드? 무슨 말인가?CPU를 고를때 코어와 쓰레드의...

m.post.naver.com

[OS] CPU, Processor, Core, Process, Thread 그리고 관계 정리

 

[OS] CPU, Processor, Core, Process, Thread 그리고 관계 정리

1. HW 1) CPU : Central Processing Unit, 중앙처리장치 간단하게 컴퓨터의 뇌로써 '사고'를 담당 기억, 연산, 제어를 담당 cf) MPU, MCU - MPU : Micro Processing Unit CPU의 한 종류로써, 전자부품과 반도체칩을 하나의

dmzld.tistory.com

IPC(Inter-Process Communication)

→ 프로세스 간 통신(Inter-Process Communication, IPC)이란 프로세스들 사이에 서로 데이터를 주고받는 행위 또는 그에 대한 방법이나 경로를 뜻한다.

  • 정보 생산자와 정보 소비자 프로세스 간 통신을 의미한다.
  • IPC 방법에는 공유 메모리, 소켓, 파이프 등이 있다.

과제에서 나오는 파이프

  • 파이프의 양끝단에서 파일 디스크립터를 사용하게 됨.
  • 파이프의 데이터 스트림(프로세스를 출입하는 데이터의 흐름) 번호임.
  • 프로세스의 출력을 리다이렉션 한다는 것은 데이터를 보내는 곳을 변경한다는 것.
  • 프로세스는 fd와 해당 데이터 스트림을 디스크립터 테이블에 저장해 처리함.

파일 디스크립터가 파일을 의미하는 것은 아니다.

printf() 경우 → 표준 출력으로 데이터를 내보내는데, 이를 fd = 1인 경우로 디스크립터 테이블에서 fd = 1인 경우의 데이터 스트림을 찾아 데이터를 해당 스트림에 출력한다.

반응형

'42Seoul > pipex' 카테고리의 다른 글

pipe(), unlink()  (0) 2023.09.13
access()  (1) 2023.09.13
dup, dup2  (0) 2023.09.13
execve()  (0) 2023.09.13
리다이렉션 <, >, <<, >>  (0) 2023.09.13