๐ ์ปดํจํฐ ์์คํ ์ ์์๋ค์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ฉฐ, ์ฌ์ฉ์๊ฐ ํธ๋ฆฌํ๊ณ ํจ๊ณผ์ ์ผ๋ก ์ปดํจํฐ๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํ๊ฒฝ์ ์ ๊ณตํ๋ ์์คํ ์ํํธ์จ์ด
๐ ์ด์์ฒด์ ๋ก๋ถํฐ ์์คํ
์์(์ฃผ์ ๊ณต๊ฐ, ํ์ผ, ๋ฉ๋ชจ๋ฆฌ ๋ฑ)์ ํ ๋น๋ฐ๋ ์์
์ ๋จ์
๐ ๊ฐ๊ฐ์ ๋
๋ฆฝ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ์์ญ(Code, Data, Heap, Stack)์ ํ ๋น๋ฐ์
๐ ๋
๋ฆฝ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ํ ๋น๋ฐ๊ธฐ์ ์์ ์ฑ์ด ๋๋ค๋ ์ฅ์ ์ด ์์
๐ ์์
๋์ด ๋ง์์๋ก ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ๋ค๋ ๋จ์ ์ด ์์
๐ ํ ํ๋ก์ธ์ค๋ ๋ค๋ฅธ ํ๋ก์ธ์ค์ ๋ณ์๋ ์๋ฃ๊ตฌ์กฐ์ ์ ๊ทผํ ์ X
ใใ๐ ์ ๊ทผํ๊ธฐ ์ํด์ ํ๋ก์ธ์ค ๊ฐ ํต์ (IPC) ์ฌ์ฉ
๐ ํ๋ก์ธ์ค๋ ์ต์ ํ ๊ฐ์ Thread๋ฅผ ๊ฐ์ง๊ณ ์์
๐ ํน์ ํ๋ก์ธ์ค์ ๋ํ ์ค์ํ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์๋ ์ด์์ฒด์ ์ ์๋ฃ๊ตฌ์กฐ
ใใ๐ ์ ์ฅ ์ด์ : ํ๋ก์ธ์ค๋ฅผ ์ ์ดํ๊ธฐ ์ํจ
ใใ๐ ์ด์์ฒด์ ๋ ํ๋ก์ธ์ค๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ํ๋ก์ธ์ค ์์ฑ๊ณผ ๋์์ ๊ณ ์ ํ PCB๋ฅผ ์์ฑ
ใใ๐ ํ๋ก์ธ์ค ์๋ณ์, ํ๋ก์ธ์ค ์ํ, CPU ๋ ์ง์คํฐ, CPU ์ค์ผ์ฅด๋ง ์ ๋ณด, ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ ๋ณด ๋ฑ
๐ ์๋ก ๋ค๋ฅธ ๋ ๊ฐ์ ํ๋ก์ธ์ค๊ฐ ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ฒ
ใใ๐ Message Passing : ์ปค๋์ด memory protection์ ์ํด ๋๋ฆฌ ์ ๋ฌํด์ฃผ๋ ๊ฒ, ์ฑ๋ฅ์ด ๋จ์ด์ง์ง๋ง ๋๊ธฐํ ๋ฌธ์ ๋ฐ์ X
ใใ๐ Shared Memory : ๋ ํ๋ก์ธ์ค๊ฐ์ ๊ณต์ ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์์ฑ ํ ์ด์ฉํ๋ ๊ฒ, ์ฑ๋ฅ์ด ์ข์ง๋ง ๋๊ธฐํ ๋ฌธ์ ๊ฐ ๋ฐ์
๐ ํ ํ๋ก์ธ์ค ๋ด์์ ์คํ๋๋ ์ฌ๋ฌ ์์
ํ๋ฆ์ ๋จ์
๐ ํ๋ก์ธ์ค ๊ฐ ํต์ ๋น์ฉ๋ณด๋ค ์ค๋ ๋ ๊ฐ ํต์ ๋น์ฉ์ด ์ ๋ค๋ ์ฅ์ ์ด ์์
๐ ์ค๋ฅ๋ก ์ธํ์ฌ ํ๋์ ์ค๋ ๋๊ฐ ์ข
๋ฃ ์ ์ ์ฒด ์ค๋ ๋๊ฐ ์ข
๋ฃ๋ ์ ์๋ค๋ ๋จ์ ์ด ์์
๐ ํ๋ก์ธ์ค ๋ด์์ ์คํ๊ณผ ๋ ์ง์คํฐ๋ ๋ฐ๋ก ํ ๋น
๐ ํ๋ก์ธ์ค ๋ด์์ ๋ค๋ฅธ ์ค๋ ๋์ ์ฝ๋, ๋ฐ์ดํฐ, ํ, ์ด๋ฆฐ ํ์ผ์ด๋ ์ ํธ์ ๊ฐ์ ์ด์์ฒด์ ์์์ ๊ณต์
ใใ๐ ์คํ์ ๋
๋ฆฝ์ ์ธ ์คํ ํ๋ฆ์ ์ถ๊ฐํ๊ธฐ ์ํ ์ต์ ์กฐ๊ฑด
ใใโ ๋ฟ๋ง ์๋๋ผ, ์ด๋ฅผ ๊ณต์ ํ ๊ฒฝ์ฐ LIFO ๊ตฌ์กฐ์ ์ํด ์คํ ์์๊ฐ ๋งค์ฐ ๋ณต์ก
ใใ๐ ๋ ์ง์คํฐ๋ ๊ฐ๊ฐ ๋ช
๋ น์ด์ ์ด๋๊น์ง ์คํํ๋์ง๋ฅผ ๋ํ๋ด๊ธฐ ์ํด
๐ ์ผ์ ๋์ Thread๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด pool์ ์ ์ฅํ๋ ๊ธฐ๋ฒ
๐ ํ๋ก๊ทธ๋จ ์์ฒญ์ Thread๋ฅผ ํ ๋นํด์ฃผ๊ณ , ์๋ฌด ์๋ฃ์ ๋ค์ ๋ฐํํ์ฌ pool์ ์ ์ฅ
๐ ๋ถํ์ํ๊ฒ Thread๋ฅผ ์์ฑํ๊ณ ์ญ์ ํ๋ ์ผ์ด ์ฌ๋ผ์ ธ์ ์ด์ ๊ด๋ จ๋ ๋น์ฉ์ ์ค์ฌ ์ฑ๋ฅ ํฅ์์ ๋์์ด ๋จ
๐ But, ๋ง๋ค๊ณ ์ฌ์ฉํ์ง ์์๋ ๊ณ์ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋น์ ํด๋์ผ๋ฏ๋ก Memory leak ๋ฐ์ํ ์ ์์
๐ ์ฌ๋ฌ ์์
์ ํ๋ฆ์ ๋์์ ์ํํ๋ ๊ฒ์ ๊ณตํต์
๐ ํ๋ก๊ทธ๋จ์ ์ฌ๋ฌ ๊ฐ ํค๋ ๊ฒ ๋ณด๋ค ํ๋์ ํ๋ก๊ทธ๋จ ์์์ ์ฌ๋ฌ ์์
์ ํด๊ฒฐํ๊ธฐ ์ํด์
๐ ํ๋ก์ธ์ค ๊ฐ ํต์ ๋ณด๋ค ์ค๋ ๋ ๊ฐ ํต์ ๋น์ฉ์ด ์ ๊ธฐ ๋๋ฌธ์ ๋ฉํฐ ํ๋ก์ธ์ค ๋์ ๋ฉํฐ ์ค๋ ๋๋ฅผ ์ฌ์ฉ
๐ ๋ํ, ํ๋ก์ธ์ค๋ฅผ ์์ฑํ์ฌ ์์คํ
์์์ ํ ๋นํ๋ ์์คํ
์ฝ์ด ์ค์ด๋ค์ด ์์์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์๊ธฐ ๋๋ฌธ
โ ๏ธ But, ์ ์ญ๋ณ์๋ฅผ ํจ๊ป ์ฌ์ฉํ์ฌ ์ถฉ๋ํ๋ ๋๊ธฐํ ๋ฌธ์ ์ ์ค๋ฅ๋ก ์ธํ์ฌ ํ๋์ ์ค๋ ๋๊ฐ ์ข
๋ฃ ์ ์ ์ฒด ์ค๋ ๋๊ฐ ์ข
๋ฃ๋ ์ ์๋ค๋ ์ ์ ์ฃผ์
๐ CPU๊ฐ ๋ค๋ฃจ๋ ํด๋น Task(Process or Thread)์ ๋ํ ์ ๋ณด
๐ ๋๋ถ๋ถ์ ์ ๋ณด๋ Register์ ์ ์ฅ๋๋ฉฐ PCB๋ก ๊ด๋ฆฌ
๐ ํ๋์ Task๊ฐ CPU๋ฅผ ์ฌ์ฉ ์ค์ธ ์ํ์์ ๋ค๋ฅธ Task๊ฐ CPU๋ฅผ ์ฌ์ฉํ๋๋ก ํ๊ธฐ ์ํด, ์ด์ ์ Task์ Context๋ฅผ ์ ์ฅํ๊ณ ์๋ก์ด Task์ Context๋ฅผ ์ ์ฌํ๋ ์์
๐ Process์ Thread๋ฅผ ์ฒ๋ฆฌํ๋ Context Switching์ ์กฐ๊ธ ๋ค๋ฆ
ใใ๐ Process๋ OS์ ์ํด ์ค์ผ์ฅด๋ง ๋๋ PCB๋ฅผ ํตํด ๊ด๋ฆฌ
ใใ๐ Thread๋ Process๋ด์ TCB(Thread Control Block)๋ผ๋ ๋ด๋ถ ๊ตฌ์กฐ๋ฅผ ํตํด ๊ด๋ฆฌ
๐ CPU์ ๊ณ์ ํ๋ก์ธ์ค๋ฅผ ์ํ์ํค๊ธฐ ์ํด ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์คํ์ํค๊ณ Context Switching์ ํ๋ ๊ฒ์ ๊ฑธ๋ฆฌ๋ ์๊ฐ๊ณผ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ฏธ
โ CPU๊ฐ ๋์ง ์๋๋ก ๋ง๋ค๊ณ , ์ฌ์ฉ์์๊ฒ ๋น ๋ฅด๊ฒ ์ผ์ฒ๋ฆฌ๋ฅผ ์ ๊ณตํด์ฃผ๊ธฐ ์ํ ๋ชฉ์
๐ ๋ฉํฐ ์ค๋ ๋ ํ๊ฒฝ์์ ์ฌ๋ฌ ์ค๋ ๋๊ฐ ๋์์ ํ๋์ ๊ณต์ ์์์ ์ ๊ทผํด๋ ๋ฌธ์ ์์ด ์๋ํ ๋๋ก ๋์ํ๋ ๊ฒ
๐ how?
ใใ๐ ๊ณต์ ์์์ ์ ๊ทผํ๋ ์๊ณ ์์ญ์ ๋๊ธฐํ ๊ธฐ๋ฒ์ผ๋ก ์ ์ดํด์ผ ํจ
ใใ๐ ๋ฎคํ
์ค, ์ธ๋งํฌ์ด, ๋ชจ๋ํฐ
๐ ์๊ณ ๊ตฌ์ญ : ๋ ์ด์์ ์ค๋ ๋๊ฐ ๋์์ ์ ๊ทผํด์๋ ์ ๋๋ ๊ณต์ ์์์ ์ ๊ทผํ๋ ์ฝ๋์ ์ผ๋ถ ์์ญ์ ์๋ฏธ
๐ Race Condition(๊ฒฝ์ ์ํ) : ๋ ๊ฐ ์ด์์ ์ค๋ ๋๋ค์ด ๊ณต์ ๋ ์์์ ์ ๊ทผํ๋ ค๊ณ ํ ๋ ๋๊ธฐํ ๋ฉ์ปค๋์ฆ ์์ด ์ ๊ทผํ๋ ค๊ณ ํ๋ ์ํฉ
๐ ๋๊ธฐํ ๊ธฐ๋ฒ : ์ฌ๋ฌ ํ๋ก์ธ์ค๋ ์ค๋ ๋๊ฐ ๋์์ ํ๋์ ๊ณต์ ์์์ ์ ๊ทผํ๋ ๊ฒ์ ์ ์ดํ๊ธฐ ์ํ ๊ธฐ๋ฒ
๐ ๋ฎคํ
์ค
ใใ๐ ์ค์ง ํ ๊ฐ์ ํ๋ก์ธ์ค or ์ค๋ ๋๋ง ์ ๊ทผํ ์ ์๋ ๊ธฐ๋ฒ
ใใ๐ ๋๊ธฐํ ๋์์ด ์ค์ง ํ๋์ผ ๋ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ธฐ๋ฒ
ใใ๐ ๋ฝ์ ํ๋ํ ํ๋ก์ธ์ค or ์ค๋ ๋๋ง ๊ทธ ๋ฝ์ ํด์ ํ ์ ์์
๐ ์ธ๋งํฌ์ด
ใใ๐ ์ธ๋งํฌ์ด ๋ณ์๋ฅผ ์ค์ ํ์ฌ ํด๋น ๋ณ์๊ฐ ๋งํผ ํ๋ก์ธ์ค or ์ค๋ ๋๊ฐ ์ ๊ทผํ ์ ์๋ ๊ธฐ๋ฒ
ใใใใ๐ wait() : ํ๋ก์ธ์ค or ์ค๋ ๋๊ฐ ์์์ ์ฌ์ฉํ ๊ฒฝ์ฐ (๋ณ์-1)
ใใใใ๐ signal() : ํ๋ก์ธ์ค or ์ค๋ ๋๊ฐ ์์์ ๋ฐ๋ฉํ ๊ฒฝ์ฐ (๋ณ์+1)
ใใใใโ ์ด๊ธฐ ๋ณ์ ๊ฐ : ์ฌ์ฉ ๊ฐ๋ฅํ ์์์ ๊ฐ์
ใใ๐ ๋๊ธฐํ ๋์์ด ํ๋ ์ด์์ผ ๋ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ธฐ๋ฒ
ใใ๐ ํ์ฌ ์ํ์ค์ด ์๋ ๋ค๋ฅธ ํ๋ก์ธ์ค or ์ค๋ ๋๊ฐ ์ธ๋งํฌ์ด๋ฅผ ํด์ ํ ์ ์์
๐ ๋ ์ด์์ Task๋ค์ด ์์์ ์ ์ ํ๊ณ ์๋ ์ํ์์ ์๋ก ๋ค๋ฅธ Task๊ฐ ์ ์ ํ๊ณ ์๋ ์์์ ์๊ตฌํ๋ฉฐ ๋ฌดํํ ๋๊ธฐํ๋ ์ํ์ ๋น ์ง ํ์
๐ ๊ต์ฐฉ์ํ 4๊ฐ์ง ์กฐ๊ฑด
ใใ๐ ์ํธ ๋ฐฐ์ : ํ ์์์ ๋ํ ์ ๊ทผ์ ๋จ ํ๋์ Task๋ก ์ ํ
ใใ๐ ์ ์ ๋๊ธฐ : ์์์ ์ ์ ํ๊ณ ์๋ Task๊ฐ ์ ๊ทผ ๊ถํ์ ์๋ณดํ์ง ์์ ์ํ์์ ๋ค๋ฅธ ์์์ ๋ํ ์ ๊ทผ ๊ถํ์ ์๊ตฌ ๊ฐ๋ฅ
ใใ๐ ์ ์ทจ ๋ถ๊ฐ๋ฅ : ํ Task๊ฐ ๋ค๋ฅธ Task์ ์ ๊ทผ ๊ถํ์ ๊ฐ์ ๋ก ์ทจ์ํ ์ ์์
ใใ๐ ์ํ ๋๊ธฐ : ๊ฐ Task๊ฐ ์ํ์ ์ผ๋ก ๋ค์ Task๊ฐ ์๊ตฌํ๋ ์์์ ๊ฐ๊ณ ์์
๐ ๊ต์ฐฉ์ํ ์๋ฐฉ
ใใ๐ 4๊ฐ์ ์กฐ๊ฑด ์ค ํ๋๋ฅผ ์ ๊ฑฐํ๋ฉด ๋จ
ใใ๐ 1๋ฒ ์กฐ๊ฑด์ ์ ๊ฑฐํ๊ธฐ ํ๋ค๋ฉฐ ๋ณดํต 4๋ฒ ์กฐ๊ฑด์ ์ ๊ฑฐํ๊ธฐ ์ํด ์ด์ ์ ๋ง์ถค
ใใ๐ ์์์ ๊ณ ์ ํ ๋ฒํธ๋ฅผ ํ ๋น, ๋ฒํธ ์์๋๋ก ์์์ ์๊ตฌํ๋๋ก ํจ
๐ ๊ต์ฐฉ์ํ ํํผ
ใใ๐ ์ํ์ ์๊ณ ๋ฆฌ์ฆ ์ฌ์ฉ
ใใใใ๐ ์ด์์ฒด์ ๊ฐ ์์ ์ํ๋ฅผ ์ ์งํ ์ ์๋ ์๊ตฌ๋ง์ ์๋ฝํ๊ณ ๋ถ์์ ์ํ๋ฅผ ์ด๋ํ ์๊ตฌ๋ ๋์ค์ ์์ ์ํ๋ฅผ ๋ง์กฑํ ๋๊น์ง ๊ณ์ ๊ฑฐ์ ํ๋ ์๊ณ ๋ฆฌ์ฆ
ใใ๐ ์์ ์ํ : ์์คํ
์ ๊ต์ฐฉ์ํ๋ฅผ ์ผ์ผํค์ง ์์ผ๋ฉด์ ๊ฐ ํ๋ก์ธ์ค๊ฐ ํ์๋ก ํ๋ ์๊ตฌ๋ ๋งํผ ์์์ ํ ๋นํด ์ค ์ ์๋ ์ํ, ์ฆ, ์์ ์์์ด์ด ์กด์ฌํ๋ ์ํ
ใใ๐ ๋ถ์์ ์ํ : ์์ ์์์ด์ด ์กด์ฌํ์ง ์๋ ์ํ
๐ ์ด๋ค ํ๋ก์ธ์ค์๊ฒ ์์์ ํ ๋นํ ์ง ๊ฒฐ์ ํ๋ ์ด์์ฒด์ ์ ์ปค๋ ๋ชจ๋
๐ ์ด๋ค ํ๋ก์ธ์ค์๊ฒ ์์์ ํ ๋นํ ์ง ๊ฒฐ์ ํ๋ ์์
๐ ์์์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ํจ
๐ ์ฅ๊ธฐ ์ค์ผ์ฅด๋ฌ์ ์ํด ์ด๋ค ํ๋ก์ธ์ค๊ฐ ์ค๋น ํ์ ์ฝ์
๋ ์ง๋ฅผ ๊ฒฐ์
๐ ๋จ๊ธฐ ์ค์ผ์ฅด๋ฌ๋ ์ค์ผ์ฅด๋ง ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ๋ผ CPU๋ฅผ ํ ๋นํ ํ๋ก์ธ์ค๋ฅผ ์ ํ
๐ ์ ํ๋ ํ๋ก์ธ์ค๋ running ์ํ๊ฐ ๋๊ณ ์์
์ด ๋๋๋ฉด terminated ์ํ๊ฐ ๋จ
๐ ์ค๊ธฐ ์ค์ผ์ฅด๋ฌ๋ ๋๋ฌด ๋ง์ ํ๋ก์ธ์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ๋์์ ์ฌ๋ผ๊ฐ๋ ๊ฒ์ ์กฐ์
๐ ์ค๋น ํ : ํ์ฌ ๋ฉ๋ชจ๋ฆฌ ๋ด์ ์์ผ๋ฉด์ CPU์ ์ํด ์คํ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ํ๋ก์ธ์ค์ ์งํฉ
๐ ํ๋ก์ธ์ค๊ฐ CPU๋ฅผ ์ ์ ํ๊ณ ์์ด๋ ์ฐ์ ์์๊ฐ ๋์ ํ๋ก์ธ์ค๊ฐ ์ค๋ฉด CPU๋ฅผ ๋นผ์์ ์ ์๋ ๋ฐฉ์
๐ ์ฐ์ ์์๊ฐ ๋์ ํ๋ก์ธ์ค๊ฐ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌ๋๋ค๋ ์ฅ์ ์ด ์์
๐ ์ฆ์ Context Switching์ผ๋ก Overhead๊ฐ ์ฆ๊ฐํ๋ ๋จ์ ์ด ์์
๐ RR, SRT, MLQ
๐ ํ๋ก์ธ์ค๊ฐ CPU๋ฅผ ์ ์ ํ๊ณ ์์ผ๋ฉด ๋ค๋ฅธ ํ๋ก์ธ์ค๊ฐ CPU๋ฅผ ๋นผ์์ง ๋ชปํ๋ ๋ฐฉ์
๐ ์ค๊ฐ์ ๊ฐ๋ก์ฑ์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ ์๋ต ์๊ฐ ์์ธก์ด ์ฉ์ดํ๋ค๋ ์ฅ์ ์ด ์์
๐ ์ค์ํ ์์
์ด ์ค๋ ๊ธฐ๋ค๋ฆด ์ ์๋ค๋ ๋จ์ ์ด ์์
๐ FIFO, SJF, HRN
๐ ๋จผ์ ์จ ํ๋ก์ธ์ค ๋จผ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์
ใใ๐ ์ค์ํ ์์
์ด ์ค๋ ๊ธฐ๋ค๋ฆด ์ ์์
๐ ๋ค๋ฅธ ํ๋ก์ธ์ค๊ฐ ๋จผ์ ๋์ฐฉํ์ด๋ CPU ์๊ตฌ๋์ด ๊ฐ์ฅ ์ ์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํ๋ ๋ฐฉ์
ใใ๐ ์ด๋ ์ต์ ์ด๋ฉฐ, ํจ์จ์ฑ์ ์ถ๊ตฌํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ค์ํ์ง๋ง ํน์ ํ๋ก์ธ์ค๊ฐ ์ง๋์น๊ฒ ์ฐจ๋ณ๋ฐ์ ์ ์์
ใใโ ์ฆ, CPU ์๊ตฌ๋์ด ํฐ ํ๋ก์ธ์ค๋ ๊ฑฐ์ ์์ํ CPU ํ ๋น์ ๋ฐ์ง ๋ชปํ๋ ์ํฉ์ด ๋ฐ์ํ ์ ์์
๐ ํ ๋น๋ ์๊ฐ ์์ ์์
์ด ๋๋์ง ์์ผ๋ฉด ํด๋น ํ๋ก์ธ์ค๋ ์ค๋น ํ์ ๋ค์ด๊ฐ๋ FIFO ๋ฐฉ์
๐ ๊ฐ ํ๋ก์ธ์ค๋ ๊ฐ์ ํฌ๊ธฐ์ CPU ์๊ฐ์ ํ ๋น๋ฐ๊ฒ ๋จ
๐ ์ค์ผ์ฅด๋ง ๋ฐฉ์ ์ค ์๋ถํ ์์คํ
์ ์ํด ์ค๊ณ๋ ์ ์ ํ ์ค์ผ์ฅด๋ง
โ ์๋ถํ ์์คํ
: CPU ์ค์ผ์ฅด๋ง๊ณผ ๋ค์ค ํ๋ก๊ทธ๋๋ฐ์ ์ด์ฉํด์ ๊ฐ ์ฌ์ฉ์๋ค์๊ฒ ์ปดํจํฐ ์์์ ์๊ฐ์ ์ผ๋ก ๋ถํ ํ์ฌ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ๋ํ์ ์์คํ
๐ ๋ณํ ํ๋ก์ธ์ค์์ ํ๋ก์ธ์ค๊ฐ ์คํ๋๊ธฐ ์ํด ๋ฐ๋์ ํ์ํ ์์์ ๋์์์ด ์ฌ์ฉํ์ง ๋ชปํ๋ ์ํ
๐ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ฅผ ์ํด ์ฌ์ฉ๋๋ ๊ธฐ๋ฒ
๐ ํ๋ก์ธ์ค๋ฅผ ๋ถ๋ฌ๋ค์ด๊ธฐ ์ํ ๊ณต๊ฐ์ด ๋ฉ๋ชจ๋ฆฌ์ ๋ถ์กฑํ๋ค๋ฉด ํ์ฌ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋ ํ๋ก์ธ์ค๋ค์ ๋ด๋ณด๋ด๊ณ (swap out), ์ํ๋ ํ๋ก์ธ์ค๋ฅผ ๋ถ๋ฌ๋ค์ด๋ (swap in) ๋ฐฉ์
๐ ์ฃผ ๋ฉ๋ชจ๋ฆฌ โ๏ธ ๋ณด์กฐ ๋ฉ๋ชจ๋ฆฌ
๐ 2๊ฐ์ง์ ์ข
๋ฅ
ใใ๐ ์ธ๋ถ ๋จํธํ : ๋ฉ๋ชจ๋ฆฌ์ ํ๋ก์ธ์ค๊ฐ ํ ๋น๋ ๋งํผ ์ถฉ๋ถํ ๊ณต๊ฐ์ด ์กด์ฌํ์ง๋ง ๊ณต๊ฐ์ด ์ชผ๊ฐ์ ธ ์์ด ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ ์ X
ใใใใ๐ ํด๊ฒฐ ๊ธฐ๋ฒ : ํ์ด์ง ๊ธฐ๋ฒ
ใใ๐ ๋ด๋ถ ๋จํธํ : ํ๋ก์ธ์ค๊ฐ ํ์ํ ์๋ณด๋ค ๋ ํฐ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋น๋์ด ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ญ๋น๋๋ ๊ฒ
ใใใใ๐ ํด๊ฒฐ ๊ธฐ๋ฒ : ์ธ๊ทธ๋ฉํ
์ด์
๊ธฐ๋ฒ
๐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ด์ฉํ์ฌ ํ๋ก์ธ์ค๋ฅผ ์ผ์ ํ ํฌ๊ธฐ์ธ ํ์ด์ง๋ก ์๋ผ์ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํ๋ ๊ธฐ๋ฒ
๐ ํ๋์ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ์ฐ์์ ์ด์ด์ผ ํ๋ค๋ ์ ์ฝ์ ์์ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ์ ์ ํด๊ฒฐํ ์ ์์
๐ But, ๋ณดํต ํ์ด์ง ๋จ์์ ์๋ง๊ฒ ๊ฝ ์ฑ์ ์ฐ๋๊ฒ ์๋๋ฏ๋ก ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๋ ์ฌ์ ํ ์กด์ฌํจ
โ ๋ํ, ๊ทธ๋งํผ Mapping ๊ณผ์ ๋ํ ๋์ด๋๊ธฐ ๋๋ฌธ์ Trade-off๊ฐ ๋ฐ์ํ ์ ์์
๐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ด์ฉํ์ฌ ํ๋ก์ธ์ค๋ฅผ ์๋ก ๋ค๋ฅธ ํฌ๊ธฐ์ ๋
ผ๋ฆฌ์ ์ธ ๋ธ๋ก ๋จ์์ธ ์ธ๊ทธ๋จผํธ๋ก ๋ถํ ํ์ฌ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํ๋ ๊ธฐ๋ฒ
๐ ํ๋์ ์ธ๊ทธ๋จผํธ ๋จ์๋ก ํต์ ๊ฐ ๊ฐ๋ฅํ๋ค๋ ์ฅ์
๐ ์ธ๊ทธ๋จผํธ๋ค์ ๋ํด ํ์ ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ๊ณ , ํ์์์ ๊ฒฝ์ฐ ๋ด๋ฆฌ๋ ์์
์ ๋ฐ๋ณตํ๋ค๋ณด๋ฉด ์ธ๋ถ ๋จํธํ๊ฐ ์๊ธฐ๋ ๋ฌธ์ ์ ์ด ์์
๐ ์ค์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ณด์กฐํ์ฌ ํ๋ก์ธ์ค ์ ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์ค์ง ์๋๋ผ๋ ์คํ์ด ๊ฐ๋ฅํ๋๋ก ํ๋ ๊ธฐ๋ฒ
๐ ๋ฉ๋ชจ๋ฆฌ๋ก ์ค์ ์กด์ฌํ์ง๋ ์์ง๋ง ์ฌ์ฉ์์๊ฒ ์์ด ๋ฉ๋ชจ๋ฆฌ๋ก์จ ์ญํ ์ ํ๋ ๊ฒ
๐ ์ง๊ธ ์คํ์์ผ์ผ ํ Page๊ฐ ์ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์ ์์ง ์์ ์ํฉ
๐ Page Fault๊ฐ ๊ณผ๋ํ๊ฒ ๋ฐ์ํ๋ ์ํฉ
๐ ํ๋ก์ธ์ค๊ฐ ์ํํ๊ฒ ์ํ๋๊ธฐ ์ํด์๋ ์ผ์ ์์ค ์ด์์ ํ์ด์ง ํ๋ ์์ ํ ๋น๋ฐ์์ผ ํ๋๋ฐ, ๋๋ฌด ๋ง์ ํ๋ก์ธ์ค๊ฐ ์ ์ฌ๋์ด ํ๋ก์ธ์ค๊ฐ ํ๋ ์์ ์ถฉ๋ถํ ํ ๋น ๋ฐ์ง ๋ชปํด Page Fault๊ฐ ๋ฐ์
๐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๋ฐฉ๋ฒ
๐ ํ๋ก๊ทธ๋จ ์คํ ์์ ์, ํ๋ก๊ทธ๋จ ์ ์ฒด๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํ๋ ๋์ ์ด๊ธฐ์ ํ์ํ ๋ถ๋ถ๋ค๋ง ์ ์ฌํ๋ ๋ฐฉ๋ฒ
๐ ์บ์ ๋ฉ๋ชจ๋ฆฌ๋ CPU์ ์ฒ๋ฆฌ ์๋์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผ ์๋ ์ฐจ์ด๋ฅผ ์ค์ด๊ธฐ ์ํด ์ฌ์ฉํ๋ ๊ณ ์ Buffer Memory
๐ ์ด๋ฌํ ์ญํ ์ ์ํํ๊ธฐ ์ํด ์บ์๋ CPU๊ฐ ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์ํ ๊ฒ์ธ๊ฐ ์ด๋ ์ ๋ ์์ธกํด์ผ ํจ
๐ ์ ์ค๋ฅ ์ด ๋์์๋ก ์บ์ ์ฑ๋ฅ์ด ์ฌ๋ผ๊ฐ๋ฉฐ, ์ด๋ฅผ ๋์ด๊ธฐ ์ํด 2๊ฐ์ง์ ๋ฐ์ดํฐ ์ง์ญ์ฑ์ ์๋ฆฌ๋ฅผ ์ฌ์ฉ
ใใ๐ ๊ณต๊ฐ ์ง์ญ์ฑ
ใใใใ๐ ํ ๋ฒ ์ฐธ์กฐ๋ ๋ฉ๋ชจ๋ฆฌ ์์ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ ์ฐธ์กฐ๋ ํ๋ฅ ์ด ๋์
ใใ๐ ์๊ฐ ์ง์ญ์ฑ
ใใใใ๐ ์ต๊ทผ์ ์ฐธ์กฐ๋ ๋ฉ๋ชจ๋ฆฌ๋ ๊ณง ๋ค์์ ๋ค์ ์ฐธ์กฐ๋ ํ๋ฅ ์ด ๋์
๐ ์บ์๋ ํ๋ก์ธ์ ๊ฐ๊น์ด์ ์์นํ๋ฉด์ ๋น๋ฒํ๊ฒ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ฅผ ๋๋๋ ์ฅ์
๐ ์บ์๊ฐ ์๋ฌด๋ฆฌ ๊ฐ๊น์ด ์๋๋ผ๋ ์ฐพ๊ณ ์ ํ๋ ๋ฐ์ดํฐ๊ฐ ์ด๋ ๊ณณ์ ์ ์ฅ๋์ด ์๋์ง ๋ชจ๋ฅธ๋ค๋ฉด ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๊ฒ ๋จ
โ ์บ์์ ๋ชฉ์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋์ด ์๋ค๋ฉด ๋ฐ๋ก ์ ๊ทผํ์ฌ ์ถ๋ ฅํ ์ ์์ด์ผ ์บ์๊ฐ ์๋ฏธ ์์
๐ ๋ฐ๋ผ์, ์บ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ ๋ฐ์ดํฐ์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ๋ฑ์ ๊ธฐ๋กํด ๋ ํ๊ทธ๋ฅผ ๋ฌ์ ํน์ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌถ์์ผ๋ก ์ ์ฅํ ๊ฒ
๐ ๊ตฌ์กฐ 3๊ฐ์ง
ใใ๐ Direct MAP
ใใใใ๐ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์กฐ, DRAM์ ์ฌ๋ฌ ์ฃผ์๊ฐ ์บ์ ๋ฉ๋ชจ๋ฆฌ์ ํ ์ฃผ์์ ๋์๋๋ ๋ค๋์ผ ๋ฐฉ์
ใใ๐ Full Associative
ใใใใ๐ ๋น์ด์๋ ์บ์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์์ผ๋ฉด, ๋น์ด์๋ ๊ณณ์ ๋ง์๋๋ก ์ฃผ์๋ฅผ ์ ์ฅํ๋ ๋ฐฉ์
ใใ๐ Set Associative
ใใใใ๐ ํน์ ํ์ ์ง์ ํ๊ณ , ๊ทธ ํ์์ ์ด๋ค ์ด์ด๋ ๋น์ด์๋ ๊ณณ์ ๋ง์๋๋ก ์ฃผ์๋ฅผ ์ ์ฅํ๋ ๋ฐฉ์
๐ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ํน์ ํ์ด์ง๋ฅผ ๋ด๋ณด๋ด๊ณ (page out), ๊ทธ ์๋ฆฌ์ ํ์ํ ๋ค๋ฅธ ํ์ด์ง๋ฅผ ์ฌ๋ฆฌ๋ ๊ฒ (page in)
๐ ํ๋ก๊ทธ๋จ ์คํ์ด ๊ณ์๋๋ฉด ์๊ตฌ ํ์ด์ง๊ฐ ๋์ด๋๊ฒ ๋๊ณ ์ธ์ ๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๊ฐ๋ ์ฐจ๊ธฐ ๋๋ฌธ
๐ FIFO
ใใ๐ ๋จผ์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ๋ค์ด์จ ํ์ด์ง ์์๋๋ก ํ์ด์ง ๊ต์ฒด ์์ ์ ๋จผ์ ๊ต์ฒด
๐ OPT
ใใ๐ ๊ฐ์ฅ ์ค๋ซ๋์ ์ฌ์ฉ๋์ง ์์ ํ์ด์ง๋ฅผ ์ฐพ์ ๊ต์ฒด
๐ LRU
ใใ๐ ๊ฐ์ฅ ์ค๋ซ๋์ ์ฌ์ฉ๋์ง ์์ ํ์ด์ง๋ฅผ ์ ํํ์ฌ ๊ต์ฒด
๐ ํ๋์จ์ด์ ์์ฉ ํ๋ก๊ทธ๋จ ์ฌ์ด์์ ์ธํฐํ์ด์ค ์ญํ ์ ํ์ฌ ์์ฉ ํ๋ก๊ทธ๋จ์ด ํ๋์จ์ด์์๋ถํฐ ์ค๋ ์์์ ๊ด๋ฆฌํ๋ฉฐ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ํ๋ก๊ทธ๋จ
๐ ์ธํฐํ์ด์ค : ์๋ก ๋ค๋ฅธ ๋ ์์คํ
์ด ์ํธ์์ฉํ ์ ์๋๋ก ํ๋ ๋งค๊ฐ์ฒด
๐ CPU๊ฐ ํ๋ก๊ทธ๋จ์ ์คํํ๊ณ ์์ ๋, ์
/์ถ๋ ฅ ํ๋์จ์ด ๋ฑ์ ์ฅ์น์ ์์ธ ์ํฉ์ด ๋ฐ์ํ์ฌ ์ฒ๋ฆฌ๊ฐ ํ์ํ ๊ฒฝ์ฐ CPU์๊ฒ ์๋ ค ์ฒ๋ฆฌํ๋๋ก ํ๋ ๊ฒ
๐ CPU์ I/O์ ์๋ ์ฐจ์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ํ์
ใใ๐ I/O ์ฐ์ฐ์ด CPU ๋ช
๋ น ์ํ ์๋๋ณด๋ค ํ์ ํ ๋๋ฆฌ๊ธฐ ๋๋ฌธ
๐ ๋์ ๊ณผ์
ใใ๐ 1. CPU๊ฐ ํ๋ก๊ทธ๋จ์ ์คํ
ใใ๐ 2. Interrupt ์์ฒญ
ใใ๐ 3. CPU๋ ํ๋ก๊ทธ๋จ์ ์ค๋จํ๊ณ ๋ค์ ์คํํ ๋ช
๋ น์ด์ ํ์ฌ ์ํ๋ฅผ PCB์ ์ ์ฅ
ใใ๐ 4. Interrupt Service Routinue์ ์คํ
ใใ๐ 5. Interrupt ์ข
๋ฃ ํ ๊ธฐ์กด ์ํ ๋ณต๊ตฌ
ใใ๐ 6. ํ๋ก๊ทธ๋จ์ ๊ณ์ ์คํ
๐ 1. ์ธ๋ถ ์ธํฐ๋ฝํธ (1st)
ใใ๐ ํ๋์จ์ด๊ฐ ๋ฐ์์ํค๋ ์ธํฐ๋ฝํธ
ใใ๐ CPU ์๋ ๋ค๋ฅธ ํ๋์จ์ด ์ฅ์น๊ฐ CPU์ ์์ฒญ
๐ 2. ๋ด๋ถ ์ธํฐ๋ฝํธ (2nd)
ใใ๐ CPU ๋ด๋ถ์์ ๋ฐ์ํ๋ ์ธํฐ๋ฝํธ
ใใ๐ Divide by Zero
๐ 3. ์ํํธ์จ์ด ์ธํฐ๋ฝํธ (3rd)
ใใ๐ ์ํํธ์จ์ด๊ฐ ๋ฐ์์ํค๋ ์ธํฐ๋ฝํธ
ใใ๐ syscall
๐ ์์ฉ ํ๋ก๊ทธ๋จ์ ์์ฒญ์ ๋ฐ๋ผ ์ปค๋์ ์ ๊ทผํ๊ธฐ ์ํ ์ธํฐํ์ด์ค
๐ fork(), exec(), malloc() ๋ฑ
๐ ์ธํฐํ์ด์ค : ๋์์ ๋์์ ์ฃผ๋ ์์คํ
๐ ํ ํ๋ก์ธ์ค๊ฐ ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์คํ์ํค๊ธฐ ์ํด ์ฌ์ฉ
๐ fork()
ใใ๐ PID๊ฐ ๋ค๋ฅธ ์์ ํ ์๋ก์ด ํ๋ก์ธ์ค๊ฐ ์๊น
ใใ๐ ์๋ก์ด ํ๋ก์ธ์ค๋ฅผ ์ํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋น
๐ exec()
ใใ๐ PID๊ฐ ์๋ก์ด ํ๋ก์ธ์ค์๊ฒ ๋๊ฒจ์ง๋ฉฐ ๋ฎ์ด ์ฐ์ฌ์ง๋ ๊ฐ๋
ใใ๐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ์ง ์๊ณ , ์๋ก์ด ํ๋ก์ธ์ค๋ง ๋ฉ๋ชจ๋ฆฌ์ ๋จ์
๐ ์บ์
ใใ๐ CPU์ ๋ณ๋๋ก ์๋ ๊ณต๊ฐ, ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ CPU ๊ฐ์ ์๋ ์ฐจ์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํ ๊ฒ
๐ ๋ ์ง์คํฐ
ใใ๐ ๋ ์ง์คํฐ๋ CPU ์์์ ์ฐ์ฐ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ์ผ์์ ์ผ๋ก ์ ์ฅํ๋ ๊ณต๊ฐ
๐ ์ผ์ ๋์ ๋ฉ๋ชจ๋ฆฌ ๋ธ๋ญ์ ๋ฏธ๋ฆฌ ๋ง๋ค์ด pool์ ์ ์ฅํ๋ ๊ธฐ๋ฒ
๐ ํ๋ก๊ทธ๋จ ์์ฒญ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํด์ฃผ๊ณ , ์๋ฌด ์๋ฃ์ ๋ค์ ๋ฐํํ์ฌ pool์ ์ ์ฅ
๐ ๋ถํ์ํ๊ฒ Memory๋ฅผ ํ ๋นํ๊ณ ํด์ ํ๋ ์ผ์ด ์ฌ๋ผ์ ธ์ ์ด์ ๊ด๋ จ๋ ๋น์ฉ์ ์ค์ฌ ์ฑ๋ฅ ํฅ์์ ๋์์ด ๋จ
๐ But, ๋ง๋ค๊ณ ์ฌ์ฉํ์ง ์์๋ ๊ณ์ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋น์ ํด๋์ผ๋ฏ๋ก Memory leak ๋ฐ์ํ ์ ์์
๐ ๋๊ธฐํ ํ๊ธฐ ์ํด ์ค์ง reader-writer ๋ฝ๋ง์ ์ฌ์ฉํ๋ ๋ค์ค์ค๋ ๋ ์์ฉ์ ๊ฐ์ ํ์. ๊ต์ฐฉ์ํ๊ฐ ๋ฐ์ํ๊ธฐ ์ํ 4๊ฐ์ง ์กฐ๊ฑด์ ์ ์ฉํ ๋, ๋ค์ค reader-writer ๋ฝ์ด ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ์๋ ์ฌ์ ํ ๊ต์ฐฉ์ํ๊ฐ ๋ฐ์ํ ์ ์๋๊ฐ?
ใใ๐ ๋ค์ค reader-writer ๋ฝ์ ํ๋์ ๋ฝ์ด ์ ์ ๋๋ฉด ๋ค๋ฅธ reader ๋๋ writer๋ ๋ฝ์ ์ ์ ํ๊ฑฐ๋ ์ ๊ทผํ ์ ์๊ธฐ ๋๋ฌธ์ ์ํธ ๋ฐฐ์ ์ ๋น์ ์ ์ ์ํฉ์ด ๋จ
ใใ๐ ๋ํ, reader ๋๋ writer๋ ๋ฝ์ ์ ์ ํ๋ฉด ๋ฒํผ์ ์ฝ์ ๋ด์ฉ์ด๋ ์ธ ๊ณต๊ฐ์ด ์์ ๋๊น์ง ๋๊ธฐํ๊ธฐ ๋๋ฌธ์ ๋ฝ์ ์ ์ ํ๋ฉฐ ๋๊ธฐํจ
ใใ๐ But, ๋ค์ค reader-writer ๋ฝ์ ๊ฒฝ์ฐ์๋ ์ํ ๋๊ธฐ ์กฐ๊ฑด์ ๋ง์กฑํ์ง ์๊ธฐ ๋๋ฌธ์ ๊ต์ฐฉ์ํ๊ฐ ๋ฐ์ํ์ง ์์
๐ ๋ฐ๋ณตํด์ ๋ฃจํ๋ฅผ ๋๋ฉฐ ํน์ ์๊ทธ๋์ด ๋ค์ด์๋์ง ํ์ธํ๋ ๊ฒ
๐ ์์คํ
์ ์ค์ํ ์ํฅ์ ๋ฏธ์น๋ ์ฐ์ฐ์ ์ปค๋ ๋ชจ๋์์๋ง ์คํ ๊ฐ๋ฅํ๋๋ก ํ์ฌ ํ๋์จ์ด ๋ณด์์ ์ ์งํ๊ธฐ ์ํจ
๐ ์ปค๋๋ชจ๋ : OS๊ฐ ํธ์ถ๋์ด ์ํ๋๋ ๋ชจ๋
๐ ์ ์ ๋ชจ๋ : ์ดํ๋ฆฌ์ผ์ด์
ํ๋ก๊ทธ๋จ์ด ์ํ๋๋ ๋ชจ๋
๐ ์ปค๋ ์์ค ์ค๋ ๋
ใใ๐ ์ปค๋์ด ์ง์ ์ค๋ ๋๋ฅผ ์ ๊ณตํด์ฃผ๊ธฐ ๋๋ฌธ์ ์์ ์ฑ๊ณผ ๋ค์ํ ๊ธฐ๋ฅ์ด ์ ๊ณต๋จ
ใใ๐ ์ปค๋์ด ๊ฐ ์ค๋ ๋๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์
ใใ๐ But, ์ ์ /์ปค๋ ๊ฐ ์ ํ์ด ๋น๋ฒํ๊ฒ ์ด๋ค์ง๋ฏ๋ก ์ฑ๋ฅ์ด ์ ํ๋จ
๐ ์ฌ์ฉ์ ์์ค ์ค๋ ๋
ใใ๐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ด์์ฑ์ด ๋๊ณ ์ ์ฐํ ์ค์ผ์ฅด๋ง ๊ฐ๋ฅ
ใใ๐ ์ ์ /์ปค๋ ๋ชจ๋ ๊ฐ ์ ํ์ด ์ผ์ด๋์ง ์๊ธฐ ๋๋ฌธ์ Overhead๊ฐ ์ ์
ใใ๐ But, ํ๋์ ์ค๋ ๋๊ฐ ๋ธ๋ก๋๋ค๋ฉด ์ ์ฒด ์ค๋ ๋๊ฐ ๋ธ๋ก๋จ
๐ Overhead : ์ด๋ค ์ฒ๋ฆฌ๋ฅผ ํ๊ธฐ ์ํด ๋ค์ด๊ฐ๋ ๊ฐ์ ์ ์ธ ์ฒ๋ฆฌ ์๊ฐ ๋ฐ ๋ฉ๋ชจ๋ฆฌ