728x90
반응형
SMALL
안녕하세요, 혼자 공부하는 컴퓨터 구조 + 운영체제를 공부하고 학습한 자료를 남깁니다.
소프트웨어적인 스레드를 의미한다.
프로그래밍은 스레드를 고려하여 대부분 진행된다.
멀티 스레드와 멀티 프로세스가 어떻게 다른지 학습해보도록 하겠다.
- 들어가며
- 단일 프로세스
- 멀티 스레드
프로세스를 이루는 프로세스를 위한 여러 명령어를 동시에 실행이 가능할 수 있다.
- 스레드의 구성 요소
스레드들은 그 프로세스의 자원을 공유하면서 실행하면 좋겠다.
스레드는 실행 흐름의 단위이다.
리눅스는 프로세스와 스레드를 임의적으로 구분하지 않는다.
요즘 운영체제들은 cpu에게 전달을 할 때 프로세스 단위가 아니라 스레드 단위로 전달을 한다.
- 멀티 프로세스와 멀티 스레드 비교
프로세스끼리는 기본적으로 서로 서로 자원을 공유 하지 않지만
스레드끼리는 같은 프로세스 내의 자원을 공유하면서 실행된다.
- 멀티 프로세스
- 멀티 스레드
스레드만큼 유리하지는 않을 뿐 프로세스 간에도 자원을 주고 받을 수 있다. IPC라는통신을 통해서 자원을 주고 받을 수 있다. IPC 통신은 같은 컴퓨터안에서 자원을 서로 주고 받는 통신이다. (예. 파일 통신, 공유 메모리 간 통신)
파일 통신: 서로의 프로세스가 연관이 되어 있다면 자원을 주고 받는 통신을 할 수 있다.
공유 메모리 간 통신: 프로세스들끼리 공유하는 메모리를 만들어서 통신을 주고 받는 것.
감사합니다.
참고 url - https://www.youtube.com/watch?v=zUGvpUtNlwI&list=PLYH7OjNUOWLUz15j4Q9M6INxK5J3-59GC&index=31
728x90
반응형
LIST
'혼자 공부하는 컴퓨터 구조 및 운영체제 (복습)' 카테고리의 다른 글
[운영체제] 파이썬 코드로 스레드 확인하기 (1) | 2024.10.18 |
---|---|
[운영체제] 파이썬 코드로 프로세스 확인하기 (1) | 2024.10.18 |
[운영체제] 프로세스 상태와 계층 구조 (1) | 2024.10.18 |
[운영체제] 시스템 호출 직접 관찰하기 (1) | 2024.10.18 |
[운영체제] 운영체제의 큰 그림 (5) | 2024.10.18 |