728x90
์ด์์ฒด์ ๊ฐ์
์ด์์ฒด์ ์ ์ญํ

- System management (์์คํ ๋ณดํธ)
์ปดํจํฐ ์์คํ ์ ๊ตฌ์ฑ


์ด์์ฒด์ ์ ๊ตฌ๋ถ
- ๋์ ์ฌ์ฉ์ ์
- Single-user system
- Multi-user system
- ๋์ ์คํ ํ๋ก์ธ์ค ์
- Single-tasking system
- Multi-tasking system(Multiprogramming system)
- ์์
์ํ ๋ฐฉ์
- Batch Processing system
- Time-sharing system
- Distributed processing system
- Real-time system
๋์ ์ฌ์ฉ์ ์
- Single-user system
- ํ ๋ช
์ ์ฌ์ฉ์๋ง ์์คํ
์ฌ์ฉ ๊ฐ๋ฅ
- ํ ๋ช ์ ์ฌ์ฉ์๊ฐ ๋ชจ๋ ์์คํ ์์ ๋ ์
- ์์ ๊ด๋ฆฌ ๋ฐ ์์คํ ๋ณดํธ ๋ฐฉ์์ด ๊ฐ๋จํจ
- ๊ฐ์ธ์ฉ ์ฅ๋น(PC, mobile) ๋ฑ์ ์ฌ์ฉ
- ํ ๋ช
์ ์ฌ์ฉ์๋ง ์์คํ
์ฌ์ฉ ๊ฐ๋ฅ
- Multi-user system
- ๋์์ ์ฌ๋ฌ ์ฌ์ฉ์๋ค์ด ์์คํ
์ฌ์ฉ
- ๊ฐ์ข ์์คํ ์์๋ค์ ๋ํ ์์ ๊ถํ ๊ด๋ฆฌ ํ์
- ๊ธฐ๋ณธ์ ์ผ๋ก Multi-tasking ๊ธฐ๋ฅ ํ์
- os์ ๊ธฐ๋ฅ ๋ฐ ๊ตฌ์กฐ๊ฐ ๋ณต์ก
- ์๋ฒ, ํด๋ฌ์คํฐ ์ฅ๋น ๋ฑ์ ์ฌ์ฉ
- Unix, Linux, Windows server ๋ฑ
- ๋์์ ์ฌ๋ฌ ์ฌ์ฉ์๋ค์ด ์์คํ
์ฌ์ฉ
๋์ ์คํ ํ๋ก์ธ์ ์
- ๋จ์ผ ์์
(Single-tasking system)
- ์์คํ
๋ด์ ํ๋์ ์์
๋ง ์กด์ฌ
- ํ๋์ ํ๋ก๊ทธ๋จ ์คํ์ ๋ง์น ๋ค์ ๋ค๋ฅธํ๋ก๊ทธ๋จ์ ์คํ
- ์ด์์ฒด์ ์ ๊ตฌ์กฐ๊ฐ ๊ฐ๋จ
- MS-DOS
- ์์คํ
๋ด์ ํ๋์ ์์
๋ง ์กด์ฌ
- ๋ค์ค ์์
(Multi-tasking system)
- ๋์์ ์ฌ๋ฌ ์์
(ํ๋ก์ธ์ค)์ ์ํ ๊ฐ๋ฅ
- ์์ ๋ค ์ฌ์ด์ ๋์ ์ํ, ๋๊ธฐํ ๋ฑ์ ๊ด๋ฆฌํด์ผ ํจ
- ์ด์์ฒด์ ์ ๊ธฐ๋ฅ ๋ฐ ๊ตฌ์กฐ๊ฐ ๋ณต์ก
- Unix/Linux, Windows ๋ฑ
- ๋์์ ์ฌ๋ฌ ์์
(ํ๋ก์ธ์ค)์ ์ํ ๊ฐ๋ฅ
์์ ์ํ ๋ฐฉ์
- Batch processing system
- ์ผ๊ด์ฒ๋ฆฌ ์์คํ
- Time-sharing system
- ์๋ถํ ์์คํ
- Distributed processing system
- ๋ถ์ฐ์ฒ๋ฆฌ ์์คํ
- Real-time system
- ์ค์๊ฐ ์์คํ
์์ฐจ ์ฒ๋ฆฌ (No OS ~ 1940s)
- ์ด์์ฒด์ ๊ฐ๋
์กด์ฌํ์ง ์์
- ์ฌ์ฉ์๊ฐ ๊ธฐ๊ณ์ด๋ก ์ง์ ํ๋ก๊ทธ๋จ ์์ฑ
- ์ปดํจํฐ์ ํ์ํ ๋ชจ๋ ์์
ํ๋ก๊ทธ๋จ์ ํฌํจ
- ํ๋ก์ธ์์๋ ๋ช ๋ น์ด ์ ์ฅ ๋ฐฉ๋ฒ, ๊ณ์ฐ ๋์, ๊ฒฐ๊ณผ ์ ์ฅ ์์น์ ๋ฐฉ๋ฒ, ์ถ๋ ฅ ์์ , ์์น ๋ฑ
- ์คํํ๋ ์์
๋ณ ์์ฐจ ์ฒ๋ฆฌ
- ๊ฐ๊ฐ์ ์์ ์ ๋ํ ์ค๋น ์๊ฐ์ด ์์
Batch System(1950s~1960s)
- ๋ชจ๋ ์์คํ ์ ์ค์(์ ์๊ณ์ฐ์ ๋ฑ)์์ ๊ด๋ฆฌ ๋ฐ ์ด์
- ์ฌ์ฉ์์ ์์ฒญ ์์
(์ฒ๊ณต์นด๋ ๋ฑ)์ ์ผ์ ์๊ฐ ๋ชจ์ ๋์๋ค๊ฐ ํ๋ฒ์ ์ฒ๋ฆฌ
- ์์คํ ์งํฅ์
- ์ฅ์
- ๋ง์ ์ฌ์ฉ์๊ฐ ์์คํ ์์ ๊ณต์
- ์ฒ๋ฆฌ ํจ์จ(throughput) ํฅ์
- ๋จ์
- ์์ฐ์ฑ(productivity) ์ ํ
- ๊ฐ์ ์ ํ์ ์์ ๋ค์ด ๋ชจ์ด๊ธฐ๋ฅผ ๊ธฐ๋ค๋ ค์ผ ํจ
- ๊ธด ์๋ต์๊ฐ (turnaround time)
- ์ฝ 6์๊ฐ (์์ ์ ์ถ์์ ๊ฒฐ๊ณผ ์ถ๋ ฅ๊น์ง์ ์๊ฐ)
- ์์ฐ์ฑ(productivity) ์ ํ
Time Sharing System(1960s~1970s)

