OS(9)
-
ํ์ด์ง ๊ต์ฒด ์ ์ฑ
์ด์์ฒด์ ๊ฐ ๊ด๋ฆฌํ๋ ํน์ ํ๋ก์ธ์ค์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ ํ์ฌ ์ฌ์ฉํ๋ ๋งํผ๋ง ์ค์ ํ์ด์ง๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ์ด ๋ ์ฌ์ฉ๋๋ ํ์ด์ง๋ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์กด์ฌํ ์๋ ์์ง๋ง ํ๋๋์คํฌ์ ์กด์ฌํ ์๋ ์๋ค. ๋ง์ฝ ํ๋ก์ธ์ค๊ฐ ํน์ ํ์ด์ง๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ์ด๋ฅผ ์ฐธ์กฐํ ๋ ํด๋น ํ์ด์ง๊ฐ ํ๋๋์คํฌ์ ์์นํ๋ ๊ฒฝ์ฐ๋ฅผ ํ์ด์ง ํดํธ๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ด๋ฐ ๊ฒฝ์ฐ ํด๋น ํ์ด์ง๋ฅผ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ก ์ฎ๊ฒจ ์ค๋ ๊ณผ์ ์ด ํ์ํ๋ค. ๊ทธ๋ฐ๋ฐ ๋ง์ฝ ์ด๋ฏธ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ง์ด ์ฌ์ฉํ๊ณ ์์ด ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ๋ด ํ์ด์ง๋ฅผ ์ฎ๊ฒจ์ฌ ๋ง๋ ํ ๊ณต๊ฐ์ด ์๋ค๋ฉด? ํ์ด์ง ํดํธ๊ฐ ๋ฐ์ํ ํ์ด์ง๋ฅผ ๊ฐ์ ธ์ค์ง ๋ชปํ ๊ฒ์ด๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ๋ฅผ ์ํด ๊ธฐ์กด์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์กด์ฌํ๋ ํ์ด์ง๋ฅผ ํ๋๋์คํฌ์ ๋ณด๋ด๋ ๊ณผ์ ์ด ์ถ๊ฐ์ ์ผ๋ก ํ์ํด์ง๋ค. ์ด๋ฅผ ํ์ด์ง ๊ต์ฒด๋ผ๊ณ ํ๋ค. ์ด ๋ ์ด๋ค ํ์ด์ง๋ฅผ ..
2023.04.04 -
์ธ๊ทธ๋ฉํ ์ด์ & ํ์ด์ง ๊ธฐ๋ฒ
์ด์์ฒด์ ๋ ํ๋ก์ธ์ค๊ฐ ๋ณต์กํ ๋ฉ๋ชจ๋ฆฌ์ ๊ตฌ์กฐ๋ฅผ ๋ชฐ๋ผ๋ ์ฌ์ฉํ ์ ์๊ณ , ๋ ํน์ ํ๋ก์ธ์ค๊ฐ ๋ค๋ฅธ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ๋ ๊ฒ์ ๋ง๊ธฐ ์ํด์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ผ๋ ๊ฐ๋ ์ ์ ๊ณตํ๋ค. ์ด๋ฅผ ํตํด ํ๋ก์ธ์ค๋ ์ค์ค๋ก์ ์ฃผ์ ๊ณต๊ฐ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์์น์ํค๋ ๋ฐฉ์์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ์ด์ ์ด์์ฒด์ ๊ฐ ํด์ผํ๋ ์ผ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ค์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋งคํํ๋ ์ผ์ธ๋ฐ, ์ฌ๊ธฐ์ ์ด๋ฅผ ์ด๋ค ๋ฐฉ์์ผ๋ก ์ํํ๋๋์ ๋ฐ๋ผ ๋ฐ์ํ ์ ์๋ ์๋ง์ ๋ฌธ์ ๋ค์ด ์กด์ฌํ๋ค. ๋ง์ฝ ๊ฐ ํ๋ก์ธ์ค์ ์ฃผ์ ๊ณต๊ฐ์ ๋ฐฐ์น ๊ทธ๋๋ก ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ฎ๊ธด๋ค๋ฉด ๋จํธํ๋ผ๊ณ ๋ถ๋ฆฌ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฃผ์ ๊ณต๊ฐ์์ ํ๊ณผ ์คํ์ ์๋ก๋ฅผ ํฅํด ํ์ฅ๋๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ๋๋ฐ, ์ด๋ ํ๊ณผ ์คํ ์ฌ์ด์ ๋น๊ณต๊ฐ์ด ์กด์ฌํ๋ค๋ ๊ฒ์ด๋ค. ์ด ๊ตฌ์กฐ๋ฅผ ๊ทธ๋๋ก ๋ฌผ๋ฆฌ ๋ฉ..
2023.04.04 -
Mutex & Semaphore
๊ณต์ ์์ ์ ๊ทผ์ ๋ํด ๋์์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ฒ์ ๊ฐ๋ฐ์์ ์ ์ฅ์์ ์ค์ํ ํ๋์ด๋ค. ๊ฐ๋ น, ๋ฉํฐ ์ค๋ ๋ ํ๊ฒฝ์์ ์คํ์ ์ ์ธํ ๋ค๋ฅธ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ๋ ์ํฉ์ด๋ ๋ค์ค ํ๋ก์ธ์ค ํ๊ฒฝ์์ IPC๋ฅผ ์ํด ๊ณต์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ์ํฉ ๋ฑ์ด ์กด์ฌํ ์ ์๋ค. ์ด ๋ ํ์ฉํ ์ ์๋ ์คํฌ์ด ๋ฐ๋ก Mutex์ Semaphore์ด๋ค. Mutex ๋ฎคํ ์ค๋ Mutual Exclusion์ ์ค์๋ง๋ก ์ํธ ๋ฐฐ์ ๋ผ๋ ๋ป์ ๊ฐ๋๋ค. ๋ฎคํ ์ค๋ ํน์ ๊ณต์ ์์์ ๋ํด ๋จ ํ๋์ ์ฃผ์ฒด๋ง์ด ์ ๊ทผํ ์ ์๊ฒ ๋ง๋๋ ๋ฝ์ ๊ฐ๋ ์ด๋ค. ๋ฎคํ ์ค์ ๊ตฌํ์ ํฌ๊ฒ lock()๊ณผ unlock()์ผ๋ก ์ด๋ฃจ์ด ์ง๋๋ฐ, (wait()์ release()๋ก๋ ํํํ๋๋ฐ ์ฌ๊ธฐ์๋ lock()๊ณผ unlock()์ด ๋ ์ง๊ด์ ์ธ ์๋ฉ์ด๋ผ๊ณ ํ๋จ) lock()์ ํน์ ..
2023.03.26 -
CPU ์ค์ผ์ค๋ง
ํ๋์ ๋ค์ด์ PC์ ์ปดํจํ ์ฑ๋ฅ์ด ์ฆ๊ฐํ๊ณ , ์ด์ ๋ฐ๋ผ ๋์์ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ ๋์ ์ฌ์ฉํ๋ ์ผ์ด ์ฆ๋ค. ์ด์์ฒด์ ์ ์ฅ์์๋ ๋์๋ค๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๊ณ ์๋ ํ๋ก์ธ์ค๋ค์ ๋ํด, ๋น๋ก CPU ์ฝ์ด๊ฐ ํ๋๋ผ์ ํ ๋ฒ์ ํ๋์ ํ๋ก์ธ์ค ๋ง์ ์คํ์ํฌ ์ ์๋ ์ํฉ์ผ์ง๋ผ๋, ์ฌ์ฉ์๋ก ํ์ฌ๊ธ ๋ชจ๋ ํ๋ก์ธ์ค๋ค์ด ๋ณ๋ ฌ์ ์ผ๋ก ์คํ๋๊ณ ์๋ค๋ ์ฐฉ๊ฐ์ ๋ถ๋ฌ์ผ์ผํฌ ์ ์์ด์ผ ํ๋ค. ๋ง์ฝ PC๋ฅผ ํตํด ์์ ์ ๋ค์ผ๋ฉด์ ์น์ํ์ ํ๋ ์ํฉ์์, ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์คํ๋๋ ๋์ ๊ฒ์์ฐฝ์ ํ์ดํ์ด ์๋๋ค๋ฉด ์ด๋ ์ด์์ฒด์ ์ ์ญํ ์ ์ ๋๋ก ์ํํ๊ณ ์์ง ์์ ๊ฒ์ด๋ค. ์ด๋ฅผ ์ํด, ์ด์์ฒด์ ๋ CPU๋ฅผ ํ ๋นํ ์์ ๋ค์ ๋ํ ์ค์ผ์ค๋ง์ ์ํํ๋ค. ๋จ์ํ ์ค์ผ์ค๋ง์ ์ํ์ํค๋ ๋จ๊ณ๋ฅผ ๋์ด, ์ด๋ฅผ ์ ์ํํ ์ ์์ด์ผ ํ๋ค. ์ค์ผ์ค๋ง์ ํ๊ฐ ํญ..
2023.03.25 -
IPC(Interprocess Communication)
ํ๋ก์ธ์ค๋ค์ด ์๋ก์ ๋ํด ์์ ํ ๋ ๋ฆฝ๋ ํ๊ฒฝ์ ๊ฐ๋๋ค๋ ๊ฒ์ ์ด์์ฒด์ ๋ฅผ ๊ณต๋ถํด ๋ณด์๋ค๋ฉด ์๋ช ํ๋ค. ํ์ง๋ง ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ๋ก์ธ์ค ๊ฐ ํต์ ์ ํ์ฉํ๊ณ ์ถ์ ์ ์๋ค. ์๋ฅผ ๋ค์ด ๋ก์ปฌ์์ ๊ตฌ๋ ์ค์ธ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ์์ MySql DB์ ์ ๊ทผํ๋ ์ํฉ์ ๊ฐ์ ํด ๋ณด์. ํ๋ก์ธ์ค๊ฐ ์์ ํ ๋ ๋ฆฝํ๋ค๋ ๊ฐ์ ํ์๋, ์๋ก ์ ๊ทผ์ด ๋ถ๊ฐ๋ฅํ๋ค. ํ์ง๋ง ์ค์ ๋ก๋ ์๋ฒ์์ DB๋ก ์ ๊ทผ์ด ์ ์ด๋ฃจ์ด์ง๋ค. ์ด๋ฅผ ๊ฐ๋ฅํ๊ฒ ํด์ฃผ๋ ๊ฒ์ด ๋ฐ๋ก IPC์ด๋ค. IPC์ ์ข ๋ฅ IPC์ ์ข ๋ฅ๋ ์๋์ ๊ฐ๋ค. Pipe Named Pipe Message Queue Shared Memory Socket Communication Pipe ํ์ดํ๋ ๋ ํ๋ก์ธ์ค ๊ฐ ๋จ๋ฐฉํฅ ํต์ ์ ์ํํ ๋ ์ด์ฉ๋๋ค. ํ์ดํ๋ ์ผ์ข ์ ํ์ผ๋ก ๊ด๋ฆฌ๋๋๋ฐ, ์ด๋ ์ต๋ช ์ผ..
2023.03.19 -
ํ๋ก์ธ์ค ์ ์ด ๋ธ๋ก(PCB)
ํ๋ก์ธ์ค ์ ์ด ๋ธ๋ก(Process Control Block)์ด๋ OS๊ฐ ํ๋ก์ธ์ค๋ค์ ๊ด๋ฆฌ๋ฅผ ์ํด ์ฌ์ฉํ๋ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๊ตฌ์กฐ์ฒด์ด๋ค. OS๋ ๋ค์์ ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉ์์๊ฒ ๋์์ ์ ๊ณตํ๊ธฐ ์ํด ํ์ฌ ์คํ ์ค์ธ ํ๋ก์ธ์ค์ ์ ๋ณด๋ฅผ ์๊ณ ์์ ํ์๊ฐ ์๋๋ฐ, PCB๊ฐ ๊ทธ ์ญํ ์ ํ๊ฒ๋๋ ๊ฒ์ด๋ค. PCB ์ ์ฅ ์์ PCB์ ์ ์ฅ๋๋ ํ๋ก์ธ์ค์ ์ ๋ณด๋ค์ ๋ค์๊ณผ ๊ฐ๋ค. PID: ๊ฐ ํ๋ก์ธ์ค๊ฐ ๊ฐ๋ ๊ณ ์ ์ ID ๊ฐ ํ๋ก์ธ์ค ์ํ: ํด๋น ํ๋ก์ธ์ค๊ฐ ์คํ ์ค, ๋๊ธฐ ์ค, ์ ์ง ์ํ์ธ์ง๋ฅผ ๋ํ๋ด๋ ์ ๋ณด ๋ ์ง์คํฐ ์ํ: ๋ ์ง์คํฐ๋ CPU ๋ด๋ถ์ ์กด์ฌํ๋ ํ๋ก์ธ์ค์ ์ํ๋ฅผ ์ ์ฅํ๋ ์ ์ฅ ๊ณต๊ฐ์ผ๋ก, ์ด์ ์ํ๋ฅผ ์ ์ฅ. ๋ ์ง์คํฐ์๋ ํ๋ก๊ทธ๋จ ์นด์ดํฐ, ์คํ ํฌ์ธํฐ, ๋ฒ ์ด์ค ๋ ์ง์คํฐ ๋ฑ์ด ์ ์ฅ. ํ๋ก๊ทธ๋จ ์นด์ดํฐ: ํด๋น ํ๋ก์ธ์ค๊ฐ ๋ค์..
2023.03.18