๐SUBJECT10 [์์คํ ํ๋ก๊ทธ๋๋ฐ/Linux] 10. Signal Timer(1) 1. Signal ์ปค๋์์ ๋ด๋ถ์ ์ผ๋ก ๋ฐ์ํ๋ event๋ฅผ ์ด์ ์ฐ๊ด๋์ด ์๋ ํ๋ก์ธ์ค์๊ฒ signal ํํ๋ก ์ ๋ฌํฉ๋๋ค. user process๋ signal์ ์ฌ์ฉํ์ฌ ๊ธด๊ธํ ๋น๋๊ธฐ์ ์ด๋ฒคํธ(asynchronous urgent event)๋ฅผ ์ธํฐ๋ฝํธ(inturrupt)๋ฅผ ๋ค๋ฃจ๋ ๊ฒ๊ณผ ๊ฐ์ด ๋ค๋ฃฐ ์ ์์ต๋๋ค. ํ๋ก์ธ์ค ์ ์ฅ์์ ์ด signal์ ๋น๋๊ธฐ์ ์ผ๋ก ๊ธด๊ธํ๊ฒ ๋ฐ์ํ๋ event์ ๋๋ค. ์ด event๊ฐ ์์ ์๊ฒ ์ ๋ฌ๋๋ฉด ์ด ์ด๋ฒคํธ๋ฅผ handling ํ ์ ์๋ handling ๋ฉ์ปค๋์ฆ์ ๋์์ํฌ ์ ์์ต๋๋ค. User's view User mode ๋์ -> signal ๋ฐ์ -> user program ์ด inturrupt๋ฅผ ๋ฐ์ -> signal handler(user mode๊ฐ inturru.. 2020. 5. 23. [์์คํ ํ๋ก๊ทธ๋๋ฐ/Linux] 10. POSIX-semaphore 1. Semaphore Semaphore๋ 1960๋ ๋ Dijkstra์ ์ํด ์ค๊ณ๋ ์์คํ ์ฝ์ ๋๋ค. mutex์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ฉํฐ์ค๋ ๋(๋๋ ๋ฉํฐํ๋ก์ธ์ค) ํ๊ฒฝ์์ critical section์ ๊ณต์ ์์์ ์ ๊ทผ์ ์ด๋ฅผ ์ํด ์ฌ์ฉํฉ๋๋ค. semaphore์ ๊ธฐ๋ณธ์ ์ธ ํน์ง์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. mutual exclusion(์ํธ ๋ฐฐ์ )์ ์ํ block/wakeup ์๊ณ ๋ฆฌ์ฆ ํ๋ก์ธ์ค๊ฐ critical section์ ์ ๊ทผํ์ง ๋ชปํ๋ค๋ฉด, ํ๋ก์ธ์ค๋ block ์ํ๊ฐ ๋จ(block : Semaphore queue์ ํด๋น ํ๋ก์ธ์ค๋ฅผ ๋ฑ๋กํ๊ณ , ํ๋ก์ธ์ค๋ CPU์์ release๋จ) ํ๋ก์ธ์ค๊ฐ critical section์ ์ด์ฉํ ํ ๋น ์ ธ๋์ฌ ๋, waiting queue์ ์๋ ํ๋ก์ธ์ค๋ฅผ ๊นจ์ CPU time.. 2020. 5. 23. [์์คํ ํ๋ก๊ทธ๋๋ฐ/Linux] 2. File I/O(1) 1. Linux System Calls ๋ฆฌ๋ ์ค์๋ ์๋์ ๊ฐ์ด ๋ค์ํ ์์คํ ์ฝ์ด ์กด์ฌํฉ๋๋ค. File descriptor I/O open(); close(); creat(); read(); write(); seek(); // random access fcntl(); // for file/record locking Process control Thread programming IPC Signal handling Memory management Synchronization Time management Network socket API(TCP, UDP) ๊ทธ ์ค File descriptor I/O์ ๋ํด ์์๋ด ๋๋ค. 2. System Calls & Library Calls for File I/O ํ์ผ๊ณผ ๊ด๋ จ๋.. 2020. 5. 6. [์์คํ ํ๋ก๊ทธ๋๋ฐ/Linux] 1-3. Linux Shell & Basic Commands 1. Shell? Shell์ด๋ ์ฌ์ฉ์๊ฐ ์ด์์ฒด์ ์ ์ ๊ทผํ ์ ์๋๋ก ๋ง๋ค์ด์ค ์ธํฐํ์ด์ค์ ๋๋ค. ๋ฆฌ๋ ์ค ์ปค๋์ ์ ์ ๊ฐ ์ ์ ํ๋ก๊ทธ๋จ๊ณผ ์ธํฐํ์ด์ฑ ํ๊ธฐ ์ํด์ system call์ด๋ผ๋ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋๋ฐ, ์ด system call์ functional level์์์ ์ธํฐํ์ด์ค์ด๊ธฐ ๋๋ฌธ์ ์ ์ ๊ฐ ์ด๋ฅผ ์กฐ๊ธ ๋ ์ฝ๊ฒ ๋ช ๋ น์ด ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉํ ์ ์๋๋ก ์ ๊ณตํ ๊ฒ์ด ๋ฐ๋ก shell์ ๋๋ค. shell์ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. - ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ command line์ผ๋ก ์คํ์์ผ์ค ์ ์์ - ์ด์์ฒด์ ์์ ์๋ file, process๋ค์ ๊ด๋ฆฌ 2. Commonly Used shells ๋ฆฌ๋ ์ค๋ฅผ ์ค์นํ๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๋ฌ ๊ฐ์ง shell ํ๋ก๊ทธ๋จ์ด ์ค์น๋์ด ์์ต๋๋ค. System utility๋ค์.. 2020. 5. 5. [๋ฐ์ดํฐํต์ ] 3.2 ์ฃผ๊ธฐ ์๋ ๋ก๊ทธ ์ ํธ(2) 5. ๋ณตํฉ ์ ํธ ํ๋์ ์ ํธ๋ฅผ ๊ฐ๋ ์ ํํ๋ ๋ฐ์ดํฐ ํต์ ํ๊ฒฝ์์ ์ ํฉํ์ง ์์ต๋๋ค. ์ค์ ํต์ ์์ ๋ณด๋ด๋ ์ ํธ๋ ์ฌ๋ฌ ๊ฐ์ ๋จ์ ์ ํํ๋ค๋ก ๋ง๋ค์ด์ง ๋ณตํฉ ์ ํธ๊ฐ ํ์ํฉ๋๋ค. ๊ทธ๋ฌํ ๋ณตํฉ ์ ํธ์ ํ์ ๋ถ์ํ๋ ๊ฒ์ด Fourier ๋ถ์์ ๋๋ค. ํธ๋ฆฌ์ ๋ถ์์ ์ํ๋ฉด ์์์ ๋ณตํฉ ์ ํธ๋ ์๋ก ๋ค๋ฅธ ์ฃผํ์, ์งํญ, ์์์ ๊ฐ๋ ๋จ์ ์ ํํ๋ค์ ์กฐํฉ์ผ๋ก ๋ํ๋ผ ์ ์์ต๋๋ค. ๋ณตํฉ ์ ํธ๋ ์ฃผ๊ธฐ์ ์ผ ์๋ ์๊ณ ๋น์ฃผ๊ธฐ์ ์ผ ์๋ ์์ต๋๋ค. ์ฃผ๊ธฐ ๋ณตํฉ ์ ํธ๋ ์ฃผ๊ธฐ๋ค์ด ์ ์ ๊ฐ์ ๊ฐ๋ ์์ฐจ์ ์ธ ๋จ์ ์ ํํ๋ค๋ก ๋ถํด๋ ์ ์์ต๋๋ค. ๋น์ฃผ๊ธฐ ๋ณตํฉ ์ ํธ๋ ์ฐ์์ ์ธ ์ค์ ๊ฐ์ ๊ฐ๋ ์ฃผํ์์ ์งํญ์ผ๋ก ๋ ๋ฌดํ์ ์ ํํ๋ค๋ก ๋ถํด๋ฉ๋๋ค. ๋จผ์ ์ฃผ๊ธฐ ์ ํธ์ ๋ํด ์ดํด๋ณด๊ธฐ ์ํด fourier series์ ๋ํด ์์๋ด ๋๋ค. ์์์ ์ดํด๋ณด๋ฉด.. 2020. 4. 26. [๋ฐ์ดํฐํต์ ] 3.2 ์ฃผ๊ธฐ ์๋ ๋ก๊ทธ ์ ํธ(1) ์๋ ๋ก๊ทธ ์ ํธ๋ ๋จ์ ์ ํธ์ ๋ณตํฉ ์ ํธ๋ก ๋๋ฉ๋๋ค. ์ ํํ(์ฌ์ธํ, sine wave)์ ๊ฐ์ ๋จ์ ์๋ ๋ก๊ทธ ์ ํธ๋ ๋ ์ด์ ๋จ์ํ ์ ํธ๋ก ๋๋ ์ ์์ผ๋, ๋ณตํฉ(composite) ์๋ ๋ก๊ทธ ์ ํธ๋ ์ฌ๋ฌ ๊ฐ์ ์ ํํ๋ก ๋๋ ์ ์์ต๋๋ค. (์ฐธ๊ณ : Fourier series) 1. ์ ํํ ์ฌ์ธํ(sine wave, ์ ํํ)๋ ์๋ ๋ก๊ทธ ์ฃผ๊ธฐ ์ ํธ์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ํํ ๋จ์ ์๋ ๋ก๊ทธ ์ ํธ(์ ํํ) s๋ ์๊ฐ ์งํญ, A๋ ์ต๋ ์งํญ, f๋ ์ฃผํ์, Φ๋ ์์์ด๋ผ๊ณ ํ ๋, 1) ์ต๋ ์งํญ ์ ์กํ๋ ์ ํธ์ ์๋์ง์ ๋น๋กํ๋ ๊ฐ์ฅ ํฐ ์ธ๊ธฐ์ ์ ๋๊ฐ ์ ๊ธฐ ์ ํธ์ ๊ฒฝ์ฐ, ์ต๋ ์งํญ์ ์ ์(v)์ผ๋ก ์ธก์ ๐ฆ ์์ 3.1 ์ ๊ณฑ ํ๊ท ๊ฐ(rms, root mean square) ๋ฏธ๊ตญ์์ ๊ฐ์ ์ ์ ๊ธฐ๋ ์ต๋ ์งํญ 155์์ .. 2020. 4. 25. [๋ฐ์ดํฐํต์ ] 3.1 ๋ฐ์ดํฐ์ ์ ํธ ๋ฌผ๋ฆฌ์ธต ๊ฐ์ ๋ฌผ๋ฆฌ์ธต์ ์ฃผ์ ๊ธฐ๋ฅ์ ์ ์ก ๋งค์ฒด๋ฅผ ํตํ์ฌ ์ ์๊ธฐ ์ ํธ ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ๊ฒ์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฌ๋/์์ฉ์ด ๋ง๋ค์ด ๋ด๊ฑฐ๋ ์ด์ฉํ ์ ์๋ ๋ฐ์ดํฐ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ์ ๋ฌ๋ ์ ์๋ ํํ๊ฐ ์๋๋๋ค. ๋ฐ๋ผ์ ์ ์ก๋งค์ฒด๋ ๋ฌผ๋ฆฌ์ ์ธ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ์๋์ง๋ฅผ ์ ๋ฌํ๋ ์์ ์ ํฉ๋๋ค. ๋งค์ฒด ์์ ์ ์กํ๊ธฐ ์ํด์๋ ๋ฐ์ดํฐ๋ฅผ ์ ํธ๋ก ๋ฐ๊พธ๋ ์์ ์ด ํ์ํฉ๋๋ค. 3์ฅ์์๋ ๋ฐ์ดํฐ์ ์ ํธ์ ๊ด๊ณ๋ฅผ ์ดํด๋ณด๊ณ , ์ ํธ์ ์ฌ๋ฌ๊ฐ์ง ํน์ฑ์ ๋ํด ์์๋ด ๋๋ค. ๋ฐ์ดํฐ๊ฐ ์ ์ก๋๊ธฐ ์ํด์๋ ์ ์๊ธฐ์ ์ ํธ(electromagnetic signals)์ ํํ๋ก ๋ฐ๋์ด์ผ ํฉ๋๋ค. ๋ฐ์ดํฐ์ ๋ฐ์ดํฐ๋ฅผ ํํํ๋ ์ ํธ๋ ์๋ ๋ก๊ทธ(analog) ๋๋ ๋์งํธ(digital) ํํ์ผ ์ ์์ต๋๋ค. 1. ์๋ ๋ก๊ทธ์ ๋์งํธ ๋ฐ์ดํฐ ์๋ ๋ก๊ทธ ๋ฐ์ดํฐ(.. 2020. 4. 25. [์์คํ ํ๋ก๊ทธ๋๋ฐ/Linux] 1. Introduction ์์คํ ํ๋ก๊ทธ๋๋ฐ์ด๋ ์ด์์ฒด์ ์ ๊ฐ์ ์ปค๋ ๋ฐ ํต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ง์ ์ฌ์ฉํ์ฌ ํ์ ๋ ๋ฒจ์์ ๋์ํ๋ ์์คํ ์ํํธ์จ์ด๋ฅผ ํ๋ก๊ทธ๋๋ฐํ๋ ๊ธฐ์ ์ ์๋ฏธํฉ๋๋ค. ์ด๋ ํ์ ์ด์์ฒด์ ์ ๋ฐ์ ํ ์ฐ๊ด์ด ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด์์ฒด์ (Operating System, OS)์ ์ญํ ๊ณผ OS์์ ์ ๊ณตํ๋ ์์คํ ์ฝ์ ์ดํดํ๊ณ , OS์์ ์ ๊ณตํ๋ ์์คํ ์ฝ์ ์ข ๋ฅ๋ฅผ ํ์ ํ์ฌ ๊ฐ ๋ชฉ์ ์ ๋ง๋ ์์คํ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. 1. Operating System ์ด์์ฒด์ ๋ ์ปดํจํฐ์ ์ฌ์ฉ์(๋๋ ์ ํ๋ฆฌ์ผ์ด์ ํ๋ก๊ทธ๋จ)์ ์ปดํจํฐ ํ๋์จ์ด ์ฌ์ด์ ์ค๊ฐ์ ์ญํ ์ ํ๋ ํ๋์ ํฐ ํ๋ก๊ทธ๋จ์ ๋๋ค. ๐ฆ ์ด์์ฒด์ ์ ๋ชฉํ - ์ปดํจํฐ ์์คํ ์ ์ฌ์ฉํ๊ธฐ ํธ๋ฆฌํ๊ฒ ํด ์ค - ์ปดํจํฐ ํ๋์จ์ด๋ฅผ ๋ฅ๋ฅ ์ ์ผ๋ก ์ฌ์ฉํจ ๐ฆ ์ด์์ฒด์ ์.. 2020. 4. 24. [์ปดํจํฐ๊ตฌ์กฐ] 1-(2) CPU์ ์ฑ๋ฅ๋ถ์ ๐ก ์ฑ๋ฅ์ ์ ์ ๋ ๋ฐ์คํฌํฑ ์ปดํจํฐ์์ ๊ฐ์ ํ๋ก๊ทธ๋จ์ ์คํ์ํค๋ ๊ฒฝ์ฐ, ๋จผ์ ๋๋๋ ์กฑ์ด ๋ ๋น ๋ฅธ ์ปดํจํฐ๋ผ๊ณ ํ ์ ์์ ๊ทธ๋ฌ๋ ์ฌ๋ฌ ๋์ ์๋ฒ๋ฅผ ๊ฐ์ง๊ณ ์ฌ๋ฌ ์ฌ์ฉ์์ ์์ ์ ์ฒ๋ฆฌํ๋ ๋ฐ์ดํฐ์ผํฐ๋ฅผ ์ด์ํ ๋์๋ ํ๋ฃจ ๋์ ๋ ๋ง์ ์์ ์ ์ฒ๋ฆฌํ๋ ์ปดํจํฐ๊ฐ ๋ ๋น ๋ฅธ ์ปดํจํฐ์ - ์ปดํจํฐ ์ฌ์ฉ์ ๊ฐ์ธ์ ์ ์ฅ์์๋ ์๋ต ์๊ฐ(response time)-์์ ๊ฐ์์์ ์ข ๋ฃ๊น์ง์ ์๊ฐ-์ฆ ์คํ์๊ฐ(execution time)์ด ์ค์ํจ - ๋ฐ์ดํฐ์ผํฐ ๊ด๋ฆฌ์์๊ฒ๋ ์ฒ๋ฆฌ๋(throughput) ํน์ ๋์ญํญ(bandwide)-์ผ์ ํ ์๊ฐ ๋์ ์ฒ๋ฆฌํ๋ ์์ ์ ์-์ด ๋ ์ค์ํจ ๐ ์๋ต ์๊ฐ์ด ๋ ์ค์ํ ๊ฐ์ธ ํด๋์ฉ ๊ธฐ๊ธฐ์ ์ฒ๋ฆฌ๋์ด ๋ ์ค์ํ ์๋ฒ์ ์ฑ๋ฅ์ ํ๊ฐํ ๋๋ ๋ค๋ฅธ ์ฑ๋ฅ ์ฒ๋๋ฅผ ์ฌ์ฉ ๐ก ์ฒ๋ฆฌ๋๊ณผ ์๋ต ์๊ฐ - ์.. 2020. 4. 8. ์ด์ 1 2 ๋ค์