์ฌ๋ฌ ์ฌ์ฉ์๊ฐ ์์์ ๋์์ ์ฌ์ฉ
- os๊ฐ ํ์ผ ์์คํ ๋ฐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
์ฌ์ฉ์ ์งํฅ์
- ๋ํํ ์์คํ
- ๋จ๋ง๊ธฐ ์ฌ์ฉ
์ฅ์
- ์๋ต์๊ฐ(response time) ๋จ์ถ
- ์์ฐ์ฑ(productivity) ํฅ์
- ํ๋ก์ธ์ ์ ํด ์๊ฐ ๊ฐ์
๋จ์
- ํต์ ๋น์ฉ ์ฆ๊ฐ
- ํต์ ์ ๋น์ฉ, ๋ณด์ ๋ฌธ์ ๋ฑ
- ๊ฐ์ธ ์ฌ์ฉ์ ์ฒด๊ฐ ์๋ ์ ํ
- ๋์ ์ฌ์ฉ์์ ์ฆ๊ฐ -> ์์คํ ๋ถํ ์ฆ๊ฐ -> ๋๋ ค์ง(๊ฐ์ธ๊ด์ )
- ํต์ ๋น์ฉ ์ฆ๊ฐ
Personal Computing
- ๊ฐ์ธ์ด ์์คํ ์ ์ฒด ๋ ์
- CPU ํ์ฉ๋ฅ (utilization)์ด ๊ณ ๋ ค์ ๋์์ด ์๋
- OS๊ฐ ์๋์ ์ผ๋ก ๋จ์ํจ
- ๋ค์ํ ์ฌ์ฉ์ ์ง์ ๊ธฐ๋ฅ ์ง์
- ์ฅ์
- ๋น ๋ฅธ ์๋ต์๊ฐ
- ๋จ์
- ์ฑ๋ฅ์ด ๋ฎ์
Parallel Processing System
- ๋จ์ผ ์์คํ
๋ด์์ ๋ ์ด์์ ํ๋ก์ธ์ ์ฌ์ฉ
- ๋์์ ๋ ์ด์์ ํ๋ก์ธ์ค ์ง์
- ๋ฉ๋ชจ๋ฆฌ ๋ฑ์ ์์ ๊ณต์
- ์ฌ์ฉ ๋ชฉ์
- ์ฑ๋ฅ ํฅ์
- ์ ๋ขฐ์ฑ ํฅ์ (ํ๋๊ฐ ๊ณ ์ฅ๋๋ ์ ์ ๋์ ๊ฐ๋ฅ)
- ํ๋ก์ธ์ ๊ฐ ๊ด๊ณ ๋ฐ ์ญํ ๊ด๋ฆฌ ํ์
Distributed Processing System
- ๋คํธ์ํฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ๋ณ๋ ฌ์ฒ๋ฆฌ ์์คํ
(Loosely-coupled system)
- ๋ฌผ๋ฆฌ์ ์ธ ๋ถ์ฐ, ํต์ ๋ง ์ด์ฉํ ์ํธ ์ฐ๊ฒฐ
- ๊ฐ๊ฐ ์ด์์ฒด์ ํ์ฌํ ๋ค์์ ๋ฒ์ฉ ์์คํ ์ผ๋ก ๊ตฌ์ฑ
- ์ฌ์ฉ์๋ ๋ถ์ฐ์ด์์ฒด์ ๋ฅผ ํตํด ํ๋์ ํ๋ก๋ฅดใ ใ , ์์์ฒ๋ผ ์ฌ์ฉ ๊ฐ๋ฅ(์ํ์ฑ, transparency)
- ๊ฐ ๊ตฌ์ฑ ์์๋ค๊ฐ์ ๋ ๋ฆฝ์ฑ์ ์ง, ๊ณต๋ ์์ ๊ฐ๋ฅ
- Cluster system, client-server system. P2P ๋ฑ
- ์ฅ์
- ์์ ๊ณต์ ๋ฅผ ํตํ ๋์ ์ฑ๋ฅ
- ๊ณ ์ ๋ขฐ์ฑ, ๋์ ํ์ฅ์ฑ
- ๋จ์
- ๊ตฌ์ถ ๋ฐ ๊ด๋ฆฌ๊ฐ ์ด๋ ค์
Real-time Systems
- ์์
์ฒ๋ฆฌ์ ์ ํ ์๊ฐ(deadline)์ ๊ฐ๋ ์์คํ
- ์ ํ ์๊ฐ ๋ด์ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด ์์ ํ์ฉ ํจ์จ๋ณด๋ค ์ค์
- ์์
์ ์ข
๋ฅ
- Hard real-time task
- ์๊ฐ ์ ์ฝ์ ์งํค์ง ๋ชปํ๋ ๊ฒฝ์ฐ ์์คํ ์ ์น๋ช ์ ์ํฅ
- ์) ๋ฐ์ ์ ์ ์ด, ๋ฌด๊ธฐ ์ ์ด ๋ฑ
- Soft real-time task
- ๋์์ ์ฌ์ ๋ฑ
- Non real-time task
- Hard real-time task
์ด์์ฒด์ ์ ๊ตฌ์กฐ
์ปค๋(Kernel)
- OS์ ํต์ฌ ๋ถ๋ถ(๋ฉ๋ชจ๋ฆฌ ์์ฃผ)
- ๊ฐ์ฅ ๋น๋ฒํ๊ฒ ์ฌ์ฉ๋๋ ๊ธฐ๋ฅ๋ค ๋ด๋น
- ์์คํ ๊ด๋ฆฌ(processor, memory) ๋ฑ
- ๋์์ด
- ํต, ๊ด๋ฆฌ์ ํ๋ก๊ทธ๋จ, ์์ฃผ ํ๋ก๊ทธ๋จ, ์ ์ด ํ๋ก๊ทธ๋จ ๋ฑ
- OS์ ํต์ฌ ๋ถ๋ถ(๋ฉ๋ชจ๋ฆฌ ์์ฃผ)
์ ํธ๋ฆฌํฐ(Utility)
- ๋น์์ฃผ ํ๋ก๊ทธ๋จ
- UI๋ฑ ์๋น์ค ํ๋ก๊ทธ๋จ
Major functions of Kernel
- Resource Mgmt
- Hardware resource management
- Processor, memory, I/O devices, etc.
- software resource management
- files, messages, processes, etc.
- Hardware resource management
- Resource Mgmt
๋จ์ผ ๊ตฌ์กฐ

