
파이썬으로 프로세스 다루기
PID 값 확인하기


import os
os.getpid()
import os 를 한 뒤 os.getpid()를 하면 PID를 볼 수 있음
실행할 때마다 pid 값이 다름 → 운영체제가 실행할 때마다 PID 값을 배정해주기 때문
프로세스 계층구조 생성하기
프로세스 생성은 `from multiprocessing import Process`를 통해 할 수 있음


from multiprocessing import Process
# 프로세스 생성과 실행
child = Process(target=함수명).start()
parent preocess의 PID와 자식 프로세스에서 찍은 PPID값이 같음(83145)


자식들의 PID는 각기 다른 프로세스니까 다르지만, 부모 프로세스의 PID(PPID)는 모두 동일함
동일한 작업을 동시에 실행하는 프로세스


각기 다른 작업을 동시에 하는 프로세스


파이썬으로 스레드 다루기
스레드 만들기


import threading
# target에는 스레드가 실행할 함수명을 넣으면 됨
thread1 = threading.Thread(target=함수명).start()
# 스레드 ID 가져오기
threading.get_native_id()
프로세스를 공유하고 있기 때문에 PID 값이 같음
멀티 스레드 만들기


3개의 스레드를 만들어도, 프로세스를 공유하기 때문에 각각의 스레드의 PID 값은 같음
하지만 스레드 ID 값은 모두 다름
동시에 동일한 작업을 실행하는 스레드


각기 다른 작업을 동시에 실행하는 스레드


출처 : 혼자 공부하는 컴퓨터구조 + 운영체제 (저자 강민철)
'취업역량강화 > 컴퓨터공학' 카테고리의 다른 글
| [운영체제] 프로세스 동기화(뮤텍스 락, 세마포, 모니터) (0) | 2026.02.19 |
|---|---|
| [운영체제] CPU 스케줄링과 스케줄링 알고리즘 (0) | 2026.02.17 |
| [운영체제] 프로세스와 스레드 (0) | 2026.02.13 |
| [운영체제] 운영체제(정의, 핵심기능, 커널, 이중모드와 시스템 호출) (0) | 2026.02.11 |
| [컴퓨터 구조] 입출력 장치(장치 컨트롤러와 장치 드라이버, 다양한 입출력 방법) (0) | 2026.02.09 |