운영체제 구조에 대해서 알아보자 !
1. 커널(Kernel)
- OS의 핵심 부분(메모리 상주)
- 가장 빈번하게 사용되는 기능들 담당한다.
2. 유틸리티(Utility)
3. 운영체제 구조(operating system architecture)
Kernel 기능
- Hardware resource mgmt : Processor, memory, I/O devices, etc.
- Software resource mgmt : files, messages, processes, etc.
3.1 단일 구조
장점
- 커널 내 모듈 간 직접 통신
- 효율적 자원 관리 및 사용
단점
- 커널의 거대화
- 오류 및 버그, 추가 기능 구현 등 유지보수가 어렵다.
3.2 계층 구조

![]()
장점
- 모듈화
- 계층 간 검증 및 수정 용의하다
- 설계 및 구현이 단순하다
- 현대 구조는 계층으로 사용하지 않을까 싶다(유지보수도 좋고 이점이 많아서?)
단점
- 단일구조 대비 성능 저하
- 원하는 기능을 수행을 위해 여러 계층을 거쳐야 함
3.3 마이크로 커널 구조
기능
- 커널의 크기 최소화
- 필수 기능만 포함
- 기타 기능은 사용자 영역에서 응용프로그램 형태로 수행
운영 체제 기능에 대해서 알아보자 !
4.1 프로세스 관리(Process Management)
프로세스(Process)
- 커널에 등록된 실행 단위(실행 중인 프로그램)
- 사용자 요청/프로그램의 수행 주체
OS의 프로세스 관리 기능
- 생성/삭제, 상태관리
- 자원 할당
- 프로세스 간 통신 및 동기화(syschronization)
- 교착상태(deadlock)
프로세스 정보 관리
- PCB(Process Control Bloc)
4.2 프로세서 관리(Processor Management)
중앙처리장치(CPU)
프로세스 스케줄링(schduling)
프로세서 할당 관리
- 프로세스들에 대한 프로세서 할당한다.
- 한 번에 하나의 프로세스만 사용 가능하다.
4.3 메모리 관리(Memory Management)
주기억장치
- 작업을 위한 프로그램 및 데이터를 올려 놓는 공간
Multi-user, Multi-tasking System
- 프로세스에 대한 메모리 할당 및 회수한다.
- 메모리 여유 공간 관리한다.
- 각 프로세스의 할당 메모리 영역 접근 보호한다.
메모리 할당 방법
4.4 파일 관리(File Management)
파일(file)
사용자 및 시스템의 파일 관리
디렉토리(directory) 구조 지원
파일 관리 기능
- 파일 및 디렉토리 생성/삭제
- 파일 및 접근 및 조작
- 파일을 물리적 저장 공간으로 사상(mapping
- 백업
4.5 입출력 관리(I/O management)
입출력 과정
- 사용자가 커널을 통해서 입출력을 수행하고 있다.
참고자료 : HPC, ChatGPT을 활용해서 작성하였습니다.