๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿš— Major Study (Bachelor)/๐ŸŸง Operating System

[OS / ์šด์˜์ฒด์ œ] Preview

by UKHYUN22 2022. 2. 28.
728x90

Office Hour : ํ™”์š”์ผ,๋ชฉ์š”์ผ ์•„์นจ 9์‹œ~10์‹œ

์ถœ์„: 5%

๊ณผ์ œ: 20%

- HW์„ ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ฐฐ์›Œ์•ผํ•  Skill์ด ์žˆ๋‹ค. 

- ์ œ์ถœํ•˜๋Š” ๊ฒƒ์— ์˜๋ฏธ๋ฅผ ๋‘์ง€ ๋ง ๊ฒƒ.

ํ€ด์ฆˆ: 15%

- HW์„ ํ•˜๋ฉด์„œ ๋ฐฐ์›Œ์•ผ ํ•˜๋Š” ๋‚ด์šฉ์„ Double Check ํ•˜๋Š” ๋ถ€๋ถ„์— ๊ฐ•์ ์„ ๋‘”๋‹ค.

์ค‘๊ฐ„: 30%

๊ธฐ๋ง: 30%

 

๋Œ€๋ถ€๋ถ„์˜ ๊ณผ์ œ๋ฅผ Virtual Box์—์„œ ์‹คํ–‰์„ ํ•  ๊ฒƒ์ธ๋ฐ, vi์™€ gcc๋ฅผ ์ด์šฉํ•œ๋‹ค. 

๊ฐ€์ƒํ™˜๊ฒฝ ์†์—์„œ Ubuntu Linux ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.

 

Homework1

 

3๊ฐœ ์ด์ƒ์˜ ํŒŒ์ผ์„ ์••์ถ•ํ•ด์„œ ์ œ์ถœํ•˜๊ฒŒ ๋œ๋‹ค. Linux์—์„œ๋Š” .tgz ํŒŒ์ผ๋กœ ์••์ถ•ํ•ด์„œ ์ œ์ถœํ•˜๋ฉด ๋œ๋‹ค. 

Linux์˜ ๋ช…๋ น์„ ๊ฐ€์ง€๊ณ  ์••์ถ•์„ ์ง„ํ–‰ํ•˜๋ฉด ๋œ๋‹ค. tar cvfz -- ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค.

์ œ์ถœํ•  ๋•Œ ํ•œ ๋ฒˆ ์••์ถ•์„ ํ’€์–ด์„œ ์ œ๋Œ€๋กœ ์••์ถ•์ด ์ง„ํ–‰๋˜์—ˆ๋Š”์ง€ ํ™•์ธ์„ ํ•˜๊ณ  ์ œ์ถœํ•˜๊ธฐ๋ฅผ ๊ถŒ์žฅํ•œ๋‹ค.

VirtualBox๋ฅผ ๋งŒ๋“ค ๋•Œ ๊ถŒ์žฅ๋˜๋Š” ์‚ฌ์ด์ฆˆ๊ฐ€ 10GB ๋˜๋Š” ๊ฒƒ์œผ๋กœ ์•Œ๊ณ  ์žˆ์ง€๋งŒ ๋ถ€์กฑํ•˜๋‹ค. HardDisk๊ฐ€ ๊ฝ‰ ์ฐจ์„œ Booting์ด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์กด์žฌํ•œ๋‹ค. 32GB ์ •๋„ ์žก์•„์„œ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค. 

 

Problem0

 

์ œ์ถœ์€ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฐ€?

1. Ubuntu ์†์—์„œ FireFox๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ œ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•

2. Host Machine๊ณผ ๊ณต์œ ๋˜๋Š” ํด๋”๋ฅผ ๋งŒ๋“ค์–ด์„œ ํ˜ธ์ŠคํŠธ ์ปดํ“จํ„ฐ์—์„œ ์ œ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉ

--> Shared Folder ๋ถ€๋ถ„ ์ž˜ ์ฝ์–ด๋ณด๊ณ  ์ง„ํ–‰ํ•  ๊ฒƒ.

 

