티스토리 뷰

반응형

✅ 1. 프로세스(Process)란?

● 정의

프로세스란 실행 중인 프로그램입니다.

컴퓨터에 저장된 .exe, .out, .py 같은 파일은 정적인 프로그램이고, 그것이 실제로 CPU에서 실행되면 동적인 존재, 즉 프로세스가 됩니다.

● 예시

  • chrome.exe를 더블클릭해서 실행하면 ⇒ “크롬 프로세스”가 하나 생김
  • notepad.exe를 실행하면 ⇒ “메모장 프로세스”가 생김

● 프로세스의 특징

구성 요소 설명
코드(텍스트 영역) 실행할 프로그램 코드
데이터 영역 전역변수, 정적변수 등
힙(Heap) 동적으로 할당되는 메모리
스택(Stack) 함수 호출 정보, 지역변수 등
레지스터 상태 CPU가 해당 프로세스를 어떻게 처리해야 할지 저장
프로그램 카운터 다음에 실행할 명령어 주소
PID(Process ID) 각 프로세스를 구분하는 고유 번호

✅ 2. 환경변수(Environment Variable)란?

● 정의

환경변수란 운영체제나 프로그램이 동작할 때 참고하는 외부 설정 값입니다.

즉, 프로그램이 실행될 때, OS가 이 프로그램에게 어떤 경로나 설정 값을 전달해주는 방식입니다.

● 예시

환경변수 이름 설명
PATH 실행 가능한 프로그램들이 저장된 폴더 목록
HOME 사용자 홈 디렉터리
TEMP 임시 파일 저장 디렉터리
JAVA_HOME 자바 설치 경로
PYTHONPATH 파이썬 모듈 탐색 경로

● 왜 필요할까?

  • 모든 프로그램에 설정을 일일이 하드코딩하지 않고,
  • OS 수준에서 공통된 값을 전달해서 유연하게 실행되도록 함

✅ 3. 프로세스와 환경변수의 관계

● 프로그램 → 프로세스로 실행될 때, 환경변수를 상속받는다.

  • 운영체제는 프로세스를 생성하면서 환경변수 목록을 함께 복사해서 전달한다.
  • 즉, 각 프로세스는 자기만의 환경변수 테이블을 갖고 있음.

● 자식 프로세스는 부모의 환경변수를 복사해서 받음 (공유 아님)

  • 부모가 환경변수를 바꾸면 자식에 영향 없음
  • 자식이 환경변수를 바꿔도 부모에 영향 없음

✅ 4. 실생활 비유로 이해하기

● 프로세스 = 요리사

  • 요리사는 조리법(프로그램)을 보고 요리를 시작 (실행됨)
  • 요리사는 각자 자신의 작업 공간(메모리)을 갖고 요리함

● 환경변수 = 주방에 붙어 있는 안내표

  • "소금은 어디?", "조리도구는 어디?" 등의 정보 제공
  • 요리사(프로세스)가 이 안내표를 보고 작업함

✅ 5. 환경변수는 어디서 설정하고, 어떻게 확인할까?

● Windows에서

  • 확인: cmd에서 set 입력
  • 설정:
    • 일시적: set MYVAR=hello
    • 영구적: 시스템 속성 > 고급 > 환경변수

● Linux/macOS에서

  • 확인: printenv 또는 env
  • 설정:
    • 일시적: export MYVAR=hello
    • 영구적: ~/.bashrc, ~/.zshrc 등에 추가

✅ 6. 프로그래밍 예시

● Python에서 환경변수 사용하기

import os

# 환경변수 읽기
print(os.environ['PATH'])

# 환경변수 설정
os.environ['MY_NAME'] = 'Alice'

● C에서 환경변수 받기

#include <stdlib.h>
#include <stdio.h>

int main() {
    const char* path = getenv("PATH");
    printf("PATH: %s\n", path);
    return 0;
}

✅ 7. 한 줄 요약

  • 프로세스는 실행 중인 프로그램.
  • 환경변수는 프로세스가 실행될 때 참고하는 설정 정보.
  • OS는 프로그램을 프로세스로 만들 때 환경변수를 복사해서 전달하고, 그 이후에는 독립적으로 유지됨.

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함
반응형