Process

ν”„λ‘œμ„ΈμŠ€λž€ 싀행쀑에 μžˆλŠ” ν”„λ‘œκ·Έλž¨μœΌλ‘œ μŠ€μΌ€μ€„λ§μ˜ λŒ€μƒμ΄ λ˜λŠ” μž‘μ—… (task) κ³Ό 같은 의미둜 μ‚¬μš©λ©λ‹ˆλ‹€. ν”„λ‘œμ„ΈμŠ€ λ‚΄λΆ€μ—λŠ” μ΅œμ†Œ ν•˜λ‚˜μ˜ μŠ€λ ˆλ“œ (thread) λ₯Ό κ°€μ§€κ³ μžˆλŠ”λ°, μ‹€μ œλ‘œλŠ” μŠ€λ ˆλ“œ λ‹¨μœ„λ‘œ μŠ€μΌ€μ€„λ§ λ©λ‹ˆλ‹€. ν•˜λ“œλ””μŠ€ν¬μ— μžˆλŠ” ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λ©΄, 싀행을 μœ„ν•΄μ„œ λ©”λͺ¨λ¦¬ 할당이 이루어지고, ν• λ‹Ήλœ λ©”λͺ¨λ¦¬ κ³΅κ°„μœΌλ‘œ λ°”μ΄λ„ˆλ¦¬ μ½”λ“œκ°€ μ˜¬λΌκ°€κ²Œ λ˜λŠ”λ° 이 μˆœκ°„λΆ€ν„° ν”„λ‘œμ„ΈμŠ€λΌ 뢈뀼게 λ©λ‹ˆλ‹€.

Process 의 ꡬ성 μš”μ†Œ

PID

ν”„λ‘œμ„ΈμŠ€ μ‹λ³„λ²ˆν˜Έ, Process IDentification

ν”„λ‘œμ„ΈμŠ€ μƒνƒœ

State
Description

New

막 μƒμ„±λœ μƒνƒœ

Ready

CPU 에 μ‹€ν–‰λ˜κΈ° μœ„ν•΄ λŒ€κΈ°ν•˜λŠ” μƒνƒœ

Running

ν¬ν•¨λœ λͺ…λ Ήμ–΄κ°€ μ‹€ν–‰λ˜κ³  μžˆλŠ” μƒνƒœ

Waiting

νŠΉμ • μžμ›μ΄λ‚˜ 이벀트λ₯Ό κΈ°λ‹€λ¦¬λŠ” μƒνƒœ

Suspended Waiting

λŒ€κΈ° μƒνƒœμ—μ„œ κΈ°μ–΅ μž₯치λ₯Ό μžƒμ€ μƒνƒœ

Suspended Ready

κΈ°μ–΅μž₯치λ₯Ό μ œμ™Έν•œ λ‹€λ₯Έ λͺ¨λ“  ν•„μš”ν•œ μžμ›λ“€μ„ λ³΄μœ ν•œ μƒνƒœ

Terminated

싀행을 μ™„λ£Œν•œ μƒνƒœ

ν”„λ‘œκ·Έλž¨ μΉ΄μš΄ν„°

CPU κ°€ λ‹€μŒμœΌλ‘œ μ‹€ν–‰ν•  λͺ…λ Ήμ–΄ λ©”λͺ¨λ¦¬ μ£Όμ†Œλ₯Ό κ°€λ¦¬ν‚€λŠ” κ°’

μŠ€μΌ€μ€„λ§ μš°μ„  μˆœμœ„

Algorithm
Description

FCFS (First Come , First Serve)

λ¨Όμ € λ„μ°©ν•œ ν”„λ‘œμ„ΈμŠ€λ₯Ό λ¨Όμ € 처리

SJF (Shorted Job First)

μ΅œλ‹¨μž‘μ—…μš°μ„  (CPU λ²„μŠ€νŠΈ νƒ€μž„μ΄ 짦은)

Priority Scheduling

미리 μ£Όμ–΄μ§„ μš°μ„  μˆœμœ„μ— λ”°λΌμ„œ μŠ€μΌ€μ€„λ§

Round Robin

μ •ν•΄μ§„ μ‹œκ°„λ™μ•ˆ μž‘μ—… ν›„ μ€€λΉ„μ™„λ£Œ 큐 (μˆœν™˜ 큐)의 κ°€μž₯ λ§ˆμ§€λ§‰μœΌλ‘œ 이동

Multilevel-Queue (닀단계 큐)

μ€€λΉ„μ™„λ£Œ 큐λ₯Ό μ—¬λŸ¬κ°œμ˜ 큐둜 λΆ„λ₯˜ν•˜μ—¬ 각 큐가 각각 λ‹€λ₯Έ μŠ€μΌ€μ₯΄λ§ μ•Œκ³ λ¦¬μ¦˜μ„ κ°€μ§€λŠ” 방식 각 큐끼리의 μš°μ„  μˆœμœ„ 섀정도 ν•„μš”

Multilevel-Feedback-Queue (닀단계-ν”Όλ“œλ°± 큐)

닀단계 νμ—μ„œ 큐 μ‚¬μ΄μ˜ 이동을 ν—ˆμš©

κΆŒν•œ

ν”„λ‘œμ„ΈμŠ€κ°€ μ ‘κ·Όν•  수 μžˆλŠ” μžμ›μ„ κ²°μ •ν•˜λŠ” 정보

ν”„λ‘œμ„ΈμŠ€μ˜ λΆ€λͺ¨μ™€ μžμ‹ ν”„λ‘œμ„ΈμŠ€ 정보

ν”„λ‘œμ„ΈμŠ€μ˜ 데이터와 λͺ…λ Ήμ–΄κ°€ μžˆλŠ” λ©”λͺ¨λ¦¬ μœ„μΉ˜λ₯Ό κ°€λ¦¬ν‚€λŠ” 포인터

ν”„λ‘œμ„ΈμŠ€μ— ν• λ‹Ήλœ μžμ›λ“€μ„ κ°€λ¦¬ν‚€λŠ” 포인터

μ‹€ν–‰λ¬Έλ§₯

μ»¨ν…μŠ€νŠΈ μŠ€μœ„μΉ­μ„ μœ„ν•΄ λ§ˆμ§€λ§‰μœΌλ‘œ μ‹€ν–‰ν•œ ν”„λ‘œμ„Έμ„œμ˜ λ ˆμ§€μŠ€ν„° λ‚΄μš©μ„ κΈ°μ–΅ν•©λ‹ˆλ‹€.

Process κ°„ 정보 곡유

ν”„λ‘œμ„ΈμŠ€λΌλ¦¬λŠ” κ³΅μœ ν•˜λŠ” λ©”λͺ¨λ¦¬ 곡간이 없기에 λ³„λ„μ˜ 방법을 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

  • IPC(Inter-Process Communication), LPC(Local inter-Process Communication)

  • λ³„λ„λ‘œ 곡유 λ©”λͺ¨λ¦¬λ₯Ό μ„€μ •ν•©λ‹ˆλ‹€.

Last updated

Was this helpful?