FAQ

 

M1 ๋งฅ๋ถ์˜ ๊ฒฝ์šฐ Virtual Box ์‚ฌ์šฉ์ด ์•ˆ๋œ๋‹ค. UTM ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ด์šฉํ•œ๋‹ค. ARM64 Ubuntu๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

Install ํ•˜๋‹ค๊ฐ€ ํ‚ค๋ณด๋“œ๊ฐ€ ์ธ์‹์ด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”๋ฐ USB ํ‚ค๋ณด๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ธ์‹์ด ๋œ๋‹ค.

Window ๊ณ„์ •์„ ํ•œ๊ธ€ ์•„์ด๋””๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ์ž˜ ๋ฐœ์ƒํ•˜๋Š”๋ฐ, ์„ค์น˜ํ•  ๋•Œ ์˜์–ด ์•„์ด๋””๋กœ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.

 

Problem1

 

๊ฐ์ข… vim ๋ช…๋ น์–ด๋ฅผ ๊ณต๋ถ€ํ•ด๋ณผ ๊ฒƒ.

.vimrc file

Home ๋””๋ ‰ํ† ๋ฆฌ์— vi .vimrc ๋ฅผ ๋งŒ๋“ค์–ด์„œ ์—ด๊ณ  ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ๋ถ™์—ฌ๋†“๋Š”๋‹ค.

set nu : ๋ผ์ธ ๋„˜๋ฒ„๋ฅผ ์ง€์ •ํ•ด์ค€๋‹ค,

set tabstop = 4 : ํƒญํ•  ๋•Œ๋งˆ๋‹ค 4๋ฒˆ ๋„์–ด์“ฐ๊ธฐ

set ai : ์ž๋™ indentation ๊ธฐ๋Šฅ

set background=dark : ๋ฐฐ๊ฒฝ์„ ์–ด๋‘ก๊ฒŒ ๋งŒ๋“ค์–ด์„œ font๊ฐ€ ๋” ๋ฐ๊ฒŒ ๋ณด์ด๊ณ  ๋” ๋ณด๊ธฐ ์ข‹๋‹ค.

syntax on : C์ฝ”๋“œ์— ๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ์ƒ‰์ด ์น ํ•ด์ง„๋‹ค.

 

 

Problem1

1. vim add.c

add.c ํŒŒ์ผ์„ ์—ด์–ด์„œ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ.

2. gcc add.c

sudo apt install gcc make ~~ gcc ์„ค์น˜ ๋ช…๋ น์–ด๋กœ gcc ์„ค์น˜๋ฅผ ํ•ด์•ผ ํ•œ๋‹ค.

์ปดํŒŒ์ผ ๋ช…๋ น์–ด๋กœ add.c๋ฅผ ์ปดํŒŒ์ผ ํ•œ๋‹ค.

3. ./a.out

๋””๋ ‰ํ† ๋ฆฌ๊นŒ์ง€ ์ž‘์„ฑํ•ด์•ผ ํ•˜๋ฏ€๋กœ ./ ๋ฅผ ํฌํ•จํ•ด์•ผ ํ•œ๋‹ค. 

4. tar cvfz hw1_1.tgz add.c a.out 

5. ๋””๋ ‰ํ† ๋ฆฌ ์ด๋ฆ„์„ Test๋กœ ํ•˜๋‚˜ ๋งŒ๋“ ๋‹ค.

6. Test ๊ฒฝ๋กœ๋กœ cd ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด์„œ ์ด๋™ํ•œ๋‹ค. 

7. Test ๊ฒฝ๋กœ์— tar xvfz๋กœ ์••์ถ•์„ ํ’€์–ด๋ณธ๋‹ค. 

ํ™ˆ๋””๋ ‰ํ† ๋ฆฌ์— ์••์ถ•ํŒŒ์ผ์„ ๋งŒ๋“ค์—ˆ์œผ๋ฏ€๋กœ ๋ถ€๋ชจ ๊ฒฝ๋กœ๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ../ ์„ ์‚ฌ์šฉํ•œ๋‹ค.

