OS Structure
포스트 난이도: HOO_Middle
# Monolithic Systems
Monolithic systems는 Single 프로그램으로 Kernel mode 안에 있다.
그렇다 보니 관리하는데 어려움이 있으며 보완에 취약한 특징을 가지고 있다.
Procedures들이 하나로 연결되어 있으며 Proecdures들이 각각 확인이 가능하다.
# Layered Systems
Layered system은 계층적 구조를 가지고 있다.
예를 들어 아래와 같은 Layers들로 구성되어 있다.
Layer | Function |
5 | The operator |
4 | User programs |
3 | I/O management |
2 | Operator-process communication |
1 | Memory and drum management |
0 | Processor allocation and multiprogramming |
# Microkernels
Kernel의 Minimizes인 OS 구조로 아래와 같은 특징을 가지고 있다.
- Less buggy
- Less catastrophic
- High reliability
- Better security
Microkernel은 interrupts, processes scheduling, IPC를 중점적으로 다루며, 나머지는 User mode에서 다룬다.
# Client-server Model
Client-server model은 Network를 통해서 client를 서버로 전달하는 OS 구조이다.
Client, File server, Process sever, Terminal server가 각기 다른 Machine에 있기 때문에 Network를 통해서 Messages들을 전달한다.
한마디로 하나의 kernel에 모든 것이 존재하는 것이 아니라 Network를 통해서 다른 Kernel들과 정보를 공유하여 전달한다는 것이다.
# Virtual Machines
Virtual machines은 각기 다른 OS에서 운영이 이루어지며, Time sharing과 Multiprogramming이 되는 특징을 가지고 있다.
Virtual machines은 Bare hardware 작업을 수행하게 된다.
Virtual machines에서 OS를 사용하는 type은 서로 다른 OS를 사용하는 type 1 hypervisor과 guest OS와 Host OS가 존재하는 type 2 hypervisor가 있다.
Multiple OS나 Hosting OS가 존재하는 이러한 types들은 보안성이 좋다는 장점을 가지고 있다.
'Computer Science' 카테고리의 다른 글
[Operating System] Preemptive Scheduling Algorithm (0) | 2022.03.04 |
---|---|
[Operating System] Scheduling (0) | 2022.03.04 |
[Operating System] System Calls Example Tables (0) | 2022.03.04 |
[Operating System] Shell과 System Call: Prompt, POSIX (0) | 2022.03.04 |
[Operating System] Process: Process Tree, Child Processes, Root Processes (0) | 2022.03.04 |
댓글