1. 운영체제의 개요
운영체제의 역할
- 컴퓨터 시스템의 구성
- 사용자 ◀▶ 응용 소프트웨어 ◀▶ 시스템 소프트 웨어 ◀▶ 하드웨어
- 운영체제 : 하드웨어의 자원을 관리하고 프로그램이 동작하기 위한 서비스를 제공하는 시스템 소프트웨어
- 운영체제의 역할 (효율)
- 컴퓨터 시스템의 운영
- 컴퓨터 시스템의 자원을 제어 및 관리
- 응용프로그램들의 실행을 도와주는 소프트웨어
- 사용자의 지원 (편리)
- 사용자의 명령을 해석, 실행
- 사용자와 하드웨어 사이의 매개체 역할 수행
- 컴퓨터 시스템의 운영
- 초기 : 운영체제 없음
- 응용 프로그램이 하드웨어를 직접 제어 : 개발자가 하드웨어 방법을 잘 알아야함
- 하드웨어를 공유하는 경우 자원 분할이 어려움
- 이후 : 운영체제가 하드웨어와 응용프로그램 사이에 위치
- 하드웨어 제어는 운영체제만 함 : 응용 프로그램은 운영체제를 통해서만 하드웨어 이용
CPU동작 모드
- 슈퍼바이저 모드(커널 모드)
- 운영체제의 커널이 동작되는 모드
- 하드웨드를 직접제어하는 CPU명령어 사용 가능
- 보호 모드 (사용자 모드)
- 응용 프로그램이 동작되는 모드
- 하드웨드를 직접 제어하는 CPU명령어 사용 불가능
- 사용자가 응용프로그램을 사용 중 하드웨어를 건들여 발생되는 오류를 방지하기 위해 기본적으로 보호 모드로 해둠
- 시스템 호출
- 응용 프로그램이 운영체제에 서비스를 요청하는 메커니즘
- 시스템 호출 ▶ 보호 모드에서 슈퍼바이저 모드로 변경 ▶ 커널 동작 ▶ 하드웨어
- 작업 후 : 슈퍼바이저 모드에서 보호 모드로 변경운영체제의 개요
커널(Kernel)
- 운영체제의 핵심 요소
- 응용프로그램과 하드웨어의 가교 역할
- 대표 구성 방식
- 일체형 커널
- 운영체제의 모든 서비스가 한 커널 내에 포함
- 장 : 커널 내부 요소들이 효율적으로 상호작용 가능
- 단 : 한 요소의 오류로 시스템 전체 장애 발생 가능
- 예) UNIX, Linux 운영체제
- 마이크로 커널
- 운영체제의 대부분 요소를 외부로 분리하여 최소한의 요소들만 남김 (메모리관리, 멀티태스킹, 프로세스간 통신 IPC 등)
- 장 : 확장성 좋음, 유지보수 용이, 안정성 우수
- 단 : 외부요소들 사으는 IPC를 통해야만 가능 - 성능 저하 발생
- 일체형 커널
2. 운영체제의 구성
- 프로세스 관리자
- 프로세스 : 실행중인 프로그램
- 프로세스를 생성, 삭제, CPU할당을 위한 스케줄 결정
- 상태를 관리, 전이
- 메모리(주기억장치) 관리자
- 메모리 공간에 대한 요구의 유효성 체크
- 메모리 할당 및 회수, 공간 보호
- 장치 관리자
- 컴퓨터 시스템의 모든 장치 관리
- 시스템의 장치를 할당, 작동 시작, 반환
- 파일 관리자
- 시스템의 모든 파일 관리
- 파일의 접근 제한 관리
- 파일을 열고, 닫음으로 자원을 할당, 회수
3. 운영체제의 유형
- 일괄처리 운영체제
- 작업을 모자서 처리함
- 상호작용 X, 순차적으로 실행
- 효율성 평가 : 처리량, 반환 시간
- 처리량 : 주어진 시간안에 처리된 작업 수
- 반환시간 : 작업의 생성 시점 ~ 종료 시점
- 대화형 운영체제
- 시분할 운영체제
- 응답시간 : 일관처리 운영체제보다 빠르고 실시간 운영체제보다 느림
- 응답시간 : 요청한 시점 ~ 시작되는 시간
- 이용자에게 즉간적인 피드백 제공
- 실시간 운영체제
- 가장 빠름
- 처리 결과가 현재의 결정에 영향을 주는 환경에 사용
- 예)우주선 비행 시스템, 증권거래 관리 시스템 등
- 하이브리드 운영체제
- 일괄처리 + 대화형 운영체제
- 빠른 응답 시간
- 대화형 작업이 많지 않으면, 백그라운드에서 배치 프로그램 실행
- 현재 사용되는 대부분의 대형 컴퓨터 시스템
4. 운영체제의 역사
- 1940년대 : 초기 전자식 디지털 컴퓨터
- 운영제제 존재 X
- 1950년대 : 단순 순차 처리 및 단일 흐름 일괄처리
- 1960년대 : 멀티프로그래밍
- 시분할 처리
- 다중 대화식 사용자 지원
- 1970년대 : 멀티모드 시분할
- 일괄처리, 시분할 처리, 실시간 처리 지원
- LAN 의 실용와
- 정보 보호, 보안 문제 : 암호화 중요성
- 1980년대 : 분산 네트워크
- 운영체제 기능이 하드웨어 자체에 포함된 펌웨어 개념
- 2개 이상의 프로세서 이용 - 멀티 프로세서 환경
- 클라이언트/서버 모델 확산
- 1990년대 : 병렬 처리 및 분산 처리
- 그래픽 사용자 인터페이스 (GUI) 강화
- 2000년대 : 모바일 및 임베디드 운영체제
- 고속화, 고기능화, 경량화
- 개방형 시스템 발달
- 클라우드 환경의 운영체제
- 64비트용 운영체제
내용 출처
-
한국방송통신대학교
"운영체제" 강의 및 교재
반응형
'D.evelop [CS] > 한국방송통신대학교 컴퓨터과학과' 카테고리의 다른 글
[디지털논리회로] 2장 - 데이터 표현 (0) | 2021.03.24 |
---|---|
[디지털논리회로] 1장 - 컴퓨터와 디지털 논리회로 (0) | 2021.03.23 |
[C프로그래밍] 1강 - C 언어의 개요 (0) | 2021.03.17 |
[컴퓨터의 이해] 1강 - 정보사회와 컴퓨터 (0) | 2021.03.15 |
댓글