๋ฐ์ํ
Thread ์ MultiThread
Thread
๐ก ํ process ๋ด์์ ์คํ๋๋ ๋์(๊ธฐ๋ฅ)์ ๋จ์.
- ๊ฐ thread๋ ์ํด์๋ process์ Stack๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ์ธํ ๋๋จธ์ง memory์์ญ(code, data, heap)์ ๊ณต์ ํ ์ ์๋ค.
- Thread๊ฐ ๋ ๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ ์ํํ๋ค = ๋ ๋ฆฝ์ ์ผ๋ก ํจ์๋ฅผ ํธ์ถํ๋ค.
Multi Thread
๐ก ํ๋์ process์์ ์ฌ๋ฌ ์์ ์ ๋ณ๋ ฌ๋ก ์ฒ๋ฆฌํ๋๋ก ํด์ฃผ๋ ๊ฒ
- ํ process๋ด์ ์ฌ๋ฌ ๊ฐ์ thread๊ฐ ์๊ณ , ๊ฐ thread๋ค์ Stack๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ์ธํ ๋๋จธ์ง ์์ญ (Code, Data, Heap) ์์ญ์ ๊ณต์ ํ๊ฒ ๋จ.
Stack memory & PC Register
- thread๊ฐ ํจ์๋ฅผ ํธ์ถํ๊ธฐ ์ํด์๋ ์ธ์ ์ ๋ฌ, Return Address ์ ์ฅ, ํจ์ ๋ด ์ง์ญ๋ณ์ ์ ์ฅ ๋ฑ์ ์ํ ๋ ๋ฆฝ์ ์ธ stack memory ๊ณต๊ฐ์ ํ์๋ก ํจ. → ๋ ๋ฆฝ์ ์ธ ๋์์ ์คํํ๊ธฐ ์ํด!
- ํ proess ๋ด์์๋ thread๋ผ๋ฆฌ context switch๊ฐ ์ผ์ด๋๊ฒ ๋๋๋ฐ, ์ด ๋ code address๊ฐ ์ ์ฅ๋์ด ์์ด์ผ ํ๋ฏ๋ก ๊ฐ๊ฐ์ PC register๋ฅผ ๊ฐ์ง๊ณ ์์
์ ๋ฆฌ
- thread / multi thread๋ ๋ฌด์์ธ๊ฐ.
- thread๋ ์ ๋ ๋ฆฝ์ ์ธ stack memory ์์ญ์ด ํ์ํ๊ฐ.
๋ฐ์ํ
'๐ Study > ์ด์์ฒด์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Memory] ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ (0) | 2022.05.25 |
---|---|
[Memory] Paging VS Segmentation (0) | 2022.05.25 |
๋ฐ์ดํฐ ํต์ ๊ณผ ๋๊ธฐํ ๋ฌธ์ (0) | 2022.05.25 |
Multi process VS Multi thread (0) | 2022.05.25 |
Process์ Multi Process (0) | 2022.04.26 |