8. Host Machine์œผ๋กœ ๋ณต์‚ฌํ•˜๋Š” ๋ช…๋ น์–ด

sudo cp hw1_1.tgz <shared folder> ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. (๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰ํ•œ๋‹ค.)

9. shutdown ํ•˜๊ธฐ

Linux์™€ ๊ฐ€์ƒ ๋จธ์‹ ์€ ์ œ๋Œ€๋กœ shutdown์„ ํ•˜์ง€ ์•Š์œผ๋ฉด Booting์ด ์•ˆ๋  ์ˆ˜ ๋„ ์žˆ๋‹ค.

sudo shutdown now ๋ฅผ ํ•˜๋ฉด ์ง€๊ธˆ ๋‹น์žฅ shutdown์„ ํ•˜๋ผ๋Š” ์–˜๊ธฐ.

Virtual Box์—์„œ ์ฐฝ ๋‹ซ๊ธฐ๋ฅผ ๋ˆ„๋ฅด๋ฉด ์˜ต์…˜์ด ๋‚˜์˜จ๋‹ค.

- ํ˜„์žฌ ์‹œ์Šคํ…œ ์ƒํƒœ ์ €์žฅํ•˜๊ธฐ (o)

- ์ปดํ“จํ„ฐ ๋„๊ธฐ ์‹ ํ˜ธ ๋ณด๋‚ด๊ธฐ (x)

- ์‹œ์Šคํ…œ ์ „์› ๋„๊ธฐ (x)

 

OS์˜ ๋ฒ”์œ„๋Š” ์–ด๋””๊นŒ์ง€ ใ…‡๋‹ˆ๊ฐ€.

Os์˜ Kernel์„ ์ •์˜ํ•˜๋Š” ๊ฒƒ์€ ๋ช…ํ™•ํ•˜๋‹ค. Kernel์ด ๋ฌด์—‡์ธ๊ฐ€.

OS๋Š” ๋‘ ๊ฐ€์ง€์˜ ์ฒด์ œ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋Š”๋ฐ, Kernel๊ณผ Kernel์ด ์•„๋‹Œ ์ผ๋ฐ˜์ ์ธ Application

Kernel์€ ์ „์ฒด ์‹œ์Šคํ…œ์„ Manageํ•˜๊ณ  Process, Memory HardWare์— ์ ‘์ด‰ํ•  ๊ถŒํ•œ์ด ์žˆ๊ณ  ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•œ๋‹ค.

System Program๊ณผ Application Program์ด ์žˆ๋Š”๋ฐ, Middleware๋ผ๋Š” ๊ฒƒ์€ database multimedia๋“ฑ๋“ฑ์„ ๋ฌถ์–ด๋‘” ๊ฒƒ์ด ์žˆ๋Š”๋ฐ ์ด๋ฅผ Middleware๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. Kernel์€ ์•„๋‹ˆ๋‹ค. Kernel์€ Middleware๋ณด๋‹ค ๋” ๊ธฐ์ดˆ์ ์ธ ๊ณณ์—์„œ ์ž‘๋™์„ํ•œ๋‹ค. ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์€ Kernel์€ ํ•ญ์ƒ ์ž‘๋™๋˜์–ด์ž‡์–ด์•ผ ํ•œ๋‹ค. Kernel์ด ์ฃฝ์–ด์žˆ์œผ๋ฉด ์ปดํ“จํ„ฐ๊ฐ€ ์ฃฝ์–ด์žˆ๋Š” ๊ฒƒ๊ณผ ๋‹ค๋ฆ„์ด ์—†๋‹ค.

