๋ฉ”๋ชจ๋ฆฌ๋Š” ๋‚จ์•„ ์žˆ๋Š”๋ฐ, ์™œ ์•ฑ์€ ๋ฉˆ์นซํ• ๊นŒ

Intro์•ฑ์ด ๋ฒ„๋ฒ…์ผ ๋•Œ ์šฐ๋ฆฌ๋Š” ๋ณดํ†ต ์ด๋ ‡๊ฒŒ ์ƒ๊ฐํ•œ๋‹ค. “CPU๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ์“ฐ๊ณ  ์žˆ๋‚˜?”“๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•œ๊ฐ€?” ๊ทธ๋Ÿฐ๋ฐ ์‹ค์ œ๋กœ๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋‚จ์•„ ์žˆ์–ด ๋ณด์—ฌ๋„์•ฑ์ด ์ˆœ๊ฐ„์ ์œผ๋กœ ๋ฉˆ์นซํ•˜๊ฑฐ๋‚˜, ์ฒ˜์Œ ์ง„์ž…ํ•  ๋•Œ ๋ฒ„๋ฒ…์ด๊ฑฐ๋‚˜,์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜์Œ ์ฝ๋Š” ์ˆœ๊ฐ„ ํ•œ ๋ฐ•์ž ๋Šฆ๋Š” ์ผ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค. ์ด์œ ๋Š” ์•ฑ์ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ง์ ‘ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ๋‹ค๋ฃจ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ,๊ฐ€์ƒ ์ฃผ์†Œ๋ฅผ ํ†ตํ•ด ์ ‘๊ทผํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ๊ณผ์ •์€ ์ƒ๊ฐ๋ณด๋‹ค ๋‹จ์ˆœํ•˜์ง€ ์•Š๋‹ค.๋จผ์ € ๊ฐ€์ƒ ์ฃผ์†Œ๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ๋ฒˆ์—ญํ•ด์•ผ ํ•˜๊ณ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์•„์ง RAM์— ์—†์œผ๋ฉด ๊ฐ€์ ธ์™€์•ผ ํ•˜๊ณ ์ด ๊ณผ์ • ์ž์ฒด๋„ ๋น„์šฉ์ด ๋“ ๋‹ค์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์ด ํ๋ฆ„์„ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ, ํŽ˜์ด์ง€, page fault, TLB๋ฅผ ํ•˜๋‚˜์˜ ํ๋ฆ„์œผ๋กœ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.1. ์•ฑ์ด ํŒŒ์ผ์„ ์ฝ๋Š”๋‹ค๊ณ  ํ•ด์„œ, ํŒŒ์ผ ์ „์ฒด๊ฐ€ RAM์—..

์ปค๋„๋กœ ๋“ค์–ด๊ฐ€๋Š” ์ˆœ๊ฐ„๋ถ€ํ„ฐ Page Fault๊นŒ์ง€

0. ๋“ค์–ด๊ฐ€๊ธฐ์šด์˜์ฒด์ œ๋ฅผ ๋ณด๋ฉด ์šฉ์–ด๊ฐ€ ํ•œ ๋ฒˆ์— ๋“ฑ์žฅํ•œ๋‹ค.interrupt, system call, exceptionpage table, TLB, page faultswap, thrashing, working set์ด ๊ธ€์€ ๊ฐœ๋…์„ ๋‚˜์—ดํ•˜๊ธฐ๋ณด๋‹ค, ํ๋ฆ„์„ ๋”ฐ๋ผ๊ฐ€๋ฉฐ ์ •๋ฆฌํ•˜๋Š” ๊ฑธ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค.1. ์ปค๋„๋กœ ๋“ค์–ด๊ฐ€๋Š” ์‚ฌ๊ฑด์€ 3๊ฐ€์ง€๋กœ ๋ฌถ์ธ๋‹คCPU๋Š” ์›๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰ํ•œ๋‹ค.๊ทธ๋Ÿฐ๋ฐ ์–ด๋–ค ์ˆœ๊ฐ„์—๋Š” ์‹คํ–‰์ด ๋Š๊ธฐ๊ณ  ์ปค๋„ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋œ๋‹ค.์ด ์‚ฌ๊ฑด์€ ํฌ๊ฒŒ 3๊ฐ€์ง€๋‹ค.1.1. Hardware Interrupt (์™ธ๋ถ€์—์„œ ๋“ค์–ด์˜ด)์™ธ๋ถ€ ์žฅ์น˜/ํƒ€์ด๋จธ/I/O ์™„๋ฃŒ/์ž…๋ ฅ ๊ฐ™์€ ์ด๋ฒคํŠธ๊ฐ€ ์›์ธ์ด๋‹ค.๋น„๋™๊ธฐ(asynchronous) ์„ฑ๊ฒฉ์ด๋ผ ํ˜„์žฌ ์ฝ”๋“œ ํ๋ฆ„๊ณผ ๋ฌด๊ด€ํ•˜๊ฒŒ ๋“ค์–ด์˜ฌ ์ˆ˜ ์žˆ๋‹ค.interrupt handler๊ฐ€ ์ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ์ „ํ†ต์ ์œผ๋กœ..