1. 운영체제 개념
사용자가 컴퓨터를 쉽게 다룰 수 있도록 돕는 인터페이스. 한정된 메모리 또는 시스템자원을 효율적으로 분배
2. 운영체제의 역할
- CPU 스케쥴링과 프로세스 관리
- 메모리 관리(어떤 프로세스에 메모리를 얼만큼 할당할지)
- 디스크 파일 관리
- I/O 디바이스 관리(입출력장치와 컴퓨터 간에 데이터관리)
3. 운영체제의 구조
유저프로그램 | 사용자 및 기타 시스템 프로그램 |
GUI | GUI, CUI 등 |
시스템콜 | - 운영체제가 커널에 접근하기 위한 인터페이스(추상화계층) - 유저모드 -> 커널모드(파일 읽기) -> 유저모드(프로그램 로직 수행) 이 과정을 통해 컴퓨터 자원에 대한 직접 접근을 차단, 타 프로그램으로부터 보호 - modebit을 참고해 유저,커널모드 구분(1또는0의 값을 가지는 플래그변수) |
커널 | 운영체제의 핵심 프로그램 |
드라이버 | 하드웨어를 제어하기 위한 소프트웨어 |
하드웨어 | 컴퓨터 물리적 부품 |
4. 컴퓨터의 요소
CPU | - 인터럽트에 의해 단순히 메모리에 존재하는 명령어를 해석 - 산술논리연산장치, 제어장치, 레지스터로 구성 - 운영체제 커널이 프로세스를 생성하면 CPU가 이를 처리 - 제어장치 : I/O 디바이스 간 통신제어, 명령어 해석 및 데이터 처리 순서 결정 - 레지스터 : 매우 빠른 임시기억장치, 메모리보다 수십~수백배 빠르다.(CPU 자체적으로 데이터 저장불가하여 존재) - 인터럽트 : 어떤 신호 입력 시 CPU를 일시 정지 시킨다. 인터럽트 간에 우선순위에 따라 실행된다.(하드웨어 인터럽트 : IO디바이스에서 발생 // 소프트웨어 인터럽트 : 프로세스가 시스템콜 호출 시 발동) |
DMA 컨트롤러 | I/O 디바이스가 메모리에 직접 접근 할 수 있도록 하는 하드웨어 장치(CPU 부하 분산, 하나의 작업을 CPU와 나눠서하는 것을 방지) |
메모리 | 전자회로에서 데이터나 상태, 명령어 등을 기록하는 장치, 보통 RAM을 메모리라고도 한다. |
타이머 | 특정 프로그램에 시간제한을 두는 역할 |
디바이스 컨트롤러 | 컴퓨터와 연결된 I/O디바이스들의 작은 CPU |
5. 운영체제 종류(출처: 위키백과)
- 싱글/멀티 태스킹 운영체제
- 단일/다중 사용자 운여체제
- 분산 운영체제 : 컴퓨터 그룹이 하나의 컴퓨터인것처럼 보이게 만든다.
- 판형 운영체제 : 클라우드 시스템, 하나의 운영체제를 쪼개어 여러개로 이용
- 임베디드 운영체제 : PDA등 작은 기계에서 동작, 효율성이 중요
'Computer Science > 운영체제' 카테고리의 다른 글
CPU 스케줄링 알고리즘 (0) | 2022.10.05 |
---|---|
프로세스와 스레드 (0) | 2022.10.04 |
메모리 (0) | 2022.09.29 |