728x90
반응형
범용 운영체제의 구조의 다양한 방법
- 간단한 구조 → MS-DOS
- 좀 더 복잡한 제한적 구조 → UNIX
- 계층적 접근 구조 → 추상화 개념
- 마이크로 커널(Microkernel) 접근 구조 → Mach
MS-DOS 구조
- ‘모듈’(Moudles)로 잘 분할되지 않았음 → 모놀리식 커널(Monolithic Kernel)
- 커널의 구성 요소들은 각 요소들 간의 보호 기능 없이 한 곳에 위치
- 악의적인 프로그램의 공격을 받기 쉬움, 잘못되면 시스템 전체가 다운됨
계층적 접근 (Layered Approach)
- 주된 장점은 ‘모듈화’(Modularity)
- 특정 기능 집한의 구현 세부 사항에 대한 ‘은폐’(Hiding) 방법
- 각 계층은 자신의 하위 층의 서비스와 기능(연산)만을 사용
장점
- ‘시스템 검증’과 ‘디버깅 작업’을 단순화
단점
- 비효율적, 처리 시간 오버헤드( 트랩(Trap)의 연속)
복잡한 구조 - 유닉스(UNIX)
유닉스 시스템은 두 부분으로 구성
- 시스템 프로그램 (Systems Programs)
- 커널 (The Kernel)
- 시스템 호출 인터페이스 아래와 물리적 H/W 위의 모든 것이 커널(Kernel)을 구성
- 시스템 호출(System Call)을 통해 파일 시스템, CPI스케줄링, 메모리 관리 등 OS기능을 제공
Linux 시스템 구조 (모놀리식 +모듈식)
마이크로 커널(Microkernel) 접근 방식
- ‘커널’에서는 최소기능만 제공, 중요하지 않은 구성 요소는 시스템 및 사용자 수준 프로그램으로
- OS의 나머지 기능은 ‘서버’(Server: 사용자 공간 서비스)로 이동
- 클라이언트 프로그램과 사용자 공간에서 수행되는 서비스 간 통신은 메세지 전달(Message Passing)을 이용 → System Call을 대체
장점
- OS확장 용이
단점
- 성능 오버헤드 문제
- → ‘사용자’와 ‘커널 프로세스’간의 통신 오버헤드
모놀리식 커널(Monolithic Kernel) vs 마이크로커널(Microkernel)
Hybrid Systems
현대 OS는 하나의 순수 모델을 갖고 있지 않음
리눅스, 솔라리스
→ 커널 주소 공간의 커널은 모놀리식, 기능성의 동적 적재를 위해서 모듈러(Modular)방식 추가
윈도우
→ 대부분 모놀리식(Monolithic), 서로 다른 서브시스템 개성을 위해 마이크로 커널 방식 추가
728x90
반응형
'Computer Science > Operating System' 카테고리의 다른 글
[OS] 운영체제 생성과 시스템 부트(System Boot) (0) | 2024.04.27 |
---|---|
[OS] 운영체제 디버깅 (OS Debugging) (0) | 2024.04.27 |
[OS] 운영체제 설계 및 구현 (OS Design) (1) | 2024.04.26 |
[OS] 시스템 서비스 (System Service), 링커(Linker)와 로더(Loader) (0) | 2024.04.26 |
[OS] 시스템 호출(System Call)이란? 구현과정? (0) | 2024.04.26 |