• 02. Process VS Thread

    2022. 11. 30.

    by. JuneBee

    728x90
    ๋ฐ˜์‘ํ˜•

    Process

    ํ”„๋กœ์„ธ์Šค๋Š” ๊ด€๋ฆฌ์˜ "๋‹จ์œ„" ์ด๋‹ค. ์ด๋•Œ, ๊ด€๋ฆฌ์˜ ์ฃผ์ฒด๋Š” "OS"๊ฐ€ ๋œ๋‹ค.

    ํ”„๋กœ์„ธ์Šค๊ฐ€ ์กด์žฌํ•˜๋ฉด ์ตœ์†Œ ํ•œ๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋„ ์กด์žฌํ•˜๋Š”๋ฐ, ํ”„๋กœ์„ธ์Šค ์•ˆ์— ์ˆ˜๋งŽ์€ ์Šค๋ ˆ๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค๊ณ  ์ด๋ก ์ ์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์‚ฌ์‹ค ํ”„๋กœ์„ธ์Šค ์—ญ์‹œ ํ•œ๊ฐœ์˜ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋ผ๊ณ  ํ•œ๋‹ค.

     

    ํ•œ๊ฐœ์˜ ํ”„๋กœ์„ธ์Šค ๋‚ด๋ถ€์— ๋‹จ์ผ ~ ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ๊ณ  ์ด๋“ค์€ "๋™์‹œ์—" "๊ฐ์ž" ์ž‘์—…ํ•œ๋‹ค

     

    ์—ฐ์‚ฐ

    ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ญํ•˜๋Š” ์• ๋ƒ?! ํ•˜๊ณ  ๋ฌป๋Š”๋‹ค๋ฉด "์—ฐ์‚ฐ"ํ•˜๋Š” ์• ๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ํ”„๋กœ์„ธ์Šค๋Š” ์—ฐ์†์ ์œผ๋กœ ์—ฐ์‚ฐ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š”๋ฐ ์ด๋•Œ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์—ฐ์‚ฐํ•˜๋Š” ๊ฒƒ,,, ์ด๋•Œ, OS๊ฐ€ ์—ฐ์‚ฐ์— ํ•„์š”ํ•œ CPU์™€ ์—ฐ์Šต์žฅ (RAM) ์„ ์ œ๊ณตํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.

    Process Flow

    ํฐ ๊ทธ๋ฆผ : Process -> ์—ฐ์‚ฐ  -> ์—ฐ์‚ฐ์„ ์œ„ํ•ด์„œ๋Š” ํ•˜๋“œ์›จ์–ด์˜ CPU์™€ RAM์„ ์‚ฌ์šฉํ•ด์•ผํ•จ (resource) -> OS๊ฐ€ VM ํ• ๋‹น

    CPU์—๋Š” ์—ฌ๋Ÿฌ ์ฝ”์–ด๊ฐ€ ์žˆ๋Š”๋ฐ OS์—์„œ ์–ด๋–ค core๋ฅผ ์‚ฌ์šฉํ•  ๊ฑด์ง€ (CPU), ์–ด๋А RAM์„ ์‚ฌ์šฉํ•  ๊ฑด์ง€ (์ฃผ๋กœ ํŽ˜์ด์ง€ ๋‹จ์œ„๋กœ ์ž๋ฆ„) ๊ฒฐ์ •ํ•ด์ค€๋‹ค. CPU๊ฐ€ ์—ฐ์‚ฐ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์ค€๋‹ค๋ฉด RAM์€ ์—ฐ์Šต์žฅ์ด๋‹ค..*์ฐธ๊ณ ๋กœ ์ด core๊ฐ€ i-core 9 ํ• ๋•Œ ๊ทธ ์ฝ”์–ด์ž„

    Virtual Memory

    ์ด๋•Œ, CPU์™€ ๋žจ์„ ์ง์ ‘์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ฒŒ๋” ์ด์–ด์ฃผ์ง„ ์•Š๋Š”๋‹ค. CPU๋Š” ์ง์ ‘ ์‚ฌ์šฉํ•˜๊ฒŒ๋”๋„ ํ•˜์ง€๋งŒ RAM์€ ์ ˆ๋Œ€ ๋ถˆ๊ฐ€,,

    ๋Œ€์‹  Virtual Memory(VM)์ด๋ผ๋Š” ๊ณณ์„ ์‚ฌ์šฉํ•œ๋‹ค.

    • RAM : 1์ฐจ ๋ฉ”๋ชจ๋ฆฌ
    • HDD : 2์ฐจ ๋ฉ”๋ชจ๋ฆฌ
    • Virtual Memory : 1์ฐจ + 2์ฐจ ๋ฉ”๋ชจ๋ฆฌ

    VM์€ ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ๋กœ 1+2์ฐจ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ „๋ถ€ ๋‚˜์—ด๋˜์–ด์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ์ด๋•Œ, ํ”„๋กœ์„ธ์Šค๊ฐ€ VM์˜ ํ•œ ๊ณต๊ฐ„์„ ํ• ๋‹น๋ฐ›์•˜๋Š”๋ฐ ์•Œ๊ณ ๋ณด๋‹ˆ HDD๊ณต๊ฐ„์ผ ์ˆ˜๋„ ์žˆ๋‹ค (ํ—ˆ์œ„๋งค๋ฌผ ใ…Žใ„ทใ„ท ๋ฐฐ์ •๋ฐ›๊ณ ๋‚ฌ๋Š”๋ฐ ๊ฒ๋‚˜ ๋А๋ฆฐ ์ƒํ™ฉ.. ๊ทธ๋ž˜๋„ ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š”๊ฒƒ๋ณด๋‹จ ๋‚ซ์ž๋„ˆ..? ํ•˜๋Š” ์‹ฌ์ •์œผ๋กœ ํ• ๋‹นํ•ด์ค€๋‹ค) ์•„๋ฌด๋ž˜๋„ ์—ฐ์†์ ์œผ๋กœ ์—ฌ๋Ÿฌ ์—…๋ฌด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ ค๋‹ค๋ณด๋‹ˆ๊นŒ ์ด๋ ‡๊ฒŒ ํ—ˆ์œ„๋งค๋ฌผ๋„ ์˜ฌ๋ ค๋†“์€๊ฒŒ ์•„๋‹๊นŒ..?ํ•œ๋‹ค. 

    ์ •๋ฆฌ

    • ํ”„๋กœ์„ธ์Šค(์ž‘์—…)์€ ์ตœ์†Œ ํ•œ๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋ฅผ ๊ฐ–๋Š”๋‹ค.
    • ์Šค๋ ˆ๋“œ๋Š” ์—ฐ์‚ฐํ•˜๋Š” ๋†ˆ์ž„
    • OS๋Š” Virtual Memory๋ฅผ ํ”„๋กœ์„ธ์Šค์—๊ฒŒ ํ• ๋‹นํ•œ๋‹ค
    • ๋”ฐ๋ผ์„œ, ํ”„๋กœ์„ธ์Šค์— ์†ํ•œ ๋ชจ๋“  ์Šค๋ ˆ๋“œ(์—ฐ์‚ฐ์˜ ์ฃผ์ฒด)๋Š” ํ”„๋กœ์„ธ์Šค์˜ VM์œผ๋กœ ๊ณต๊ฐ„์ด ์ œํ•œ๋˜์–ด์žˆ๋‹ค.

    Process and Thread

    ์ง‘ : ํ”„๋กœ์„ธ์Šค -> ํ”„๋กœ์„ธ์Šค์— ํ• ๋‹น๋œ VM ๋งŒํผ์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ–๋Š”๋‹ค

    ๋ฐฉ : ์Šค๋ ˆ๋“œ -> ์Šค๋ ˆ๋“œ ๋งˆ๋‹ค ๊ณ ์œ  Thread Local Storage๋ฅผ ๊ฐ€์ง€๋ฉฐ ์Šค๋ ˆ๋“œ ๋งˆ๋‹ค ์Šคํƒ์œผ๋กœ ๋ถ„๋ฆฌ๋Œ

    ๊ฑฐ์‹ค :  Heap ์˜์—ญ


    Reference

    https://www.youtube.com/watch?v=x-Lp-h_pf9Q&list=RDCMUCdGTtaI-ERLjzZNLuBj3X6A&start_radio=1&rv=x-Lp-h_pf9Q&t=4&ab_channel=%EB%84%90%EB%84%90%ED%95%9C%EA%B0%9C%EB%B0%9C%EC%9E%90TV 

     

    728x90
    ๋ฐ˜์‘ํ˜•

    '๐Ÿ““ STUDY > OS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    03. CPU์˜ ์˜ˆ์ธก  (0) 2022.12.01
    01. Kernel  (0) 2022.11.30
    00. Operating System Concept  (0) 2022.11.30

    ๋Œ“๊ธ€