์šด์˜์ฒด์ œ๋ผ๋Š” ๊ฒƒ์€ ์Šค์Šค๋กœ๋Š” ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š์ง€๋งŒ ๋ชจ๋“  ๊ฒƒ์„ Support ํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ๋ชจ๋“  ํ”„๋กœ๊ทธ๋žจ์„ ๋„์™€์ฃผ๋Š” ๊ฒƒ์ด OS๋ผ๋Š” ๊ฒƒ์ด๋‹ค. OS์—†์ด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ธฐ๋Š” ํ•˜์ง€๋งŒ ๊ต‰์žฅํ•œ ์‹ค๋ ฅ์ž๊ฐ€ ์•„๋‹Œ์ด์ƒ ๊ตฌํ˜„ํ•˜๊ธฐ๊ฐ€ ๊ต‰์žฅํžˆ ์–ด๋ ต๋‹ค. Kernel์ด ์—†์œผ๋ฉด Hello World๊ฐ€ ์ถœ๋ ฅ๋  ์ˆ˜ ์—†๋‹ค. ํ™”๋ฉด์€ HardWare์ด๊ณ  Application System์€ HardWare์— ์ ‘๊ทผํ•  ๊ถŒํ•œ์ด ์—†๋‹ค. ์ด ๊ถŒํ•œ์€ Kernel๋งŒ ์กด์žฌํ•˜๊ณ , Kernel์— ์„œ๋น„์Šค๋ฅผ ์š”์ฒญํ•˜๊ณ  Kernel์ด ๊ทธ ์ˆ˜ํ–‰์„ ํ•˜๊ฒŒ ๋œ๋‹ค. Os ์—†์ด ํ™”๋ฉด์— ์ถœ๋ ฅํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์ •๋ง ์–ด๋ ค์šด ์ผ์ด๋‹ค. OS๊ฐ€ ํ•˜๋Š” ์ผ์„ ์†์ˆ˜ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๊ธฐ์— ์–ด๋ ค์šด ๊ฒƒ์ด๋‹ค.

Computer system์ด ๋Œ์•„๊ฐ€๋Š” ๋ฐ ํŽธํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ค€๋‹ค.

Computer HardWare๋ฅผ ๋” ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค. HardWare Resource๋ฅผ ๋” ์‰ฝ๊ฒŒ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด CPUํ•˜๋‚˜๋ฅผ ๊ฐ€์ง€๊ณ  20๊ฐœ์˜ ํ”„๋กœ๊ทธ๋žจ์„ ์–ด๋–ป๊ฒŒ ๋Œ๋ฆฌ๋ฉด ๋ ๊นŒ. "๊ต๋Œ€๋กœ" , CPU๊ฐ€ ๋†€์ง€ ์•Š๊ณ  ๋งŽ์€ ์ผ์„ ํ•˜๊ฒŒ ํ•ด์ค€๋‹ค. PowerPoint๋ฅผ ์—ด์—ˆ๋‹ค๊ณ  ํ•˜๋ฉด CPU๋ฅผ ์กฐ๊ธˆ ์žก์•„๋จน๊ณ  ๋‹ค๋ฅธ ๋ถ€๋ถ„์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•œ ํ”„๋กœ๊ทธ๋žจ์ด ๊ฐ€๋งŒํžˆ CPU๋ฅผ ์•ˆ์“ฐ๋Š” ๋™์•ˆ ๋‹ค๋ฅธ ํ”„๋กœ๊ธ€๋งค์— ๋ฌด์–ธ๊ฐ€๋ฅผ ํ•ด์ค„ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋“ฑ์˜ Resource๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๋ถ„๋ฐฐํ•ด์ฃผ๋Š” ๊ฒƒ์ด OS์˜ ์—ญํ• ์ด ๋œ๋‹ค. OS๋Š” ์ž์‹ ์€ ํŠน๋ณ„ํ•œ ์ผ์€ ์•ˆํ•˜์ง€๋งŒ ํ™˜๊ฒฝ์„ ใ…๋‚˜๋“ค์–ด์„œ COomputer๋ฅผ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค. ๊ทธ๊ฒƒ์ด OS๊ฐ€ ํ•˜๋Š” ์—ญํ•