- ์ฅ์
- ์ปค๋ ๋ด ๋ชจ๋๊ฐ ์ง์ ํต์
- ํจ์จ์ ์์ ๊ด๋ฆฌ ๋ฐ ์ฌ์ฉ
- ์ปค๋ ๋ด ๋ชจ๋๊ฐ ์ง์ ํต์
- ๋จ์
- ์ปค๋์ ๊ฑฐ๋ํ
- ์ค๋ฅ ๋ฐ ๋ฒ๊ทธ, ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ ๋ฑ ์ ์ง๋ณด์๊ฐ ์ด๋ ค์
- ๋์ผ ๋ฉ๋ชจ๋ฆฌ์ ๋ชจ๋ ๊ธฐ๋ฅ์ด ์์ด, ํ ๋ชจ๋์ ๋ฌธ์ ๊ฐ ์ ์ฒด ์์คํ
์ ์ํฅ(์ : ์
์ฑ์ฝ๋)
- ์ปค๋์ ๊ฑฐ๋ํ
๋ง์ดํฌ๋ก ์ปค๋ ๊ตฌ์กฐ
- ์ปค๋์ ํฌ๊ธฐ ์ต์ํ
- ํ์ ๊ธฐ๋ฅ๋ง ํฌํจ
- ๊ธฐํ ๊ธฐ๋ฅ์ ์ฌ์ฉ์ ์์ญ์์ ์ํ
์ด์์ฒด์ ์ ๊ธฐ๋ฅ
Process Management
- ํ๋ก์ธ์ค (Process)
- ์ปค๋์ ๋ฑ๋ก๋ ์คํ ๋จ์ (์คํ ์ค์ธ ํ๋ก๊ทธ๋จ)
- ์ฌ์ฉ์ ์์ฒญ/ํ๋ก๊ทธ๋จ์ ์ํ ์ฃผ์ฒด(entity)
- OS์ ํ๋ก์ธ์ค ๊ด๋ฆฌ ๊ธฐ๋ฅ
- ์์ฑ/์ญ์ , ์ํ๊ด๋ฆฌ
- ์์ ํ ๋น
- ํ๋ก์ธ์ค ๊ฐ ํต์ ๋ฐ ๋๊ธฐํ(synchronization)
- ๊ต์ฐฉ ์ํ(deadlock) ํด๊ฒฐ
- ํ๋ก์ธ์ค ์ ๋ณด ๊ด๋ฆฌ
- PCB(Process Control Block)
Processor Management
- ์ค์ ์ฒ๋ฆฌ ์ฅ์น (CPU)
- ํ๋ก๊ทธ๋จ์ ์คํํ๋ ํต์ฌ ์์
- ํ๋ก์ธ์ค ์ค์ผ์ค๋ง (Scheduling)
- ์์คํ ๋ด์ ํ๋ก์ธ์ค ์ฒ๋ฆฌ ์์ ๊ฒฐ์
- ํ๋ก์ธ์ ํ ๋น ๊ด๋ฆฌ
- ํ๋ก์ธ์๋ค์ ๋ํ ํ๋ก์ธ์ ํ ๋น
- ํ ๋ฒ์ ํ๋์ ํ๋ก์ธ์ค๋ง ์ฌ์ฉ ๊ฐ๋ฅ
- ํ๋ก์ธ์๋ค์ ๋ํ ํ๋ก์ธ์ ํ ๋น
Memory Management
- ์ฃผ๊ธฐ์ต์ฅ์น
- ์์ ์ ์ํ ํ๋ก๊ทธ๋จ ๋ฐ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ ค ๋๋ ๊ณต๊ฐ
- Multi-user, Multi-tasking ์์คํ
- ํ๋ก์ธ์ค์ ๋ํ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐ ํ์
- ๋ฉ๋ชจ๋ฆฌ ์ฌ์ ๊ณต๊ฐ ๊ด๋ฆฌ
- ๊ฐ ํ๋ก์ธ์ค์ ํ ๋น ๋ฉ๋ชจ๋ฆฌ ์์ญ ์ ๊ทผ ๋ณดํธ
- ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐฉ๋ฒ(Scheme)
- ์ ์ฒด ์ ์ฌ
- ์ฅ์ : ๊ตฌํ์ด ๊ฐ๋จ / ๋จ์ : ์ ํ์ ๊ณต๊ฐ
- ์ผ๋ถ ์ ์ฌ (virtual memory concept)
- ํ๋ก๊ทธ๋จ ๋ฐ ๋ฐ์ดํฐ์ ์ผ๋ถ๋ง ์ ์ฌ
- ์ฅ์ : ๋ฉ๋ชจ๋ฆฌ์ ํจ์จ์ ํ์ฉ / ๋จ์ : ๋ณด์กฐ๊ธฐ์ต ์ฅ์น ์ ๊ทผ ํ์
- ์ ์ฒด ์ ์ฌ
File Management
- ํ์ผ : ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ์ ์ฅ ๋จ์
- ์ฌ์ฉ์ ๋ฐ ์์คํ ์ ํ์ผ ๊ด๋ฆฌ
- ๋๋ ํ ๋ฆฌ(directory) ๊ตฌ์กฐ ์ง์
- ํ์ผ ๊ด๋ฆฌ ๊ธฐ๋ฅ
- ํ์ผ ๋ฐ ๋๋ ํ ๋ฆฌ ์์ฑ/์ญ์
- ํ์ผ ์ ๊ทผ ๋ฐ ์กฐ์
- ํ์ผ์ ๋ฌผ๋ฆฌ์ ์ ์ฅ ๊ณค๊ฐ์ผ๋ก ์ฌ์(mapping)
- ๋ฐฑ์ ๋ฑ
I/O Management
- ์
์ถ๋ ฅ(I/O) ๊ณผ์
- os๋ฅผ ๋ฐ๋์ ๊ฑฐ์ณ์ผ ํจ
- os๋ฅผ ๋ฐ๋์ ๊ฑฐ์ณ์ผ ํจ
'TIL (Today I Learned) > OS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[OS] ์ปดํจํฐ ์์คํ ๊ฐ์ (0) | 2021.10.31 |
---|