์ด์์ฒด์ (Operating System : OS)๋?์ปดํจํฐ ํ๋์จ์ด ๋ฐ๋ก ์์ ์ค์น๋์ด ์ฌ์ฉ์ ๋ฐ ๋ค๋ฅธ ๋ชจ๋ ์ํํธ์จ์ด์ ํ๋์จ์ด๋ฅผ ์ฐ๊ฒฐํ๋ ์ํํธ์จ์ด ๊ณ์ธต ์ด์์ฒด์ ์ ๋ชฉ์ ์ปดํจํฐ ์์คํ
์ ํธํ๊ฒ ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํด์ค๋ค.์ปดํจํฐ๋ ํ๋์จ์ด ์์(CPU, ๋ฉ๋ชจ๋ฆฌ, Input/output ์ฅ์น(์ดํ I/O ์ฅ์น) ๋ฑ)์ผ๋ก ์ด๋ฃจ์ด์ ธ์๋ค. ์ด ํ๋์จ์ด์ ๊ด๋ฆฌ๋ฐฉ๋ฒ, ์๋๋ฐฉ์์ ๋ชฐ๋ผ๋ ์ปดํจํฐ๋ฅผ ์ฐ๋ฆฌ๋ ์ ์๋ฒํผ๋ง ๋๋ฅด๋ฉด ํธํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. ์ด๋ ๊ฒ ํธํ๊ฒ ์ฌ์ฉํ ์ ์๋๊ฑด ์ด์์ฒด์ ๋ผ๋ ์ํํธ์จ์ด๊ฐ ์๊ธฐ ๋๋ฌธ์ด๋ค!์ด์์ฒด์ ๋ ๋์ ์ฌ์ฉ์/ํ๋ก๊ทธ๋จ๋ค์ด ๊ฐ๊ฐ ๋
์์ ์ปดํจํฐ์์ ์ํ๋๋๊ฒ ๊ฐ์ ํ์์ ์ ๊ณตํ๋ค.๋์ ํ๋ก๊ทธ๋จ์ผ ๊ฒฝ์ฐ : ์ฌ์ฉ์๊ฐ ์ปดํจํฐ์์ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ ๋๋ฆฐ๋ค. ์์
ํ๋ก๊ทธ๋จ, snsํ๋ก๊ทธ๋จ, ๊ฒ..
CS
ARM ์ ๊ฐ์ RISC ๋จธ์ ๊ธฐ๋ฐ์ด๋ค.( 32๋นํธ์ RISC ์ํคํ
์ฒ) ๋จ์ํ ๋์์ธ, ์ ์ ๋ช
๋ น์ด ์ธํธ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ์ ๋ ฅ์ ์ ๊ฒ ์ฐ๊ณ ๊ฐ๊ฒฉ๋ ์ธ๋ค. ๋์ฉ๋ ๋ฒ์ฉ ๋ ์ง์คํฐ ํ์ผ์ ๊ฐ์ง๋ค. load/store ์ํคํ
์ฒ๋ค. load/ store ๋ช
๋ น์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๋ ๋ช
๋ น์ด๋ค. ๋ ์ง์คํฐ์ ๊ฐ๋ง ์ด์ฉํ์ฌ ํ๋ก์ธ์ฑํ๋ค. ๋ช
๋ น์ด์ ๊ธธ์ด๋ 32๋นํธ๋ก ๊ณ ์ ๋์ด์๋ค. ARM์์ byte๋ 8bit, halfword๋ 16bit, word๋ 32bit์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๋ค. ARM์์ ๋ช
๋ น์ด๋ 32๋นํธ์ ARM ๋ช
๋ น์ด ์ธํธ๋ 16๋นํธ์ Thumb ๋ช
๋ น์ด ์ธํธ๋ฅผ ๊ตฌํํ๋ค. Jazelle ์ฝ์ด๋ค์ ์๋ฐ ๋ฐ์ดํธ ์ฝ๋๋ฅผ ๊ตฌํํ ์ ์๋ค. ARM์์์ ๋ ์ง์คํฐ ์ฝ์ด์ 37๊ฐ ๋ ์ง์คํฐ 1๊ฐ์ PC 1๊ฐ์ CPSR(Current ..
์ปดํจํฐ์ ๊ธฐ๋ณธ ์ฌ์ดํด์ Fetch - Decode - Excute - Write back ์ด๋ค. ์์๋ก ๋ฉ๋ชจ๋ฆฌ์์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๊ฑฐ๋ ์ฝ์๋(Write back ์์
) 100 ์ธ์ดํด์ด ๊ฑธ๋ฆฌ๊ณ ๋๋จธ์ง ์์
ํ ๋ 1 ์ธ์ดํด์ฉ ๊ฑธ๋ฆฐ๋ค๋ฉด, 10๊ฐ์ ๋ช
๋ น์ด๋ฅผ ์คํํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์ด ์ธ์ดํด ์๋ 10 * (1+1+1+1000) = 1030 ์ธ์ดํด ์ด๋ค. ํ์ดํ๋ผ์ธ ๋ชฉ์ ์ฒ๋ฆฌ์๋ ํฅ์ ๋ฐฉ๋ฒ ๊ฐ ์ธ์ดํด๋ง๋ค ๊ฐ์ ํด๋ฝ์์์ ์๋ํ๋ค. ๊ฐ์ ์์(๋ฆฌ์์ค)๋ฅผ ๋์์ ์ฌ์ฉํ์ง ์์์ผ ํ๋ค. ์์์๋ IM, Reg, DM, ALU๊ฐ ์๋ค. ๊ธด ์ ๊ทผ์๊ฐ์ ์งง๊ฒ ๋ง๋ค ์ ์๋ค. ํนํ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผ์๊ฐ์ ์งง๊ฒ ๋ง๋ค ์ ์๋ค. ์บ์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ํ๋ก์ธ์ ์ฌ์ด์ ์์ ๊ณ ์ ๋ฉ๋ชจ๋ฆฌ ์ฅ์น๋ค. ํ๋ก์ธ์์ ์ฑ๋ฅ์ ํฅ์์ํจ๋ค. ํ๋ฒ ์ฌ์ฉ๋ ์ฝ๋๋ ์ฌ..
I/O๊ธฐ์ I/O ๊ธฐ์ (์
์ถ๋ ฅ ๋ฐฉ๋ฒ)์ Programmed I/O, Interrupt I/O, DMA(Direct Memory Access)๋ก ๋๋ ์ ์๋ค. Programmed I/O ํ๋ก์ธ์๊ฐ I/O๋์์ ์ํ ์ ์ด ํ๋ก๊ทธ๋จ์ ์คํํ๋ค. ํ๋ก๊ทธ๋จ์ด I/O์ฅ์น ์ํ๋ฅผ ์ ์ด์ ํธ๋ก ์ฒดํฌํ๋ค. I/O๊ฐ ์ค๋น๋๋ฉด I/O๋ฅผ ์ํํ๋ค. ์ด๋ ์ค๋น์ ์ํ์ ์ ์ด์ ํธ๋ก ์ฒดํฌํ๋ค. (๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ์์
, ์ฐ๋ ์์
์ ํ ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณ ๋ด๋ณด๋ด๋๊ฑด ์ ์ด์ ํธ๊ฐ ํ์ํ๋ค.) ํ๋ก์ธ์๊ฐ I/O๋ณด๋ค ์๋๊ฐ ๋น ๋ฅด๊ธฐ๋๋ฌธ์ ํ๋ก์ธ์์ ์๊ฐ๋ญ๋น๋ก ์ด์ด์ง ์ ์๋ค. Interrupt I/O I/O์ฅ์น๊ฐ ์ค๋น๋๋ฉด ํ๋ก์ธ์์๊ฒ interrupt ์ ํธ๋ฅผ ์ค์ ์๋ฆฐ๋ค.(์ ์ด์ ํธ ์ฒดํฌ) ํ๋ก์ธ์๋ ์ํํ๊ณ ์๋ ์์
์ ์ค๋จํ๊ณ I/O๋ฅผ ์คํํ..
i-list๊ฐ ์ด๋ป๊ฒ data block์ ์ ๊ทผํ๋๊ฐ? i-list์ 'i'๋ index์ ์ฝ์์ด๋ค. i-list์๋ i-node๋ค์ด ์๋ค ํ๋์ i-node์ ํ์ผ ์ดํธ๋ฆฌ๋ทฐํธ(ํ์ผ์ ๋ฉํ๋ฐ์ดํฐ)๋ฅผ ์ ์ฅํ๊ณ ์๊ณ , ํ์ผ์ ๋ํ ์ธ๋ฑ์ค ํฌ์ธํฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ์ด ์ธ๋ฑ์ค ํฌ์ธํฐ๋ ํ์ผ์ ์์น์ ๋ํ ํฌ์ธํฐ์ด๋ค. Direct pointer(ํฌ์ธํฐ)๋ ์ต๋ 12๊ฐ๊น์ง ์๋ค. Direct pointer๊ฐ 12๊ฐ ์ด์ ํ์ํ ๊ฒฝ์ฐ์ Single indirect pointer, Double indirect pointer, Triple indirect pointer๋ฅผ ์ด์ฉํ๋ค. i-node์ 0๋ฒ๋ถํฐ 11๋ฒ์งธ ๋๋ ํ ๋ฆฌ ๊น์ง direct pointer๋ฅผ ๋ค์ผ๋ค๋ฉด 12๋ฒ์งธ ๋๋ ํ ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ค. 12๋ฒ์งธ ๋๋ ํ ๋ฆฌ๋ data..
Bootstrap program(Bootstrop loader) ์ปดํจํฐ๊ฐ ๋ถํ
ํ ๋ ๋๋ ์ฌ๋ถํ
ํ ๋ ๋์๊ฐ๋ ํ๋ก๊ทธ๋จ ROM ๋๋ EEPROM์ ์ ์ฅ๋์ด์๋ค. ์ด๋ค์ firmware์ด๋ผ๊ณ ํ๋ค. RAM์ ํ๋ฐ์ฑ ๋ฉ๋ชจ๋ฆฌ, ROM์ ์ ๊ธฐ๊ฐ ๊บผ์ ธ๋ ์ ์ฅ๋์ด์๋ ๋ฉ๋ชจ๋ฆฌ๋ค. EEPROM์ ROM์ ์ข
๋ฅ ์ค ํ๋์ด๋ค. firmware์ hardware์ software์ ์ค๊ฐ์ด๋ผ๊ณ ๋ณด๋ฉด๋๋ค. hardware๋ ์์ ์ด ์ด๋ ต๊ณ , software์ ์์ ์ด ์ฝ๋ค๋ฉด, firmware์ ํ๋์จ์ด ์ฅ๋น๊ธด ํ๋ฐ, ์ํํธ์จ์ด์ฒ๋ผ ์์ ๋ ์ฝ๋ค ์์คํ
์ ๋ชจ๋ ๊ด์ ์์ ์ด๊ธฐํ๋ฅผ ์งํํ๋ค.(=POST(Power On Self Test)๋ฃจํด์ ์คํํ๋ค). CPU๊ฐ ์๋์๊ฐ๋์ง, ๋ฉ๋ชจ๋ฆฌ์ ์์๊ฑฐ ๋ค ์๋์ง..๋ฑ๋ฑ ์ ์
ํ์ฒดํฌํ๋ค! ์ด์์ฒด์ ์ปค..
์ ์ฅ์ฅ์น(storage): ํ์ผ์ด ์ ์ฅ๋๋ ๊ณณ ์ ์ฅ์ฅ์น ์์คํ
์ ์ข
๋ฅ HDD: ์๊ธฐ ๋์คํฌ SSD : ์ ์ ๋์คํฌ ๋ ์ ์ฅ์ฅ์น๊ฐ ๊ฐ์ง๋ ๋ฌผ๋ฆฌ์ ์ธ ํน์ฑ์ด ๋ค๋ฅด๊ณ , ํ์ผ ์์คํ
๊ด์ ์์ ํ์ผ์ ์ด๋ป๊ฒ ์ฒ๋ฆฌ๋ฅผ ํด์ค์ผ ํ๋๋๋ ๋ค๋ฅด๋ค. ํ์ง๋ง ํ์ผ ์์คํ
์ ๋์์ ๋ฐ์ ๋ชจ๋ ์ ์ฅ ๋ฐ์ดํฐ๋ค์ ์ด์์ฒด์ ๊ด์ ์์ ๊ฐ์ ํํ๋ก ๋ณด์ธ๋ค ํ์ผ์ ๊ฐ๋
์ฐ์์ ์ผ๋ก ๋
ผ๋ฆฌ์ ์ธ ์ฃผ์๊ณต๊ฐ์ ์ฐจ์งํ๊ณ ์๋ ๊ฐ์ฒด ํ์ผ์ ๋ฐ์ดํฐ ํ์ผ์ ์คํํ๊ณ ์ ํ๋ ํ๋ก๊ทธ๋จ ํ์ผ๋ก ๋๋๋ค ๋ฐ์ดํฐํ์ผ : ์์คํค์ฝ๋ ํ
์คํธ ํ์ผํํ ํ๋ก๊ทธ๋จํ์ผ : ์ด์ง(binary) ํ์ผํํ ํ์ผ์ ๊ตฌ์กฐ ํ์ผ๋ง๋ค ๊ณ ์ ํ๊ฒ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค(ํ
์คํธ ํ์ผ, ์ค๋ธ์ ํธ ํ์ผ, ์์คํ์ผ ๋ฑ๋ฑ..) ๋ฌด๊ตฌ์กฐ : ๊ตฌ์กฐ๊ฐ ์๋ค. ๋จ์ด/๋ฐ์ดํธ์ ๋์ด ๋จ์ ๊ตฌ์กฐ : ์ค๊ธ(Lines), ๊ณ ..
-์ด์์ฒด์ ๋ ์ปดํจํฐ์ ํ๋์จ์ด์ ์ฌ์ฉ์ ์ฌ์ด์ ์ค๊ฐ์ ์์นํ๊ณ ์๊ณ , ์ด์์ฒด์ ์ ๋ชฉ์ ์ ๋ฌ์ฑํ๊ธฐ ์ํด ์ํํธ์จ์ด ํํ๋ก ๊ตฌํ๋์ด์๋ ์ผ์ข
์ ํ๋ก๊ทธ๋จ์ด๋ค. -์ด์์ฒด์ ์ ๋ชฉ์ ์ฌ์ฉ์ ๊ด์ : ์ฌ์ฉ์๊ฐ ํ๊ณ ์ถ์๊ฑธ ํ๊ธฐ ์ํด์ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ์คํํ๋ค ์์คํ
(ํ๋์จ์ด) ๊ด์ : CPU, ๋ฉ๋ชจ๋ฆฌ, ์ ์ฅ์๋ฅผ ์ ๊ด๋ฆฌ&์ ์ดํด์ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ์ ์คํํ๋ค -> Resource manager -(@์ค์@)์ด์์ฒด์ ์ ๋ชฉ์ ์ ๋ฌ์ฑํ๊ธฐ ์ํ ์๊ตฌ์ฌํญ Convenience(ํธ๋ฆฌ) : ์ฌ์ฉ์ ๊ด์ ์์ ์ด์์ฒด์ ๋ ์ฌ์ฉํ๊ธฐ ์ง๊ด์ ์ด๊ณ ํธ๋ฆฌํด์ผํ๋ค (CLI ๋ณด๋ค GUI๊ฐ ํธ๋ฆฌ์ฑ์ด ๋๋ค) Efficiency(ํจ์จ) : ์์คํ
๊ด์ ์์ ์ด์์ฒด์ ๋ ์์์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํด์ผํ๋ค *ํธ๋ฆฌ์ ํจ์จ์ trade off ๊ด๊ณ์ ์๋ค.(trad..